zoukankan      html  css  js  c++  java
  • 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节点
    
  • 相关阅读:
    协议
    网页制作
    知识点--------二维数组
    方法---------拖延,清屏,前景色,背景色
    小知识点------遍历数组、switch case、do while
    知识点-----------函数
    循环经典--------冒泡排序,查找。
    知识点-------一维数组
    循环语句-----经典案例
    知识点--循环语句
  • 原文地址:https://www.cnblogs.com/dongzhanyi123/p/13300989.html
Copyright © 2011-2022 走看看