Openstack Newton 極速部署、快速入門

定義,建立和配置虛擬網路

有了虛擬機器映像檔,重要的環節開始了,通過 Neutron 建立和管理虛擬網路及虛擬網路設備,此處採用比較常用的公網加私網的網路設計,最簡單的虛擬網路規划如下。外部網名稱全稱 Public,簡寫為 pub,外部網路子網名稱全稱 Public Subnet,簡寫為 pub_sub,分配網段為 10.0.0.0/24,網關地址為 10.0.0.1。內部網名稱全稱 Private,簡寫為 pri。內部網路子網名稱全稱 Private Subnet,簡寫為 pri_sub,分配網段為 10.0.10.0/24。虛擬路由器名稱全稱 Virtual Router 01,簡寫為 vr01。

首先定義和建立公網,具體操作為選擇 Project、Network、Networks 選項,單擊 Create Network 按鈕開始建立,在彈出的 Create Network 標簽頁中,直接輸入虛擬網路名稱為 pub,需要注意的是網路名稱可以隨便命名,但最好便於識別,檢查網路狀態為 Up(圖19)。

圖19:定義實例使用的虛擬網路。

實現了虛擬網路 pub 後,就可以單擊 Next 按鈕開始配置虛擬子網,設置子網名稱為 pub_sub,網段地址為 10.0.0.0。注意一定要將子網掩碼 /24 加上,網路類型為 IPv4,網關地址為 10.0.0.1,確認無誤,單擊 Next 按鈕即可完成建立(圖 20)。繼續設置子網的細節,首先確認 Enable DHCP 的單選框為非選中狀態,由於是公網,所以不需要 DHCP 服務,然後設置分配池(Allocation Pools),Floating IP 既要從此地址池獲取 IP 位址,這裡設置為 10.0.0.20,10.0.0.120,共 100 個 IP 位址可用,隨後將 DNS 伺服器地址設置為 8.8.8.8 和 8.8.4.4,一行一個 DNS 伺服器地址,至於 Host Routers 此時可以不用填寫,最後直接單擊 Create 按鈕開始建立虛擬網路(圖21)。成功建立後,Networks 頁面中就出現了 pub 網路,需要注意的是這裡只是演示環境,生產環境的虛擬 IP 的分配都要根據公司實際的命名和分配規則進行分配,以免造成混亂和管理困難。

圖20:定義實例使用的虛擬子網。

 

圖21 定義實例虛擬子網的詳細資訊。

有了公共網路配置經驗,私網的定義和配置就比較輕鬆了,再次單擊 Create Network 按鈕建立,在彈出的 Create Network 標簽頁中,輸入虛擬網路名稱為 pri,檢查網路狀態為 up,然後單擊 Next 按鈕開始配置虛擬子網,設置子網名稱為 pri_sub,網段地址為 10.0.10.0/24,網路類型為 IPv4,網關地址為 10.0.10.1,然後是設置子網的細節,首先確認 Enable DHCP  的單選框是否為選取狀態,由於是私網,所以一定要有虛擬的 DHCP 服務,然後設置分配池 Allocation Pools,其實就是 DHCP 地址池,實例要從這個地址池自動取得 IP 位址,這裡設置為 10.0.10.20, 10.0.10.120,也有 100 個 IP 位址可用,DNS 伺服器地址和 Host Routers 設置同上,最後直接單擊 Create 按鈕開始建立虛擬網路。至此虛擬網路建立完成,最後需要 admin 用戶登入,來設定虛擬網路的外部網路屬性,選擇 Admin、System、Networks 選項,單擊 pub 網路最右端的 Edit Network 按鈕,並將 Edit Network 對話框下部的 External Network 復選框選中,表示 pub 網路當作外網來使用(圖22)。最後再以 Henry 用戶登入,選擇 Project、Network、Networks Topology 選項,就可以看到所建立虛擬網路的拓撲圖,用過 VMware vSphere 的朋友對此可能並不陌生(圖23)。

圖22:admin 用戶定義外部網路。

 

圖23:虛擬網路拓撲。

從網路拓撲可以看到三根平行線,除了預設的 Public 沒有 IP 資訊之外,上述所建立的虛擬網路都有 IP,且平行無連通,其實虛擬網路和物理網路類似,光有網路沒有路由器,所以需要建立虛擬路由器,並將外網和內網關聯,選擇 Project、Network、Router 選項,單擊 Create Router 按鈕開始建立虛擬路由器,輸入路由器名稱 vr01,然後檢測狀態為 up,最後指定此虛擬路由所應用的外部網路為剛剛設定的 pub 並單擊 Create Router 開始建立,再次存取網路拓撲,發現 pub 網路上已經有了一部虛擬路由,但問題是它沒和 pri 私有網路連接還是沒有連接,要連通很簡單,只需回到 Router 界面,單擊 vr01 選項,然後選擇 interface 標簽頁,然後單擊 Add interface 按鈕,在 Add interface 對話框中的 subnet 下拉列表中選擇 pri 私有網路,其他選項保持預設,最後單 擊submit 按鈕提交設置(圖24)。

這時在此查看網路拓撲的 Graph 標簽頁,發現 pub 和 pri 網路已經通過虛擬路由器 vr01 連接到了一起(圖25)。可以通過如下命令行查看所建立虛擬網路的詳細資訊,其中 Public 和 Private 都是 OpenStack 自動生成的預設網路。
openstack network list     (ENTER)
openstack subnet list    (ENTER)
要查看虛擬路由的詳細資訊,可用以下命令。
openstack router list    (ENTER)

圖24:虛擬路由連接網路設置。

 

圖25:虛擬路由連接後的網路拓撲。

其中 route1 為 OpenStack 自動生成的預設虛擬路由。關於虛擬網路設備的詳細資訊,可以執行如下命令。
openstack network agent list     (ENTER)

取得網路設備的資訊後說明 Neutron 工作正常,至於上述的結果表示什麼,我們會在日後介紹。需要注意的是,由於涉及到了公網,所以網路安全設置是必不可少的了,如設置 OpenStack 開啟的端口,加入安全組規則並設置 SSH 密鑰綁定等操作,由於本文只涉及最基本的實例,且限於篇幅,所以關於網路的安全設置此處不做深入。上述操作其實就可以算作軟體定義網路,沒有一部物理路由也沒有一條網線,但通過 Neutron 網路組件就可以將這麼多子虛烏有的網路設備定義出來,並且實現相應設備的功能,SDN 真是太神奇了。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。