OpenStack多節點部署(五)——Nova

OpenStack多節點部署(一)——服務器選型

OpenStack多節點部署(二)——操作系統安裝

OpenStack多節點部署(三)——網絡配置

OpenStack多節點部署(四)——KeyStone

OpenStack多節點部署(五)——Nova

OpenStack多節點部署(六)——glance


這章將爲大家介紹OpenStack最重要的核心組件,虛擬機管理組件Nova的安裝部署。雖然是最重要的組件,但是因爲包裝的非常完整,所以如果前面的網絡配置和KeyStone部署都正確完成的話,Nova組件的安裝是非常簡單的。

首先安裝Nova組件

sudo apt-get install nova-api nova-cert nova-compute nova-compute-kvm nova-doc nova-network nova-objectstore nova-scheduler nova-volume rabbitmq-server novnc nova-consoleauth

2013-02-21 修改

OpenStack服務器節點遷移(修改IP)後引發的nova-compute不啓動 由於這篇文章提到的遇到服務器搬遷外網地址需要修改等問題,導致nova不能啓動,這裏在nova.conf中增加--iscsi_ip_address=192.168.3.1,這樣系統創建的volume都會指向內網IP,避免類似的錯誤。

修改節點的/etc/nova/nova.conf配置文件

--dhcpbridge_flagfile=/etc/nova/nova.conf
--dhcpbridge=/usr/bin/nova-dhcpbridge
--logdir=/var/log/nova
--state_path=/var/lib/nova
--lock_path=/var/lock/nova
--allow_admin_api=true
--use_deprecated_auth=false
--auth_strategy=keystone
--scheduler_driver=nova.scheduler.simple.SimpleScheduler
--s3_host=192.168.3.1
--ec2_host=192.168.3.1
--rabbit_host=192.168.3.1
--cc_host=192.168.3.1
--nova_url=http://192.168.3.1:8774/v1.1/
--routing_source_ip=192.168.3.1
--glance_api_servers=192.168.3.1:9292
--image_service=nova.image.glance.GlanceImageService
--iscsi_ip_prefix=192.168.4
--iscsi_ip_address=192.168.3.1
--sql_connection=mysql://novadbadmin:[email protected]/nova
--ec2_url=http://192.168.3.1:8773/services/Cloud
--keystone_ec2_url=http://192.168.3.1:5000/v2.0/ec2tokens
--api_paste_config=/etc/nova/api-paste.ini
--libvirt_type=kvm
--libvirt_use_virtio_for_bridges=true
--start_guests_on_host_boot=true
--resume_guests_state_on_host_boot=true
# VNC specific configuration
--novnc_enabled=true
--novncproxy_base_url=http://10.2.15.3:6080/vnc_auto.html
--vncserver_proxyclient_address=10.2.15.3
--vncserver_listen=10.2.15.3
# network specific settings
--network_manager=nova.network.manager.FlatDHCPManager
--public_interface=eth0
--flat_interface=eth1
--flat_network_bridge=br100
--fixed_range=192.168.4.1/27
--floating_range=10.2.15.254/25
--network_size=32
--flat_network_dhcp_start=192.168.4.33
--flat_injected=False
--force_dhcp_release
--iscsi_helper=tgtadm
--connection_type=libvirt
--root_helper=sudo nova-rootwrap
--verbose

配置文件中需要注意的是各服務訪問的IP地址,OpenStack多節點部署(三)——網絡配置中介紹過,我的控制節點有兩個IP,一個是OpenStack系統內網IP 192.168.3.1,另一個是公司內部可訪問Internet的IP 10.2.15.3。這裏推薦將服務IP寫成內網IP 192.168.3.1,這樣如果控制節點搬遷,或者公司10網段IP變更,那麼我們的配置文件可以不動。

但是要注意的是

--novncproxy_base_url=http://10.2.15.3:6080/vnc_auto.html
--vncserver_proxyclient_address=10.2.15.3

這兩個VNC參數的IP要爲公司內部網絡10網段的IP,因爲這個必須是從服務器系統外圍能訪問的IP。

配置文件參數詳解可參見bk-compute-adminguide-essex.pdf

之後爲Nova-volume服務創建獨立的邏輯卷

sudo pvcreate /dev/sda6

這裏將/dev/sda6爲你之前格式化爲LVM的分區

創建名爲nova-volumes的卷組

sudo vgcreate nova-volumes /dev/sda6
修改配置文件權限
sudo chown -R nova:nova /etc/nova
sudo chmod 644 /etc/nova/nova.conf
修改/etc/nova/api-paste.ini,填寫nova服務在keystone註冊的用戶名密碼
sed -i '/admin_tenant_name/ s/%SERVICE_TENANT_NAME%/service/' /etc/nova/api-paste.ini
sed -i '/admin_user/ s/%SERVICE_USER%/nova/' /etc/nova/api-paste.ini
sed -i '/admin_password/ s/%SERVICE_PASSWORD%/nova/' /etc/nova/api-paste.ini
同步數據庫

sudo nova-manage db sync
創建虛擬機所在的Fixed_ip的ip地址段

sudo nova-manage network create private --fixed_range_v4=192.168.4.32/27 --num_networks=1 --bridge=br100 --bridge_interface=eth1 --network_size=32
192.168.4.32/27表示IP段從32開始,並且子網掩碼爲前27位爲1

寫入環境變量

export OS_TENANT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=admin
export OS_AUTH_URL="http://192.168.3.1:5000/v2.0/"
最後重啓各服務

sudo restart libvirt-bin; sudo restart nova-network; sudo restart nova-compute; sudo restart nova-api; sudo restart nova-objectstore; sudo restart nova-scheduler; sudo restart nova-volume; sudo restart nova-consoleauth;

再增加計算節點只需要安裝nova-compute

sudo apt-get install nova-compute
修改計算節點的配置文件

--dhcpbridge_flagfile=/etc/nova/nova.conf
--dhcpbridge=/usr/bin/nova-dhcpbridge
--logdir=/var/log/nova
--state_path=/var/lib/nova
--lock_path=/run/lock/nova
--allow_admin_api=true
--use_deprecated_auth=false
--auth_strategy=keystone
--scheduler_driver=nova.scheduler.simple.SimpleScheduler
--s3_host=192.168.3.1
--ec2_host=192.168.3.1
--rabbit_host=192.168.3.1
--cc_host=192.168.3.1
--nova_url=http://192.168.3.1:8774/v1.1/
--routing_source_ip=192.168.3.1
--glance_api_servers=192.168.3.1:9292
--image_service=nova.image.glance.GlanceImageService
--iscsi_ip_prefix=192.168.4
--sql_connection=mysql://novadbadmin:[email protected]/nova
--ec2_url=http://192.168.3.1:8773/services/Cloud
--keystone_ec2_url=http://192.168.3.1:5000/v2.0/ec2tokens
--api_paste_config=/etc/nova/api-paste.ini
--libvirt_type=kvm
--libvirt_use_virtio_for_bridges=true
--start_guests_on_host_boot=true
--resume_guests_state_on_host_boot=true
# vnc specific configuration
--novnc_enabled=true
--novncproxy_base_url=http://10.2.15.3:6080/vnc_auto.html
--vncserver_proxyclient_address=10.2.15.4
--vncserver_listen=10.2.15.4
# network specific settings
--network_manager=nova.network.manager.FlatDHCPManager
--public_interface=eth0
--flat_interface=eth1
--flat_network_bridge=br100
--fixed_range=192.168.4.1/27
--floating_range=10.2.15.4/27
--network_size=32
--flat_network_dhcp_start=192.168.4.33
--flat_injected=False
--force_dhcp_release
--iscsi_helper=tgtadm
--connection_type=libvirt
--root_helper=sudo nova-rootwrap
--verbose
各計算節點間配置文件的不同點只有
--novncproxy_base_url=http://10.2.15.3:6080/vnc_auto.html
--vncserver_proxyclient_address=10.2.15.4

其IP爲計算節點的IP

最後,查看是否各服務安裝成功,各計算節點是否正常

sudo nova-manage service list


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章