美文网首页
OpenStack开源云计算操作系统安装详细步骤-红帽Linux

OpenStack开源云计算操作系统安装详细步骤-红帽Linux

作者: boker365 | 来源:发表于2020-03-30 13:49 被阅读0次

    OpenStack开源云计算操作系统安装详细步骤-红帽Linux+PackStack含资源

    部署环境

    三台服务器可为VMWare Workstation中的三个虚拟机,注意打开CPU虚拟化选项

    • Controller(控制节点)
      • CPU 2个
      • 内存 4G
      • 硬盘 30G
    • Compute(计算节点)
      • CPU 2个
      • 内存 4G
      • 硬盘 30G
    • NTP(时间服务器)
      • CPU 1个
      • 内存 1G
      • 硬盘 20G

    安装步骤

    • 前序步骤:三台服务器均安装RHEL7.1系统或centOS7.1

    • 1、配置网络和计算机名(三个节点)

      • Controller
        • IP: 192.168.6.66
        • 子网掩码:255.255.255.0
        • 网关:192.168.6.254
        • DNS: 192.168.6.66
        • 计算机名: controller
      • Compute
        • IP: 192.168.6.77
        • 子网掩码:255.255.255.0
        • 网关:192.168.6.254
        • DNS: 192.168.6.66
        • 计算机名: compute
      • NTP
        • IP: 192.168.6.88
        • 子网掩码:255.255.255.0
        • 网关:192.168.6.254
        • DNS: 192.168.6.66
        • 计算机名: ntp
    # 打开网络配置文件
    vim /etc/sysconfig/network-scripts/ifcfg-eno16777736 
    
    TYPE=Ethernet
    BOOTPROTO=none
    NAME=eno16777736
    DEVICE=eno16777736
    ONBOOT=yes
    # 三台机器分别设置为66/77/88
    IPADDR=192.168.6.66
    NETMASK=255.255.255.0
    DNS1=192.168.6.66
    
    # 重启网络生效
    systemctl restart network
    # 或者
    service network restart
    
    # 修改主机名
    hostnamectl set-hostname controller
    
    # 计算机名写入host表
    # xshell --> 工具 --> 发送键输入到所有会话
    vim /etc/hosts
    
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    # 以下为增加内容
    192.168.6.66  controller
    192.168.6.77  compute
    192.168.6.88  ntp
    
    • 2、配置安全(三个节点)
    # 关闭防火墙
    systemctl stop firewalld.service  # 本次关闭
    systemctl disable firewalld.service  # 开机不自启
    
    # 关闭SELinux(内核安全机制)
    vim /etc/selinux/config
    SELINUX=disabled  # 开机不自启
    
    setenforce 0  # 本次关闭
    
    # 关闭 NetworkManager 服务(RHEL7对桥接支持不好)
    systemctl disable NetworkManager  # 开机不自启
    
    systemctl stop NetworkManager.service  # 本次关闭
    
    

    关于 selinux, 可参考 getsebool -a 中的开关
    在国内,一般直接关掉防火墙和selinux,但从安全角度来说,强烈不建议这样做

    • 3、配置时间服务器(只在ntp服务器中配置)
      • 保证OpenStack各个节点的时间一致,因为服务对时间特别敏感,OpenStack各组件之间交互特别频繁,交互关系特别多
      • 时钟服务器一定不可以搭在OpenStack节点上,而必须是一个外部节点
      • 红帽7中默认安装了新的chronyd时钟服务,而没有安装老的ntpd时钟服务
      • packstack安装OpenStack时,会自动检测时钟服务chronyd,纯开源安装不会检测
    vim /etc/chrony.conf
    
    # 注释如下四行,因为ntp是host-only模式,无法连接互联网,故取消上行对时
    #server 0.rhel.pool.ntp.org iburst
    #server 1.rhel.pool.ntp.org iburst
    #server 2.rhel.pool.ntp.org iburst
    #server 3.rhel.pool.ntp.org iburst
    
    :set nu  # 打开行号
    # 取消第29行的注释,让ntp服务器作为最终的时钟源
    local stratum 10
    
    # 模仿第22行
    allow 192.168.6/24  # 允许该网段的主机向我同步时间
    
    # 重启时钟服务
    systemctl restart chronyd.service
    
    # 在controller节点中测试时钟服务器是否设置成功
    date  # 查看当前时间
    date 11112011  # 将controller节点时间改成错误时间
    ntpdate 192.168.6.88  # 设置向ntp时钟服务器同步时间
    date  # 再次查看当前时间,发现跟时钟服务器相同了
    
    • 4、配置yum服务器和yum仓库文件(只在yum源服务器中配置)
      • 将NTP服务器复用成为yum源
      • 新建根文件夹 mkdir /isos
      • 通过xftp的sftp协议将宿主机windows中的rhel-server-7.1-x86_64-dvd.iso和RHEL7OSP-6.0-2015-02-23.2-x86_64.iso两个文件拷贝至linux中的/isos目录中
      • yum源需要使用http共享出去
      • 挂载rhel-server-7.1-x86_64-dvd.iso安装http包
    # 利用rhel-server-7.1-x86_64-dvd.iso安装http包
    
    # 将iso文件挂在到/media上面
    mount rhel-server-7.1-x86_64-dvd.iso /media/
    
    # 查看挂在的iso文件
    df -h
    
    # 新建本地yum源
    cd /etc/yum.repos.d/
    vim dvd.repo
    
    [dvd]
    name=redhat
    baseurl=file:///media
    gpgcheck=0
    
    # 利用本地yum源安装httpd包
    cd
    yum -y install httpd
    # 安装成功会出现complete!
    
    # 启动http服务
    systemctl enable httpd
    systemctl start httpd
    
    # 在http默认目录下新建两个目录
    mkdir /var/www/html/pub
    mkdir /var/www/html/openstack
    
    # 卸载之前挂载在/media上的iso文件
    umount /media/
    df -h  # 查看确认已卸载
    
    
    # 进入http目录,写一个index文件
    cd /varcd /var/www/html/
    vim index.html
    hello
    # 局域网内任意主机通过浏览器访问网址http://192.168.6.88,可以看到hello
    
    # 将rhel-server-7.1-x86_64-dvd.iso和RHEL7OSP-6.0-2015-02-23.2-x86_64.iso两个文件的完整路径写入fstab
    vim /etc/fstab
    /isos/rhel-server-7.1-x86_64-dvd.iso /var/www/html/pub iso9660 defaults 0 0
    /isos/RHEL7OSP-6.0-2015-02-23.2-x86_64.iso /var/www/html/openstack iso9660 defaults 0 0
    
    # 挂载并验证是否成功
    mount -a  # 挂载,看到如下反馈
    mount: /dev/loop0 is write-protected, mounting read-only
    mount: /dev/loop1 is write-protected, mounting read-only
    df -h  # 验证,看到如下反馈
    /dev/loop0             3.7G  3.7G     0 100% /var/www/html/pub
    /dev/loop1             515M  515M     0 100% /var/www/html/openstack
    # 浏览器访问验证可以查看iso光盘中的内容
    # http://192.168.6.88/pub
    # http://192.168.6.88/openstack
    
    # 更改yum源地址
    # 路径写到哪一层,取决于repodata在哪一层
    cd /var/www/http/openstack
    # 发现在RH7-RHOS-6.0和RH7-RHOS-6.0-Installer目录下都有repodata,所以配置两个yum源仓库,最终结果如下
    vim /etc/yum.repos.d/dvd.repo
    
    [dvd]
    name=redhat
    baseurl=http://192.168.6.88/pub
    gpgcheck=0
    
    [openstack]
    name=openstack
    baseurl=http://192.168.6.88/openstack/RH7-RHOS-6.0-Installer
    gpgcheck=0
    
    [OSP]
    name=OSP
    baseurl=http://192.168.6.88/openstack/RH7-RHOS-6.0
    gpgcheck=0
    
    # 测试yum仓库是否配置成功
    yum clear all
    yum list all
    
    cd /var/www/html/openstack/RH7-RHOS-6.0/Packages
    # 可以看见yum安装openstack所有需要的包
    # 可以学习createrepo -v命令,了解如何制作repodata文件夹下的内容
    
    # 将ntp服务器中的yum仓库配置文件拷贝到controller和compute两台服务器的相应路径中,以便另两台机器中能够通过yum命令自动化安装openstack
    scp /etc/yum.repos.d/dvd.repo root@controller:/etc/yum.repos.d/
    
    

    至此,其他服务器安装时,都是远程使用ntp服务器中的yum仓库进行安装,当需要安装多个节点时,会特别方便

    • 5、安装packstack工具(仅在controller服务器中操作)
      • packstack是用来部署openstack的工具包
      • 通过packstack工具生成的应答文件可以快速安装多个节点
    # 可通过ntp服务器上面的yum源安装packstack包
    yum -y install openstack-packstack
    # 安装成功会出现complete!
    
    # 查看帮助
    packstack --help |more
    
    # 生成应答文件,作为安装openstack时的参数,类似于批处理,安装过程的批处理
    # Generate a template of an answer file, using this option excludes all other options
    packstack --gen-answer-file=/root/answers.txt
    # 此时会在 /root/ 目录下生成应答文件 answers.txt, 并得到如下反馈生成一个公钥
    Packstack changed given value  to required value /root/.ssh/id_rsa.pub
    
    # 华为使用TripleO生成lld文件来做这件事
    
    # 该帮助文档有600多行,可以在vim中使用如下命令
    :set nu     # 显示行号
    :set nonu   # 取消显示行号
    gg          # 跳转到文本第一行
    G           # 跳转到文本最后一行
    :n          # 跳转到文本的第n行
    /XXX        # 搜索XXX并跳转光标
    n           # 搜索后光标跳转到下一个
    N           # 搜索后光标跳转到上一个
    
    dd          # 删除光标所在行
    dG          # 删除光标所在行到最后一行的所有内容
    
    
    • 6、规划并使用应答文件安装openstack
    vim /root/answers.txt
    
    # 设置NTP服务器地址
    CONFIG_NTP_SERVERS=192.168.8.88
    
    # 设置ADMIN账户密码
    CONFIG_KEYSTONE_ADMIN_PW=redhat
    
    # 设置HORIZON_SSL加密,使得登录时使用https而不是http
    CONFIG_HORIZON_SSL=y
    
    # 关闭PROVISION_DEMO演示环境,若打开演示,会默认做好网络、镜像,还分发一个云主机
    CONFIG_PROVISION_DEMO=n
    
    # 设置计算节点IP地址
    CONFIG_COMPUTE_HOSTS=192.168.6.77
    # 可同时设置多个计算节点,甚至可将控制节点复用为计算节点,此处不做下面的设置
    CONFIG_COMPUTE_HOSTS=192.168.6.77,192.168.6.66
    
    # 通过应答文件,自动化安装openstack
    packstack --answer-file=/root/answers.txt
    # 安装过程需输入控制节点和计算节点的密码,并会传输秘钥,以便自动化安装过程中不需要再次输入密码
    # 如果时钟同步出了问题,安装将无法进行。不需要知道时钟服务器的密码
    
    # 安装成功后应能看到下面的文字
    **** Installation completed successfully ******
    
    # 通过访问https://192.168.6.66/dashboard进入openstack
    # 用户名/密码为:admin/redhat
    

    相关文章

      网友评论

          本文标题:OpenStack开源云计算操作系统安装详细步骤-红帽Linux

          本文链接:https://www.haomeiwen.com/subject/udqvuhtx.html