OpenStack 由于架构复杂,配置较多,一贯以安装部署过程困难闻名。虽然 OpenStack 社区先后涌现出了不少的自动化部署工具,可是对于普通用户,特别是新人来讲,上手仍然有难度。docker
使用本文介绍的基于 Kolla-Ansible 构建的操做系统镜像,用户只需执行极少命令便可完成环境的部署。安全
略,懂得天然懂bash
这里给你们提供的是 Stein
版本,能够体验更多的新特性。微信
注意,本镜像彻底基于开源版本构建,仅供学习参考。
下面给你们介绍的是基于 Kolla-Ansible 的容器化部署方式。网络
本安装方式具备的优势:架构
关于 Kolla 的一些高级特性,如多节点并行安装,高可用部署,在线升级扩容等,因条件所限,本次没法展现。
大部分人可能没有空闲的机器专门来安装 Linux 系统,这里咱们使用虚拟机也能够完成安装。ide
选择一个适合你的系统的虚拟机管理软件便可:工具
微信搜索并关注公众号 DavyCloud
,或者扫描下面图中的二维码,获取下载连接post
先配置两个网络:性能
10.10.10.1/24
新建一个虚拟机,知足如下条件:
davycloud-openstack-stein.iso
10.10.10.1/24
那一个进入引导菜单时,有两个选项:
使用方向键移动光标,选择第 1 个,按下回车键开始安装系统。
为何要把默认选项放在第 2 个?由于部署节点只须要安装一个便可,而工做节点可能会有不少个。
系统进入自动安装流程,整个过程无需任何交互。系统安装完毕后会弹出光盘并自动重启。
第一次启动过程会比较耗时,请耐心等待。
若是虚机的网络地址段按要求配置,对 OpenStack 的模块也没有什么特别要求,这里能够 不作任何改动,直接跳到下一步骤便可。为了避免让本文变得冗长,这里也不具体介绍修改配置的方法,仅简单说明相关状况。
All-In-One 安装场景默认安装 OpenStack 核心模块和公共组件,包括:
注意到核心模块里包含了初级用户日常比较少用的 Heat 服务,而比较经常使用的卷存储服务 Cinder 却没有做为核心模块包含在内。若是须要安装 Cinder,须要为其指定一个 backend,不一样的存储方式可能还有其它额外的配置条件,这里先保持默认不安装。
同时注意,即便是 All-In-One 场景,默认也是启用了 HAProxy 和浮动 IP,也就是须要安装:
启用 HAProxy 不须要什么额外操做,惟一须要的就是多占用一个 IP 地址。启用浮动 IP 可使得后续控制节点的横向扩展更简单。所以,除非肯定就是一直做为单节点环境使用,不然推荐保留默认配置。
值得注意的是,在某些云环境下(好比 OpenStack),这个浮动地址可能会面临安全组的问题,须要一些额外的配置。后面有机会再详细说明。
使用用户名 kolla
,密码 kollapass
登陆系统,并切换到 root
用户:
$ sudo -s # cd /root
下面的全部操做都使用 root
用户执行,全程只须要执行三个命令:
下面每一个命令都是执行相应的 ansible playbook,因此屏幕会有大量打印。
安装前的环境检测,检查是否必要条件都已经知足
# kolla-ansible prechecks
开始安装,视机器性能和选择安装模块数量,20分钟到40分钟不等,耐心等待便可
# kolla-ansible deploy
安装后的一点点收尾工做
# kolla-ansible post-deploy
上面的命令执行完成后,会在 /etc/kolla
目录下生成 admin-openrc.sh
文件,其中包含了登陆所须要的用户名和密码信息。
之前的 OpenStack 版本每一个模块都提供本身的客户端命令,例如 nova
, glance
等,如今基本都统一使用 openstack
命令。之前的命令有的还能用,好比 nova
,有的已经不能用了,好比 keystone
要使用 openstack
命令,必须先要安装各模块的客户端包。而咱们的宿主机系统里面只安装了 Docker
和 Ansible
。Kolla 构建的 docker 镜像中,已经在 openstack-base
这个基础镜像中安装了全部的客户端包,这意味着:
可是,每次手动敲命令进入容器里毕竟不够方便,因此我在镜像中内置了一个 bash 脚本,取名就叫 openstack
,其中的内容是启动一个容器,使用方法和本来 openstack
命令一致:
# source /etc/kolla/admin-openrc.sh <--仍然须要先导入环境变量 # openstack <-- 直接敲命令 (openstack)
由于随机生成的 admin 用户密码很长,VirtualBox 的控制台不支持复制,因此这时候你最好先找个 SSH 客户端登入虚拟机中把密码拷贝出来
安装过程还有疑问的能够在 Bilibili 观看视频操做。
若是以为文章不错,别忘了点赞和关注公众号,谢谢!
PS. 由于我的机器性能受限,后面我会把战场搬到 阿里云,不妨你也搞一台。