ubuntu 16.04 上安装OpenStack Mitaka (all-in-one):环境准备

2023-05-16

          原本在虚拟机上面安装的Liberty版本,实在是太慢了。现在决定直接安装在物理机器上。先是双系统直接安装了ubuntu 14.04 desktop版,结果进去一看,界面显示有问题,有的字符与背景颜色一致,有的字符是白字,完全没法看,网上查了一下可能的原因是显示器驱动与桌面程序不匹配,始终找不到解决方案。只好安装了ubuntu 16.04。先后尝试了desktop版本和server版本,在server版本的图形界面安装上面又折腾了一番,kubuntu-desktop无法不适应,遂放弃。最终还是在ubuntu 16.04 desktop上安顿下来了。
       官网上面(docs.openstack.org)上Mitaka安装说明书是基于ubuntu 14.04的。参照这个安装说明,在ubuntu 16.04上安装,过程略有不同,也出现了一些奇怪的问题,耗费了一些时间,逐个搞定。现将我的安装过程记录如下。
       1. 机器准备:一台双网卡的台式机
       2. 网络配置
       ubuntu 16.04 下不再是ethx这种名称了。我的机器上两个网络网卡设备名称分别是enp3s0和enp4s0,可以看作对应以前的eth0和eth1。
       操作2.1:编辑/etc/network/interfaces如下:
       
      操作2.2:编辑/etc/resolv.conf 写入域名服务器IP如下:
      
       操作2.3:执行 /etc/init.d/networking restart,启用你刚才的网络设置
       执行ifconfig可以看到如下信息,注意enp4s0是没有被分配IP地址的。
      
       操作2.4:编辑/etc/hosts,内容如下所示:
      
         注意:(1)一定要删除原有的127.0.1.1;(2)controller也要写到127.0.0.1的地址后面,我原来在ubuntu 14.04下安装时没有这样写也没有出问题,但是本次安装,在后面的keystone同步出现无权限连接到数据库的情况,在网上查了很多解决方案,只有这条是解决问题了,但是为什么必须这么做,我至今不是很明白。(2)在上图中,compute1和zopen请无视,在单点安装时,只要有controller了就行了。

      3. 时钟同步,one-in-all安装模式下,因为所有组件都装在一台机器上,时间同步就不是那么重要了,本步骤感觉可以略过
      操作3.1:执行安装命令 apt-get install chrony
      操作3.2:编辑
/etc/chrony/chrony.conf,在任意位置处添加如下一句参数设置,我设置的是上海交大的NTP服务器地址
     
      操作3.3:重启NTP服务,执行命令 service chrony restart
      可以执行chronyc sources命令,看到NTP服务器列表如下所示,dns.sjtu.edu.cn那个就是刚添加的服务器地址
     
     
      4. OpenStack包安装
      操作4.1:执行命令apt-get install software-properties-common
      操作4.2:按照官网安装说明,此处应该执行命令 add-apt-repository cloud-archive:mitaka,但是在ubuntu 16.04下执行此命令时会出现错误:cloud-archive for Mitaka only supported on trusty。在ubuntu 14.04下不会有这种问题,网上查询说只有14.04版本才支持Mitaka,但是这种说法是错误的,ubuntu官网上说16.04也是支持Mitaka的。所以不必为这个问题纠结,直接跳入下一个操作即可,本操作不成功不会影响后续安装。
       操作4.3:执行命令 apt-get update && apt-get dist-upgrade,执行完成后重启系统
       操作4.4:执行命令 apt-get install python-openstackclient
       注意操作4.1、4.3、4.4命令执行后一定要盯紧屏幕,一但出现任何error提示,就将命令重新执行一遍,必须每个操作都无任何错误提示,方可进行下一步。只有操作4.2出错可以略过。

       5. 安装SQL数据库
       操作5.1:执行命令 apt-get install mariadb-server python-pymysql
       比较奇怪的是,安装mariadb-server时,没有任何让我设置root密码的交互动作,我记得在ubuntu 14.04上安装的时候是有的。网上查了一下,说是mariadb默认root没有密码,这是我觉得比较奇怪的地方。安装完毕后最好进入数据库设置一下root密码,不设也可以,如果安全性要求不高的话。
       操作5.2:创建并编辑文件/etc/mysql/conf.d/openstack.cnf,写入如下内容
      
       操作5.3:重启服务 service mysql restart
       操作5.4:安全设置命令 mysql_secure_installation,执行后会有比较多的yes/no的交互,全部选择no也可以,也可仔细阅读,设置比较安全的设置。
      
       6. 安装NoSQL服务
       操作6.1:执行命令 apt-get install mongodb-server mongodb-clients python-pymongo
       操作6.2:编辑 /etc/mongodb.conf,写入如下设置
      
      
       操作6.3:执行重启等操作,这些操作没有啥输出(偷懒直接截取了官网图)
      
    
       7. 安装消息队列服务
       操作7.1:执行安装命令 apt-get install rabbitmq-server
       操作7.2:创建openstack用户 rabbitmqctl add_user openstack RABBIT_PASS,RABBIT_PASS改成你所要设置的密码
      操作7.3:授权命令 rabbitmqctl set_permissions openstack ".*" ".*" ".*"

       8. 安装分布式缓存服务
       操作8.1:执行安装命令 apt-get install memcached python-memcache
       操作
8.2:编辑 /etc/memcached.conf,将里面的 -l 127.0.0.1 修改成 -l 192.168.0.110(这是你的管理网卡IP地址
       操作8.3:重启服务 service memcached restart

       至此,环境配置结束。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ubuntu 16.04 上安装OpenStack Mitaka (all-in-one):环境准备 的相关文章

随机推荐