1. 程式人生 > >OpenStack 最小化安裝配置(九):計算節點的服務安裝

OpenStack 最小化安裝配置(九):計算節點的服務安裝

      之前的篇章提到了對OpenStack控制節點的簡單安裝。並且已經可以進入視覺化介面。這樣的花控制節點的虛擬機器已經可以協同工作了。接下來我們需要給與他一個資源池,我們以後雲平臺的所有資源都將在資源池獲取。控制節點只是作為一個對雲平臺的管理節點。計算節點我們需要用到3張網絡卡。我的電腦裝上了Ubuntu Server 我的網絡卡顯示是第一上em2 第二張em3 以此類推。名字只是代號而已。使用者配置檔案處識別使用。

     我們需要網絡卡 em2 作為API節點的通訊埠。也就是說em2作為通訊,設定為與控制節點eth0網絡卡相同的子網掩碼讓兩個網絡卡介面可以相互通訊。這也是整個雲平臺的通訊埠。em3作為上網埠。我的計算節點裝上的Ubuntu系統要通過這個網絡卡來連線網際網路。em4用來管理埠。

    以下是我的網絡卡配置檔案。

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto em2
auto em3
auto em4

iface em2 inet static
address 192.168.1.133
netmask 255.255.255.0

iface em3 inet dhcp

iface em4 inet static
address 192.168.137.222
netmask 255.255.255.0
gateway 192.168.137.249
dns-nameservers 140.207.198.6

下面是張子凡先生的教程。

首先配置IP轉發安裝時間

修改/etc/sysctl.conf

net.ipv4.conf.default.rp_filter=0
net.ipv4.conf.all.rp_filter=0

重啟網路
/etc/init.d/networking restart

應用syctl設定

syctl -e -p /etc/sysctl.conf

關閉ntp服務,同步到國家時間標準。並且保留到機器中
service ntp stop
ntpdate 210.72.145.44
hwclock -w
service ntp start


其實也不知道上面的步驟何用。

接著就開始安裝需要的元件

下面是我的指令碼。

apt-get install -y nova-api nova-compute nova-network nova-compute-kvm python-nova python-keystone python-glance python-mysqldb 
python-novaclient
我們需要刪除系統的virbr0據說是kvm安裝時候自動安裝上去的。
ifconfig virbr0 down
brctl delbr virbr0
virsh net-destroy default
virsh net-undefine default

安裝完畢。

接下來就是配置檔案的時候了。

首先是/etc/nova/api-paste.ini
新增認證。這裡跟控制節點的配置是一樣的。

接著是重要檔案。/etc/nova/nova.conf

下面是我的配置檔案。

[DEFAULT]
#debug=True
logdir = /var/log/nova
state_path = /var/lib/nova
lock_path = /var/lib/nova/tmp
verbose=True
libvirt_type = kvm
#volumes_dir = /etc/nova/volumes
#iscsi_helper = tgtadm
#connect to mysql 
sql_connection = mysql://novaUser:[email protected]:3306/nova
#rpc_backend = nova.openstack.common.rpc.impl_qpid
rootwrap_config = /etc/nova/rootwrap.conf
#my_ip=192.168.137.104
#instances_path=/state/partition1/openstack/instance

#Image Service
glance_api_servers=192.168.1.105:9292
image_server=nova.image.glance.GlanceImageService


#RabbitMQ
compute_scheduler_driver=nova.scheduler.filter_scheduler.FilterScheduler
rabbit_host=192.168.1.103
rabbit_port=5672
rabbit_userid=guest
rabbit_password=myrabbitmqpassword
api_paste_config=/etc/nova/api-paste.ini


#Nova
cc_host=192.168.1.106

osapi_host=192.168.1.106
osapi_port=8774




#NETWORK
dhcpbridge = /usr/bin/nova-dhcpbridge
dhcpbridge_flagfile = /etc/nova/nova.conf
force_dhcp_release = True
#libvirt_inject_partition = -1
#injected_network_template = /usr/share/nova/interfaces.template
#libvirt_nonblocking = True
firewall_driver = nova.virt.libvirt.firewall.IptablesFirewallDriver
network_manager = nova.network.manager.FlatDHCPManager
fixed_range=192.168.100.0/24
flat_network_bridge = br100
public_interface=em4
#flat_interface=eth2
flat_network_dhcp_start=192.168.100.2
floating_range=60.12.206.32/27
network_size = 1
multi_host = true

#Metadata
enabled_apis=metadata
metadata_listen=0.0.0.0
metadata_listen_port=8775


#VNC
novnc_enabled=true
novncproxy_base_url=http://192.168.1.106:6080/vnc_auto.html
novncproxy_port = 6080
#這個要用的是所在主機的IP地址
vncserver_proxyclient_address = 192.168.1.133
vncserver_listen = 0.0.0.0

#AUTH
auth_strategy = keystone
#Must Have 
[keystone_authtoken]
admin_tenant_name = serviceTenant
admin_user = nova
admin_password = Nova_Pass
auth_host = 192.168.1.104
auth_port = 35357
auth_protocol = http
signing_dir = /tmp/keystone-signing-nova


#Compute
compute_driver = libvirt.LibvirtDriver

我也是直接把控制節點的拷貝過來根據教程的適當添加了一些健值對。

其中要注意的

#這個要用的是所在主機的IP地址
vncserver_proxyclient_address = 192.168.1.133

這個是vnc代理,如果這個設定錯了建立的雲主機將無法訪問。因為vnc代理出錯了。無法提供vnc服務。

然後我們重啟服務。

當然這裡也要注意配置資料夾還有日誌資料夾的許可權。

使用chown  -R nova:nova 使得/etc/nova  /var/log/nova 兩個資料夾都屬於nova使用者還有nova組

然後重新啟動服務。

下面是重啟指令碼。restart_compute.sh

service nova-api restart
service nova-network restart
service nova-compute restart

然後檢視程序

如果配置檔案沒錯的話應該都是正常啟動的。

接下來我們檢視服務狀況。

nova-manage service list


這裡就會出現這樣一個問題。


大家都可以看到狀態那裡全是XXX。但是我回到控制節點的nova虛擬機器上。檢視服務狀態。

卻是全部都是笑臉

這就很奇怪了。

我進入我的horizon頁面

大家可以看到雲資源已經可以用了。我也建立了虛擬機器。

之所以造成服務狀態不一致的原因是控制節點與計算節點的時間相差太多。

接下來我調整下時間。

都變成笑臉了。

然後就可以通過horizon介面在計算節點Host2上建立虛擬機器了。

我使用了一個Fedora官方的雲映象就100多MB 建立了一個虛擬機器。結果如下。

尷尬的說我並沒有他的使用者名稱還有密碼。我也剛建立成功沒幾天。正在琢磨著要如何使用映象。希望上面的教程對大家有用吧。本來是打算用上FlatDHCPManager 的網路方式。不過這裡就只有一個計算節點就暫時不需要nova-network。