接續這上一篇我們介紹要在iNODE NINJA這個自建CDN系統上執行我們全新CDN系統。
在完成了註冊節點前的前置docker安裝作業後,就要來跟分享實作SLB和EDGE的註冊動作。
溫馨提示:如果一開始試用的時候因為還在摸索階段,並不知道要怎麼開始部署,可以點選帳號旁邊的燈泡圖示,根據iNODE NINJA 平台提示的步驟去一步一步進行設置。
從介面指令上可以看到,將SLB、EDGE這兩個東西建立起來是第一步,因此我們先根據裡面寫的內容一個一個建立起來。
首先是SLB的部署,從先前的架構已經有介紹過SLB和EDGE在iNODE NINJA CDN的架構配置中所代表的意義,SLB就是外來的訪問者進來訪問最終解析到的IP,同時也進行負載平衡,能夠將流量在第四層平分給後方的EDGE機器進行處理。
部署的方式很簡單,進入左側「資源管理」>「SLB管理」,按下左上角註冊按鈕,就會顯示出部署所需的代碼,只要點擊右方「複製」,再將其貼上到作為SLB的機器的終端機中,跑完後就能完成SLB的部署
提供我們實際的狀況讓大家能有效應對,我們在一開始註冊的時候其實沒有很順利,跳出了這個問題
「permission denied while trying to connect to the Docker daemon socket」
經過爬文後,確認是預設的權限問題,因此我們依照以下方式解決:
再一次重新貼上註冊SLB的代碼之後,順利開始拉下來所需的元件,跑完後就出現完成的畫面了
這時候回到解析節點頁面,可以看到剛剛註冊的節點已經出現在列表中。
把啟用狀態點開,如果正常了話健康度就會亮綠燈。
旁邊的兩項**「連接狀態」與「更新狀態」**也都要是勾勾,另外一旁的封包出口成功率則是應該隨著時間要是變成100%。
接著我們依照精靈的指示,繼續註冊EDGE,也是一樣需要先執行上面的sudo gpasswd -a $USER docker那串來先解決權限問題。
也是一樣貼上這串代碼,EDGE會需要拉下比較多的元件,因此時間上會比較久一些
註冊成功後,同樣點開啟用狀態,此時健康度要亮綠燈,右邊狀態的部分也要有三個勾。
接下來我們就要把SLB和EDGE給連起來,在SLB頁面點擊左邊的鉛筆圖示進行編輯,把EDGE節點Assigned過去。
再來將SLB的服務地址預設會是該機器持有的私有IP(圖中預設被分配到172.31.15.224這個),但是這個地址是要對外解析的,因此使用私有IP自然是無法對外服務。
所以,我們要將該機器的對外公有IP(只支援IPv4)填入這裡,這樣才能夠對外提供A紀錄解析,如下圖
其他的部分,線路分組這裡我們先保持默認,就是全世界所有的訪問解析都解析到這個SLB,另外SourceIpPool的部分我們也先保持空白。
EDGE的部分服務地址我們則是不進行變更,可以看到這個是私有IP 172.31.6.107,這個地址代表的是與SLB通信用的IP。
因為我們把SLB和EDGE都放在同一個VPC與同一個subnet裡面,並且也是同網段(172.31.0.0/20),同時經過測試我們也可以透過這個IP與SLB互通,如果SLB與EDGE需要走公有IP傳輸了話,這裡則是填寫公有IP的地址。
到這裡之後,一組節點 (SLB+EDGE) 可以說是就建立完了,我們最後再確認是不是健康度和後方三個勾都有正常顯示,如果都有了話,那麼就可以進行下一步的作業了。