標籤:centos openstack icehouse gre 雙節點
本文主要介紹如何在CentOS6.5上通過RDO來安裝一個雙計算節點的icehouse環境,網路方式採用Ml2+Gre由於安裝的過程中涉及的軟體較多,以及依賴關係比較複雜,建議使用一個全新的作業系統來進行安裝。
硬體環境
兩台Dell的R720伺服器機,每台機器有4個網卡,只用到em1,以及em2,且這兩個網卡都接有網線。公網和管理網路合用em1,虛擬機器網路使用em2。
交換器方面,由於條件原因,只採用一個交換器,不過理論上將em1和em2的交換器分開效率會更高。
伺服器 |
公網/管理網路 |
VM Net |
角色 |
伺服器1 |
em1:192.168.100.242 |
em2:10.1.1.2 |
控制節點,網路節點,儲存節點,計算節點 |
伺服器2 |
em2:192.168.100.244 |
em2:10.1.1.3 |
計算節點 |
和vlan模式配置一個明顯的區別,就是eth1,是需要配置一個私人的IP地址,必須配置。
由於使用的是GRE模式,所以就不需要麻煩網管設定Trunk
簡單的邏輯圖取自陳老師部落格的圖(忽略IP與裝置名稱)
虛擬機器的通訊,是通過eth1(對應我的環境是em2),虛擬機器訪問外部網路,是通過伺服器1上的L3agent,br-ex到eth0(對應我的環境是em1)上訪問外部網路
安裝步驟具體如下安裝作業系統使用光碟片或鏡像檔案安裝作業系統.
分區的時候需要劃分一個邏輯區,並且建立一個名稱叫cinder-volumes的組。這個邏輯卷組會被cinder使用。
建立的效果類似於:
建立過程請參考:http://www.centos.org/docs/5/html/Deployment_Guide-en-US/s1-lvm-diskdruid-manual.html
也可以裝完作業系統後通過命令的方式來建立
修改fstab
修改/etc/fstab 去掉cinder-volume的開機掛載,不然會導致你無法重啟
sed -i ‘/cinder-volume/s/^/#/‘ /etc/fstab
配置網路
兩台伺服器的配置相同,只是IP與HWADDR/UUID不同,配置 vi/etc/sysconfig/network-scripts/ifcfg-em1,編輯內容如下
DEVICE=em1HWADDR=C8:1F:66:E5:29:0DTYPE=EthernetUUID=63d91b69-5c37-437e-898b-65403cef29a0ONBOOT=yesBOOTPROTO=staticIPADDR=192.168.100.242GATEWAY=192.168.100.1NETMASK=255.255.255.0DNS1=8.8.8.8
配置 vi/etc/sysconfig/network-scripts/ifcfg-em2,編輯內容如下
DEVICE=em2HWADDR=C8:1F:66:E5:29:0ETYPE=EthernetUUID=b2cdb6e2-37d9-4fd0-b3d6-01f107ed80e0ONBOOT=yesBOOTPROTO=staticIPADDR=10.1.1.2NETMASK=255.255.255.0DNS1=8.8.8.8
經過以上配置後,確定網路可以串連.
由於執行個體啟動並執行過程中,可以將NetworkManager服務停止,以為這個服務沒用的服務會佔用大量的記憶體
chkconfig NetworkManager off
安裝相關的yum源
yum源是否正確安裝直接影響到安裝的正確性,本人安裝的過程中出現的很多問題都和源有關
安裝的過程主要涉及到三個源:
安裝163源
1,備份/etc/yum.repos.d/CentOS-Base.repo
- mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2,下載對應版本repo檔案, 放入/etc/yum.repos.d/(操作前請做好相應備份)
安裝icehouse源
執行以下命令
- yum install -y http://rdo.fedorapeople.org/openstack-icehouse/rdo-release-icehouse.rpm
安裝epel源
選用的是64位系統,執行以下命令
- rpm -ivh http://download.fedora.redhat.com/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
在安裝上面源的時候會產生foreman.repo源,這個源可直接刪掉
設定YUM的cache
由於網路問題,安裝過程可能會經常失敗,所以此時可以設定yum 的cache來提高失敗後再次安裝的效率
PackStack
安裝openstack-packstack
執行下面的命令
yum install -y openstack-packstack
可能會碰到計算節點安裝某些程式總是失敗,可以先在計算節點上安裝完之後在到控制節點上再次執行
配置packstack
為了方便以後多次執行相同的packstack的配置,可以先匯出一個原始的配置,然後在這個檔案上做一些修改,以後就可以指定設定檔的方式安裝openstack
產生自己的設定檔
packstack --gen-answer-file=myanswer.txt
修改設定檔
#為了在環境中使用HEATCONFIG_HEAT_INSTALL=yCONFIG_NTP_SERVERS=0.uk.pool.ntp.org#配置兩個計算節點CONFIG_COMPUTE_HOSTS=192.168.100.242,192.168.100.244#登陸控制台的密碼CONFIG_KEYSTONE_ADMIN_PW=admin#前面的步驟已經建立了LVMCONFIG_CINDER_VOLUMES_CREATE=n#網路使用的配置CONFIG_NOVA_COMPUTE_PRIVIF=em2CONFIG_NOVA_NETWORK_PUBIF=em1CONFIG_NOVA_NETWORK_PRIVIF=em2CONFIG_LBAAS_INSTALL=yCONFIG_NEUTRON_METERING_AGENT_INSTALL=y#GRE模式的相關配置CONFIG_NEUTRON_ML2_TYPE_DRIVERS=greCONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=greCONFIG_NEUTRON_ML2_TUNNEL_ID_RANGES=100:1000CONFIG_NEUTRON_OVS_TENANT_NETWORK_TYPE=greCONFIG_NEUTRON_OVS_TUNNEL_RANGES=100:1000#使用em2作為通道CONFIG_NEUTRON_OVS_TUNNEL_IF=em2#不安裝DEMO使用者CONFIG_PROVISION_DEMO=nCONFIG_HEAT_CLOUDWATCH_INSTALL=yCONFIG_HEAT_CFN_INSTALL=y
修改hosts
在兩個節點的/etc/hosts檔案中分別添加對方的IP以及名稱,同事為了提高從源的下載速度,也可以在hosts檔案中配置源的資訊,例如在192.168.100.242上的hots檔案如下:
::1 localhost localhost.localdomainlocalhost6 localhost6.localdomain6127.0.0.1 develop5192.168.100.244 develop6::1 localhost localhost.localdomainlocalhost6 localhost6.localdomain6192.118.12.243 mirrors.skyshe.cn208.113.241.137 ceph.com152.19.134.191 repos.fedorapeople.org123.58.173.106 mirrors.163.com152.19.134.191 repos.fedorapeople.org69.56.251.103 openvswitch.org66.109.26.212 mirror.centos.org23.253.148.10 yum.theforeman.org
執行設定檔
packstack --answer-file=myanswer.txt
這個過程可能比較漫長,中間可能會因為網路中斷幾次,中斷後請繼續
配置br-ex
安裝完畢後,由於目前RDO的問題,沒有建立br-ex,需要我們手工來建立,這個只需要在192.168.100.242上配置進行就可以,具體點說,應該是在網路節點上進行。
修改ifcfg-em1檔案
DEVICE=em1HWADDR=C8:1F:66:E5:29:0DONBOOT=yesDEVICETYPE=ovsTYPE=OVSPortOVS_BRIDGE=br-ex
建立ifcfg-br-ex檔案
DEVICE=br-exDEVICETYPE=ovsTYPE=OVSBridgeONBOOT=yesOVSBOOTPROTO=noneIPADDR=192.168.100.242NETMASK=255.255.255.0DEFROUTE=yesPREFIX=24GATEWAY=192.168.100.1DNS1=202.103.24.68
配置OVS
ovs-vsctladd-br br-exovs-vsctladd-port br-ex em1; service network restart
成功配置OVS以及添加虛擬機器後的配置如下:
控制+網路+計算
OVS的配置
[[email protected]~(keystone_admin)]# ovs-vsctl showd3ac11c9-8d88-4abc-8ca0-19788ab1491b Bridge br-ex Port "em1" Interface "em1" Port "qg-158cc8c6-4f" Interface"qg-158cc8c6-4f" type: internal Port br-ex Interface br-ex type: internal Bridge br-int fail_mode: secure Port "tapa104132f-bd" tag: 1 Interface"tapa104132f-bd" type: internal Port "qvo0715cfb5-b4" tag: 1 Interface"qvo0715cfb5-b4" Port "tape8875e25-22" tag: 2 Interface"tape8875e25-22" type: internal Port br-int Interface br-int type: internal Port "qvoeb74bfb0-1b" tag: 1 Interface"qvoeb74bfb0-1b" Port "qvod119e70f-3f" tag: 1 Interface"qvod119e70f-3f" Port patch-tun Interface patch-tun type: patch options: {peer=patch-int} Port "qvo948222df-c9" tag: 1 Interface"qvo948222df-c9" Port "qr-da6f872b-7c" tag: 1 Interface"qr-da6f872b-7c" type: internal Bridge br-tun Port "gre-0a010103" Interface "gre-0a010103" type: gre options: {in_key=flow,local_ip="10.1.1.2", out_key=flow, remote_ip="10.1.1.3"} Port patch-int Interface patch-int type: patch options: {peer=patch-tun} Port br-tun Interface br-tun type: internal ovs_version: "1.11.0"
Linux 橋接器的配置
計算節點:
OVS配置
[[email protected]~]# ovs-vsctl show17cbd24e-df55-4f3d-b6a4-446b88b47ac4 Bridge br-int fail_mode: secure Port "qvo28484b00-f0" tag: 1 Interface"qvo28484b00-f0" Port "qvo61070289-31" tag: 1 Interface"qvo61070289-31" Port "qvo3207417a-bd" tag: 1 Interface"qvo3207417a-bd" Port patch-tun Interface patch-tun type: patch options: {peer=patch-int} Port br-int Interface br-int type: internal Bridge br-tun Port patch-int Interface patch-int type: patch options: {peer=patch-tun} Port br-tun Interface br-tun type: internal Port "gre-0a010102" Interface "gre-0a010102" type: gre options: {in_key=flow,local_ip="10.1.1.3", out_key=flow, remote_ip="10.1.1.2"} ovs_version: "1.11.0"
Linux橋接器的配置
安裝驗證
- 可以開啟登入頁面,並用配置的密碼進行登入
- 可以建立網路,執行個體
- 配置的執行個體可以與外部網路互連
OpenStack 部署總結之:在CentOS 6.5上使用RDO安裝雙結算結點的icehouse(Ml2+GRE)