openstack-快速添加計算節點


准備工作

在一個已經安裝好nova及neutron服務的計算節點上,將nova和neutron服務下的所有配置文件及目錄進行打包,拷貝到需要進行計算節點添加的服務器的指定目錄下

##nova
1、cd /etc/nova/

2、tar czvf nova-compute.tar.gz ./*

3、scp nova-compute.tar.gz 172.31.7.109:/usr/local/src/openstack-compute/


##neutron
1、cd /etc/neutron/

2、tar czvf neutron-compute.tar.gz ./*

3、scp neutron-compute.tar.gz 172.31.7.109:/usr/local/src/openstack-compute/


##sysctl.conf內核參數文件
1、scp /etc/sysctl.conf 172.31.7.109:/usr/local/src/openstack-compute/
#內核參數中需要有net.bridge.bridge-nf-call-iptables = 1 和 net.bridge.bridge-nf-call-ip6tables = 1


##limits資源限制文件
1、scp /etc/security/limits.conf 172.31.7.109:/usr/local/src/openstack-compute/


##拷貝openstack網橋設備自動綁定eth0網卡修改后的py文件
1、scp /usr/lib/python2.7/site-packages/neutron/plugins/ml2/drivers/linuxbridge/agent/linuxbridge_neutron_agent.py 172.31.7.109:/usr/local/src/openstack-compute

在新的node節點上編輯自動添加計算節點的腳本

1、mkdir /usr/local/src/openstack-compute

2、cd /usr/local/src/openstack-compute

3、vim openstack-compute-install.sh
#!/bin/bash
echo "即將開始時間同步"
sleep 1
/usr/sbin/ntpdate time1.aliyun.com && hwclock -w
echo "時間同步完成"
echo "當前服務器時間: `date '+%Y年%m月%d日 %H點%M分%S秒'`"
sleep 1

echo "即將開始系統優化,包括內核參數、資源限制以及歷史命令格式"
sleep 1 
\cp limits.conf /etc/security/limits.conf    #\cp是強制拷貝,覆蓋已有文件
\cp sysctl.conf /etc/sysctl.conf
sleep 1
echo 'export HISTTIMEFORMAT="%F %T `whoami` "'>> /etc/profile
OPENSTACK_VIP="172.31.7.248"
echo "${OPENSTACK_VIP} openstack-vip.linux.local" >> /etc/hosts
echo "系統參數優化完成"
sleep 1

#install openstack-T yum repo
echo "即將開始安裝openstack T版yum源"
yum install centos-release-openstack-train.noarch -y
yum install python-openstackclient openstack-selinux -y
echo "openstack T版yum源安裝完成"
sleep 1

#install nova
echo "即將開始安裝nova"
yum install openstack-nova-compute -y
echo "nova服務安裝完成,即將開始替換配置文件"
sleep 1

tar xvf nova-compute.tar.gz -C /etc/nova/
NODE_IP=`ifconfig eth0 | grep -w "inet" | awk '{print $2}'`
echo "當前計算節點的管理IP是: ${NODE_IP}"
sed -i "s/^server_proxyclient_address.*/server_proxyclient_address = ${NODE_IP}/" /etc/nova/nova.conf
echo "nova配置文件替換成功"
sleep 1

echo "即將啟動nova服務"
systemctl start openstack-nova-compute libvirtd 
if [ $? = 0 ];then
    systemctl enable openstack-nova-compute libvirtd
    echo "nova服務啟動成功"
    sleep 1
else
    echo "nova服務啟動失敗"
    exit 7
fi

#install neutron
echo "即將開始安裝neutron"
yum install openstack-neutron-linuxbridge ebtables ipset -y
echo "neutron安裝完成"
sleep 1
tar xvf neutron-compute.tar.gz -C /etc/neutron/
\cp linuxbridge_neutron_agent.py /usr/lib/python2.7/site-packages/neutron/plugins/ml2/drivers/linuxbridge/agent/

systemctl start neutron-linuxbridge-agent
if [ $? = 0 ];then
    echo "neutron服務啟動成功"
    sleep 1
    systemctl enable neutron-linuxbridge-agent && sysctl -p
    echo "當前服務器時間: `date '+%Y年%m月%d日 %H點%M分%S秒'`"
    sleep 1
else
    echo "neutron服務啟動失敗"
    exit 7
fi

echo "當前計算節點nova和neutron服務安裝並配置完成,一分鍾后將重啟服務器,請在服務器重啟后查看nova和neutron日志是否有異常日志或到controller節點驗證"
sleep 3
shutdown -r +1 "系統將在一分鍾后重啟,請重啟后驗證服務是否正常"  
#-r參數是關機后重啟;使用shutdown關機會有交互過程,這樣可以不會立即重啟

4、ll /usr/local/src/openstack-compute
-rw-r--r-- 1 root root   593 Apr 27 17:42 limits.conf
-rw-r--r-- 1 root root 47076 Apr 27 19:49 linuxbridge_neutron_agent.py
-rw-r--r-- 1 root root 15466 Apr 27 19:25 neutron-compute.tar.gz
-rw-r--r-- 1 root root 51206 Apr 27 17:57 nova-compute.tar.gz
-rwxr-xr-x 1 root root  2436 Apr 27 20:20 openstack-compute-install.sh
-rw-r--r-- 1 root root  2310 Apr 27 17:45 sysctl.conf

5、bash openstack-compute-install.sh   #進行自動化部署

驗證測試

##controller節點執行
1、neutron agent-list   #查看是否能夠查看到新添加節點的neutron服務

2、nova service-list    #查看是否能夠查看到新添加節點的nova服務


##添加完的計算節點需要查看日志
1、tail -f /var/log/neutron/*.log   #日志中不能有任何報錯

2、tail -f /var/log/nova/*.log


##在dashboard上創建虛擬機進行測試,查看新創建的虛擬機是否分配到新添加的node節點上
1、brctl show  #在新添加的node節點上查看創建完虛擬機后,brq網橋設備是否綁定到物理機上的eth0網卡

2、virsh list   #查看當前node節點的虛擬機列表

從openstack中下線node節點

當從openstack中的nova和neutron服務列表中刪除了需要下線的node節點后,就可以把需要下線的服務器進行下線即可

1、neutron agent-list   #查看需要下線的node節點的neutron服務的ID

2、neutron agent-delete ID   #從openstack的neutron服務列表中,刪除指定的node節點

3、nova service-list    #查看需要下線的node節點的nova服務的ID

4、nova service-delete ID    #從openstack的nova服務列表中,刪除指定的node節點


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM