- 使用 answer file 方便管理者,利用安裝器設定系統參數
- 使用指令:packstack
- --gen-answer-file:可產生 answer file
- --answer-file:可將 answer file ,送給安裝器,以利於安裝 OpenStack!
- -d:安裝過程除錯!
- 安裝過程中,如果有錯誤,在除錯完成之後,應重新執行 pactstack !
- 記錄檔:
- /var/tmp/packstack*/
- /var/log/messages
- /var/log/yum.log
最低硬體需求:
<Cloud Controller Node>
- CPU:64-bit X86 Intel-VT or AMD-v
- Memory:2GB
- HDD:100GB
- NIC:GigaEthernet*2
<Compute Node>
- CPU:64-bit X86 Intel-VT or AMD-v
- Memory:2GB
- HDD:50GB
- NIC:GigaEthernet*2
<Ceph Storage Node>
- CPU:64-bit X86 Intel-VT or AMD-v
- Memory/HDD:per 1TB disk space / mininum 1GB RAM
- NIC:GigaEthernet*2
PackStack answer file 參數表:
參 數 | 說 明 |
※CONFIG_HEAT_INSTALL=y | 安裝/啟動 Heat Orchestration 服務!需要設定密碼,以及開啟其他項服務! |
※CONFIG_NTP_SERVERS=10.1.1.1 | 指定NTP伺服器,用來同步時間! |
※CONFIG_KEYSTONE_ADMIN_PW=redhat | 設定 keystone 管理者 admin 密碼! |
※CONFIG_DEFAULT_PASSWORD=redhat | 針對所有出入口設定相同的密碼! |
※CONFIG_CINDER_VOLUMES_CREATE=n | 是否建立Cinder 中的Volume Group ,用來作為檔案式的儲存媒介! |
※CONFIG_LBAAS_INSTALL=y | 是否開啟利用 Packstack 來設定 Neutron 中的 Load-Balancer as a Service! |
※CONFIG_NEUTRON_METERING_AGENT_INSTALL=y | 設定 Neutron metering agent,使得 Neutron 資訊可送進Ceilometer telemetry 服務 |
※CONFIG_NEUTRON_FWAAS=y | 是否開啟 Neutron 設定 Firewall as a Service! |
※CONFIG_NEUTRON_ML2_TYPE_DRIVERS=vlan | 設定 Neutron ML2 插入的驅動程式!如果有多個項目,可用逗號分開! |
※CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=vlan | 設定 Neutron ML2 租戶的網路類型!如果有多個項目,可用逗號分開! |
※CONFIG_NEUTRON_ML2_VLAN_RANGES=physnet1:1:1000 | 設定 Neutron 使用的 Vlan 範圍!如果有多個項目,可用逗號分開! |
※CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet1:br-eth1 | 設定實體網路介面對應至 Neutron OVS 橋接網路! |
※CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-eth1:eth1 | 設定 Neutron OVS 橋接網路至實體網路介面! |
※CONFIG_HEAT_CFN_INSTALL=y | 是否將PackStack安裝設定 Heat CloudFormation API! |
※CONFIG_HORIZON_SSL=y | 為 Horizon 啟動 SSL ! |
※CONFIG_PROVISION_DEMO=n | 是否提供展示或測試! |
※CONFIG_SWIFT_INSTALL=n | 是否安裝/啟動Swift儲存服務! |
Open vSwitch 設定:
- OpenStack 以驅動程式形態,支援 Open vSwitch 功能!
- OpenStack 常用的兩種橋接網路形態:
- br-int:integration bridge 專用於對進出實體的網路封包,執行 Vlan 貼標籤或不貼標籤功能!
- br-ex:external bridge 專用於對進出實體的額外網路封包,按規定路徑遞送!
- 範例:假設 eth0 是 br-ex 的一個 port ,而且有對外連接!
所以,需新增設定檔:/etc/sysconfig/network-scripts/ifcfg-br-ex
DEVICE=br-ex
DEVICETYPE=ovs ;;宣告該硬體使用 Open vSwitch
TYPE=OVSBridge ;;宣告該硬體為 OVS 橋接器
BOOTPROTO=static
IPADDR=172.25.0.10
NETMASK=255.255.255.0
GATEWAY=172.25.0.254
網路卡 eth0 設定檔:/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
TYPE=OVSPort ;;宣告該硬體為 OVS 橋接器上的一個 port
DEVICETYPE=ovs
OVS_BRIDGE=br-ex ;;宣告該硬體附屬在哪一個 OVS 橋接器上
※PS:使用 RHEL OpenStack 平台時,必須關閉 NetworkManager 服務,改用 network 服務! - 設定完成,需要重新啟動 network 服務!
# systemctl restart network.service
利用下列指令來檢查
# ovs-vsctl show
如果有錯誤,會顯示無網路,請確認設定檔內的設定是否無誤!接下來可刪除錯誤的 bridge !
# ovs-vsctl del-br eth0
練習1:利用 OpenStack 安裝 Control Node!
- # yum install openstack-packstack
- # packstack -h | less
- # packstack --gen-answer-file /root/answers.txt
- # vim /root/answers.txt
需修改的項目如上表所列! - # packstack --answer-file /root/answers.txt
※PS:這步驟執行完,將提示下列資訊:
- 建立 /root/keystonerc_admin,並提醒你要去公告這個檔案!
- 記得修改 /etc/httpd/conf.d/ssl.conf 檔案內的憑證檔目錄位置!
- OpenStack DashBoard : https://10.1.1.1/dashboard,帳密在 /root/keystonerc_admin 內
- Nagios : http://10.1.1.1/nagios, username : nagiosadmin , 密碼則是一大串
- 安裝的相關記錄檔目錄:/var/tmp/packstack/
- # openstack-status
- # cp /etc/sysconfig/network-scripts/ifcfg-eth0 /root/
- # cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/networkk-scripts/ifcfg-br-ex
- # vim /etc/sysconfig/network-scripts/ifcfg-br-ex
- # vim /etc/sysconfig/network-scripts/ifcfg-eth0
- # systemctl restart network.service
- # ovs-vsctl show
- # hostnamectl set-hostname servera.pod0.example.com
練習2:利用 OpenStack 新增一個 Compute Node!
- # vim /root/answers.txt
修改:
CONFIG_COMPUTE_HOSTS=10.1.1.1, 10.1.1.2 - # packstack --answer-file /root/answers.txt
※PS1:記得要先開 10.1.1.2 這部機器,並且開放 root 可以 ssh 連線!
※PS2:這一步驟也要一些時間(重新運作)! - # ssh serverb
參考資料:
- http://www.server-world.info/en/note?os=CentOS_7&p=openstack_kilo2&f=12
- https://openstack.redhat.com/install/quickstart/
- https://access.redhat.com/articles/1127153
課後Lab:利用 RDO 網站上的 PackStack 來安裝 OpenStack
參考網址:
- https://www.rdoproject.org/install/quickstart/
- http://www.flashguides.co.uk/guide/Installing_OpenStack_Kilo_on_CentOS_with_Packstack
- http://www.server-world.info/en/note?os=CentOS_7&p=openstack_kilo2&f=12