文章目录

  • 规划
    • 硬件配置
    • IP规划
    • 修改 hosts 解析
    • 挂载安装磁盘,配置本地源
    • 安装基础服务
      • NTP 时间同步
      • 安装 OpenStack 包
    • 控制节点需要安装的服务
      • 数据库
      • 消息队列
      • Memcached
      • Etcd

规划

本次安装参照官网文档进行安装,使用的是当前最新版 Train。
本次安装是在 VMware 环境下进行安装,使用 CentOS 7.4 系统,最小化安装。

硬件配置

官方建议最低配置:

  • 控制节点:1 个处理器,4 GB内存,5 GB存储
  • 计算节点:1 个处理器,2 GB内存,10 GB存储

IP规划

本次安装仅使用了一张管理网卡,使用Vmware 的 NAT 模式,机器可以直接访问互联网:

  • controller:10.1.1.128
  • conpute1:10.1.1.129

修改 hosts 解析

两台主机都配置 controller 的解析

# vim /etc/hosts,添加 controller 的解析
10.1.1.128 controller

验证:

[root@controller ~]# ping controller
PING controller (10.1.1.128) 56(84) bytes of data.
64 bytes from controller (10.1.1.128): icmp_seq=1 ttl=64 time=0.061 ms
64 bytes from controller (10.1.1.128): icmp_seq=2 ttl=64 time=0.027 ms
^C
--- controller ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.027/0.044/0.061/0.017 ms

挂载安装磁盘,配置本地源

# 挂载镜像到 /mnt,rc.local 会在用户登陆之前读取,在每次系统启动时都会执行一次
mount /dev/cdrom /mnt
echo 'mount /dev/cdrom /mnt' >> /etc/rc.local
chmod +x /etc/rc.d/rc.local
# 配置本地源
echo '[local]
name=local
baseurl=file:///mnt
gpgcheck=0' > /etc/yum.repos.d/local.repo

安装基础服务

NTP 时间同步

修改控制节点为时间服务器,控制节点与公网同步,计算节点和控制节点同步
控制节点:

# 安装服务
yum install chrony -y
# 编辑配置文件:vim /etc/chrony.conf
# 删除自带的服务器,使用公网时间服务器
server pool.ntp.org iburst
# 允许本地网络访问
allow 10.1.1.0/24
# 修改配置文件后开启服务,设置开机启动
systemctl enable chronyd.service
systemctl start chronyd.service

计算节点配置文件只修改服务器地址,同样设置为开机启动:

# 编辑配置文件:vim /etc/chrony.conf
# 删除自带的服务器,使用控制节点时间服务器
server 10.1.1.128 iburst

验证:

[root@compute1 ~]#  chronyc sources
210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^? controller                    0   9     0     -     +0ns[   +0ns] +/-    0ns

安装 OpenStack 包

所有节点都需要安装,即控制节点、计算节点。
从当前源中查找 OpenStack repo :

[root@controller ~]# yum search centos-release-openstack
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile* base: mirror.bit.edu.cn* centos-ceph-nautilus: mirrors.huaweicloud.com* centos-nfs-ganesha28: mirror.bit.edu.cn* centos-openstack-train: mirror.bit.edu.cn* centos-qemu-ev: mirror.bit.edu.cn* extras: mirrors.huaweicloud.com* updates: mirror.bit.edu.cn
======================================== N/S matched: centos-release-openstack ========================================
centos-release-openstack-queens.noarch : OpenStack from the CentOS Cloud SIG repo configs
centos-release-openstack-rocky.noarch : OpenStack from the CentOS Cloud SIG repo configs
centos-release-openstack-stein.noarch : OpenStack from the CentOS Cloud SIG repo configs
centos-release-openstack-train.noarch : OpenStack from the CentOS Cloud SIG repo configsName and summary matches only, use "search all" for everything.

安装 Train 版本的 repo:

yum install -y centos-release-openstack-train.noarch

安装完成后,会在系统路径中看到相关的 repo 文件:

[root@controller ~]# ls /etc/yum.repos.d/
CentOS-Base.repo           CentOS-Debuginfo.repo  CentOS-NFS-Ganesha-28.repo   CentOS-Sources.repo         local.repo
CentOS-Ceph-Nautilus.repo  CentOS-fasttrack.repo  CentOS-OpenStack-train.repo  CentOS-Storage-common.repo
CentOS-CR.repo             CentOS-Media.repo      CentOS-QEMU-EV.repo          CentOS-Vault.repo

更新包:

yum upgrade

安装 OpenStack client 和 openstack-selinux。

注:HEL和CentOS默认情况下启用SELinux。安装openstack-selinux软件包以自动管理OpenStack服务的安全策略。

yum install python-openstackclient openstack-selinux -y

控制节点需要安装的服务

数据库

  1. 安装:

    yum install mariadb mariadb-server python2-PyMySQL -y
    
  2. 编辑配置文件/etc/my.cnf.d/openstack.cnf,添加以下内容:
    [mysqld]
    bind-address = 10.0.0.11default-storage-engine = innodb
    innodb_file_per_table = on
    max_connections = 4096
    collation-server = utf8_general_ci
    character-set-server = utf8
    
  3. 完成安装,开启服务并设置为开机启动
    systemctl enable mariadb.service
    systemctl start mariadb.service
    
  4. 初始化数据库,设置密码
    mysql_secure_installation
    

    这里我用的是空密码,选项顺序是:n y y y y y

消息队列

OpenStack 使用消息队列来协调服务之间的操作和状态信息,默认使用的是rabbitmq

  1. 安装并启动服务

    yum install rabbitmq-server
    systemctl enable rabbitmq-server.service
    systemctl start rabbitmq-server.service
    
  2. 添加用户并为用户配置授权

    # 用户名 openstack 密码 RABBIT_PASS
    rabbitmqctl add_user openstack RABBIT_PASS
    # 为用户配置读、写、访问权限
    rabbitmqctl set_permissions openstack ".*" ".*" ".*"
    
  3. 安装 web 管理(非必需)

    rabbitmq-plugins enable rabbitmq_management
    
  4. 验证安装
    rabbitmq 服务使用的是 5672 和 25672 端口,web 端使用 15672 端口
    可以通过netstat -nltp | grep 5672来查看端口是否已监听

    注:最小化安装没有 netstat 命令,可以通过 yum install net-tools -y来安装

    [root@controller ~]# netstat -nltp | grep 5672
    tcp        0      0 0.0.0.0:15672           0.0.0.0:*               LISTEN      1208/beam.smp
    tcp        0      0 0.0.0.0:25672           0.0.0.0:*               LISTEN      1208/beam.smp
    tcp6       0      0 :::5672                 :::*                    LISTEN      1208/beam.smp
    

    通过http://controller_ip:15672来访问,默认账号密码是 guest,我的控制节点 IP 是 10.1.1.128,访问如下:

    注:如果端口开通,但是无法访问,一般情况是防火墙限制,请添加策略或直接关闭,我是直接关闭:systemctl stop firewalld

Memcached

  1. 安装

    yum install memcached python-memcached -y
    
  2. 编辑配置文件 /etc/sysconfig/memcached,允许其他节点来访问 memcached,0.0.0.0表示谁都可以访问。

    OPTIONS="-l 0.0.0.0"
    
  3. 启动服务

    systemctl enable memcached.service
    systemctl start memcached.service
    

    验证:
    使用netstat -nltup | grep 11211查看 端口是否已监听。

Etcd

OpenStack服务可以使用 Etcd 进行分布式键锁定,存储配置,跟踪服务活动性和其他情况。

  1. 安装

    yum install etcd -y
    
  2. 编辑配置文件/etc/etcd/etcd.conf,替换ETCD_INITIAL_CLUSTER, ETCD_INITIAL_ADVERTISE_PEER_URLS, ETCD_ADVERTISE_CLIENT_URLS, ETCD_LISTEN_CLIENT_URLS几项内容为管理节点的 IP。

    #[Member]
    ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
    ETCD_LISTEN_PEER_URLS="http://10.1.1.128:2380"
    ETCD_LISTEN_CLIENT_URLS="http://10.1.1.128:2379"
    ETCD_NAME="controller"
    #[Clustering]
    ETCD_INITIAL_ADVERTISE_PEER_URLS="http://10.1.1.128:2380"
    ETCD_ADVERTISE_CLIENT_URLS="http://10.1.1.128:2379"
    ETCD_INITIAL_CLUSTER="controller=http://10.1.1.128:2380"
    ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-01"
    ETCD_INITIAL_CLUSTER_STATE="new"
    
  3. 开启服务

    systemctl enable etcd
    systemctl start etcd
    

    验证:
    使用netstat -nltup | grep 23查看 2379、2380 端口是否已监听。

至此,OpenStack 需要的基础环境已经搭建完成。

PS:安装过程不记录了,因为看到了系统关联推荐的另一篇文章,也是按照官网来步骤来进行安装的,记录的也很详细,在此引用一下,OpenStack Train版部署。

之后就记录我照着官网文档安装过程中碰到的坑,上面的文章中已经跳过了其中一些坑OpenStack Train 安装过程记录。

OpenStack Train 安装过程记录(一):基础环境准备相关推荐

  1. VPB安装过程记录-20200310

    VPB安装过程记录-20200310 内容概述 1.环境及版本 2.所需内容下载 3.总体配置路线 4.OSG安装过程 5.GDAL编译 6.VPB编译 内容概述 本文主要记录VPB配置过程及其中遇到 ...

  2. 云服务器主控系统,NoKvm云主机管理系统主控面板安装过程记录

    老左平时接触网站运营和服务器云主机简单的运维处理比较多,且对于云服务器商家也仅仅停留在遇到和尝试使用的一些商家而已.未来在博客中也依旧保持这样的风格,只分享和接触过的商家,包括一些软件面板产品.对于服 ...

  3. CV之detectron2:detectron2安装过程记录

    CV之detectron2:detectron2安装过程记录 detectron2安装记录 python setup.py build develop Microsoft Windows [版本 10 ...

  4. linux chrome 安装过程记录

    最近,由于公司需要做爬虫抓取一些新闻,在开发过程中,发现有些网站有一定的反爬措施,通过浏览器访问一切正常,通过其他方式,包括:curl,urlconnection 等,就算加入了cookie,agen ...

  5. 安卓模拟器安装过程记录 20200926

    安卓模拟器安装过程记录 20200926 使用的软件 网易MuMu模拟器-安卓模拟器-极速最安全 http://mumu.163.com/baidu/ 下载并安装 选择路径 在线下载并且安装 安装好后 ...

  6. ubuntu下安装PCL并测试(含视频安装过程记录)

    ☛☛ 视频安装过程记录 ☚☚ 原文章的标题为Ubuntu16.04下安装PCL1.7并测试(含视频安装过程记录),但我觉得随着时间的推移,版本会发生改变 1.更新源 sudo apt-get upda ...

  7. openstack官方安装文档的解析--环境配置篇(1)

                      openstack官方安装文档的解析--环境配置篇(1) 1. - # openstack的环境搭建安装版本的一些信息---安装的版本为queens版本,选择该版本 ...

  8. 北塔网管软件BTSO2.5安装过程记录

    北塔网管软件据说是同类比较好的,原来的BTIM系列好像停止更新了,用BTSO版本代替,叫智慧运维平台,据说有各种改进,先把安装过程记录下来,以备以后重装. BTSO分两个部分:平台服务器和注册服务器, ...

  9. Ubuntu18.04 小米游戏本最早一代 双硬盘 安装 过程记录

    Ubuntu18.04 小米游戏本最早一代 双硬盘 安装 过程记录.踩了很多坑,折腾了无数次,总结一下,方便日后查阅. UEFI+GPT 新买了一个1T的西数SN550,779元.疫情期间,价格大涨, ...

最新文章

  1. [PowerShell] PowerShell学习脚印
  2. Linux下如何定位Java进程CPU利用率过高原因
  3. 中的枚举属性函数_软件特攻队|Qt中的反射机制之Q_PROPERTY
  4. or计算机二级,计算机二级VF历年上机试题or答案
  5. CentOS 7 使用源代码编译并安装软件
  6. 高通-物理专线2.0新版资费计划
  7. vertica--an hp company
  8. pytorch如何增加维度_Pytorch中的LSTM:如何添加/更改序列长度维度?-问答-阿里云开发者社区-阿里云...
  9. 【英语天天读】Albert Einstein’s Advices
  10. Python安装包的多种方式
  11. 笔记本内置键盘的外接改造(上篇)
  12. 【系统化学习】CSDN算法技能树测评
  13. 网宿cdn api 刷新缓存函数
  14. 凌动z3735f运行64位linux,iwork8平板电脑安装ubuntu,Z3735d/f系列CPU通用
  15. 用python爬取阳光电影的链接
  16. 权力的游戏凛冬将至手游辅助升级脚本工具 新手操作指南
  17. jeeplus ani 文档路径
  18. PythonQt——yolov5手势识别隔空操纵车载音乐播放器
  19. 基于Matlab搭建单站雷达扫描天空仿真平台(附源码)
  20. B - Balala Power!

热门文章

  1. Friend's Video List
  2. Python flask设置favicon.ico图标
  3. 为什么在12306买火车票要装根证书
  4. 绘图工具推荐之甘特图
  5. 武汉游戏公司android面试
  6. PPT中插入的视频文件无法播放的问题
  7. 民族证券午间看盘:短线有望企稳,把握反弹机会
  8. 百款蓝牙耳机试用测评:这五款高性价比蓝牙耳机更值得入手
  9. 两年前我对区块链的了解为零, 两年后我成了工程师 我是如何得到第一份工作的?...
  10. 标记图标_标记您的图标