简介

文章目录

  • 简介
    • 一 、 推荐先访问官网
    • 二 、环境准备
    • 三 、 Install packages
      • 1 、 安装依赖
      • 2 、 安装 pip,ansible,docker
      • 3. 配置 docker 镜像加速
      • 4. 安装 kolla-ansible(version==8.0.0)
      • 5. copy文件
    • 四 、 Prepare initial configuration
      • 1. Configure Ansible /etc/ansible/ansible.cfg
      • 2. 配置主机清单文件,根据部署场景,这里选择 all-in-one 文件
        • 3 . 配置 ssh 无密钥登录,授权节点
      • 4. 对 /etc/kolla/passwords.yml 文件生成随机密码,或者修改为自定义密码
      • 5. 配置 /etc/kolla/globals.yml 文件
    • 五 、 Deployment
    • 六 、 Using OpenStack

一 、 推荐先访问官网

之前部署openstack一直都是分组件,写脚本,单独执行,费时费力,还容易出现异常,现在尝试了一下使用自动化工具部署openstack,觉得至少部署的速度飙升。希望感兴趣的可以尝试尝试,这里仅仅为了实验方便,就采用(all-in-one)模式。

① 这个是kolla-ansible的官方网站

https://docs.openstack.org/kolla-ansible/latest/user/quickstart.html

② 这个是ansible的官方网站。

http://docs.ansible.com/

③ 这个是docker的官方网站。

http://docs.ansible.com/

④ 我之前也做了docker的基础实验:

https://blog.csdn.net/qq_28513801/category_8592442.html

二 、环境准备

主机名 IP 网卡
opensatck 172.31.132.253 eth0
第二块网卡 eth1
CentOS 7.5
OpenStack stein
[root@openstack ~]# hostnamectl set-hostname --static openstack[root@openstack ~]# cat /etc/hosts
127.0.0.1 localhost
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.31.132.253 openstack关闭防火墙,关闭selinux.

三 、 Install packages

1 、 安装依赖
[root@openstack ~]#  rm -rfv * /etc/yum.repos.d/*
[root@openstack ~]#  curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@openstack ~]#  yum install epel-release
[root@openstack ~]# yum install python-devel libffi-devel gcc openssl-devel libselinux-python -y
2 、 安装 pip,ansible,docker
[root@openstack ~]# yum install python-pip ansible –y
[root@openstack ~]# pip install -U pip 

① 安装 docker-ce

step 1: 安装必要的一些系统工具
# step 1: 安装必要的一些系统工具
[root@openstack ~]# sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
[root@openstack ~]# sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新并安装Docker-CE
[root@openstack ~]# sudo yum makecache fast
[root@openstack ~]# sudo yum -y install docker-ce
# Step 4: 开启Docker服务
[root@openstack ~]# systemctl enable docker;systemctl restart docker
3. 配置 docker 镜像加速

[root@openstack ~]# mkdir -p /etc/docker
[root@openstack ~]# tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://registry.docker-cn.com"]
}
EOF
[root@openstack ~]# systemctl daemon-reload
[root@openstack ~]# systemctl restart docker
4. 安装 kolla-ansible(version==8.0.0)
pip install kolla-ansible==8.0.0 #这里版本严格使用8.0.0,否则会报异常错误可以适当添加源
https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/例如:
pip install kolla-ansible==8.0.0  -i  https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/如果安装过程出现报错,可以先忽略该模块,如果需要就在安装。例如:Cannot uninstall 'PyYAML'. It is a distutils installed project
and thus we cannot accurately determine which filesbelong to it which would lead to only a partial uninstall则可以先忽略:
pip install kolla-ansible --ignore-installed PyYAML  -i  https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/需要就在安装:pip  install XXXX==8.0.0
5. copy文件

[root@openstack ~]# mkdir -p /etc/kolla
[root@openstack ~]# chown $USER:$USER /etc/kolla
[root@openstack ~]# cp -r /usr/share/kolla-ansible/etc_examples/kolla/* /etc/kolla/    ##Copy globals.yml and passwords.yml
[root@openstack ~]# cp /usr/share/kolla-ansible/ansible/inventory/* .    ##Copy all-in-one and multinode inventory files

四 、 Prepare initial configuration

1. Configure Ansible /etc/ansible/ansible.cfg
[defaults]
host_key_checking=False
pipelining=True
forks=100
2. 配置主机清单文件,根据部署场景,这里选择 all-in-one 文件

[root@openstack ~]# vi all-in-one# These initial groups are the only groups required to be modified. The
# additional groups are for more control of the environment.
[control]
localhost       ansible_connection=local[network]
localhost       ansible_connection=local[compute]
localhost       ansible_connection=local[storage]
localhost       ansible_connection=local[monitoring]
localhost       ansible_connection=local[deployment]
localhost       ansible_connection=local………………
下面不需要动
3 . 配置 ssh 无密钥登录,授权节点

[root@openstack ~]# ssh-keygen
[root@openstack ~]# ssh-copy-id  root@openstack
检查主机连接
[root@openstack ~]# ansible -i all-in-one all -m ping
localhost | SUCCESS => {"ansible_facts": {"discovered_interpreter_python": "/usr/bin/python"}, "changed": false, "ping": "pong"
}
4. 对 /etc/kolla/passwords.yml 文件生成随机密码,或者修改为自定义密码

[root@openstack ~]#  kolla-genpwd[root@openstack ~]#vim /etc/kolla/passwords.yml
keystone_admin_password: 1111111
5. 配置 /etc/kolla/globals.yml 文件

kolla_base_distro: "centos"
kolla_install_type: "source"
openstack_release: "stein"
kolla_internal_vip_address: "172.31.132.247"
network_interface: "eth0"
neutron_external_interface: "eth1"
nova_compute_virt_type: "qemu"
keepalived_virtual_router_id: "7"

五 、 Deployment

[root@openstack ~]# kolla-ansible bootstrap-servers    ##Bootstrap servers依赖
[root@openstack ~]# kolla-ansible prechecks    ##检查配置
[root@openstack ~]# kolla-ansible pull    ##pull镜像
[root@openstack ~]# kolla-ansible deploy  ##部署如果部署出错:
[root@openstack ~]# kolla-ansible  destroy  ./all-in-one     --yes-i-really-really-mean-it

六 、 Using OpenStack

1.安装CLI客户端
pip install python-openstackclient
2.生成环境脚本
kolla-ansible post-deploy . /etc/kolla/admin-openrc.sh

关于新版本部署:
opentstack 版本和 Kola-ansible 版本的对应关系如下:
Train 9.x.x
Stein 8.x.x
Rocky 7.x.x
queens 6.x.x
Pike 5.x.x
Ocata 4.x.x
pip3 install kolla-ansible==9.0.0.0rc1   

基于Kolla-ansible部署openstack容器化部署(all-in-one)相关推荐

  1. 谈谈surging引擎的tcp、http、ws协议和如何容器化部署

    1.前言 分布式已经成为了当前最热门的话题,分布式框架也百花齐放,群雄逐鹿.从中心化服务治理框架,到去中心化分布式服务框架,再到分布式微服务引擎,这都是通过技术不断积累改进而形成的结果.esb,网关, ...

  2. 教程get | K8S部署OpenStack容器云(下)

    如何借助OpenStack Kolla-K8S项目,通过K8S对OpenStack进行容器化部署?并最终部署一套All-In-One类型的OpenStack容器云?让我们继续部署: 部署kolla-k ...

  3. .NET Core+MySql+Nginx 容器化部署

    .NET Core容器化@Docker .NET Core容器化之多容器应用部署@Docker-Compose .NET Core+MySql+Nginx 容器化部署 GitHub-Demo:Dock ...

  4. 浅谈surging服务引擎中的rabbitmq组件和容器化部署

    1.前言 上个星期完成了surging 的0.9.0.1 更新工作,此版本通过nuget下载引擎组件,下载后,无需通过代码build集成,引擎会通过Sidecar模式自动扫描装配异构组件来构建服务引擎 ...

  5. 小米Redis的K8s容器化部署实践

    本文讲述了小米是如何将Redis Cluster部署在K8S上提供高质量的服务的 往期文章回顾:HBase Region Read Replicas功能详解 背景 Why K8S How K8s Wh ...

  6. JEECG容器化部署

    JEECG代码中有一个Dockerfile,基本思路是以CentOS为基础镜像,在其中安装了nginx.jdk.mysql和redis,将编译出来的前端文件拷贝至nginx的指定目录,后端的jar文件 ...

  7. Elastic Stack容器化部署拓展(Https、AD域集成)并收集Cisco设备的日志信息

    前言: 还记得在去年的笔记中提到过EFK(Elasticsearch-Filebeat-Kibana)的部署,但是其中的内容相对简单,也没有提到一些额外的Elastic Stack的特性.链接如下:h ...

  8. Telegraf-Influxdb-Grafana容器化部署拓展(Https、AD域、告警集成)并监控Cisco设备指标

    前言: 还记得在去年的笔记中提到过使用python的pysnmp模块,配合Influxdb,Grafana收集Cisco设备指标.链接如下:https://blog.csdn.net/tushanpe ...

  9. C/C++开发,如何将自己做好的服务进行容器化部署

    目录 一.业务假设 二.创建能装载自己服务或app的容器 三.服务容器化部署 四.部署过程 一.业务假设 现在假设有一个我们编译好的服务程序pyfree_svr,该服务程序可以运行在centos7x系 ...

最新文章

  1. git cherry-pick 把提交到A分支的部分commit 再提交到B分支上
  2. html text报错,AFNetWorking 请求报错 text/html
  3. eclipse搭建javaweb开发环境
  4. 修复Linux系统内核TCP漏洞,Linux 内核中TCP SACK机制远程Dos漏洞处理方法(CVE-2019-11477) | 聂扬帆博客...
  5. 计算机专业毕业设计题目汇总-最新题目 选题 推荐 毕业设计 - 毕设指导 开题报告 论文
  6. adams教程建模仿真实例
  7. php thrift 编译,Thrift 源码编译
  8. 微信公众号二维码怎么生成?好用的生成方法介绍
  9. 云开发:微信小程序开发-组件化开发
  10. 大数据实际案例系列一
  11. 电脑怎么翻译图片中的文字?快速翻译图片文字的方法
  12. 改进我的人人农场收菜外挂
  13. 芯片CP/FT测试的基本概念理解
  14. SiteServer CMS 响应式模板中心上线啦
  15. 3d游戏建模行业真的能一直走下去麽?兴趣爱好能否带来面包
  16. 国内主流比价网站测试分析报告
  17. mysql测试数据库 jmeter_第三篇--Jmeter测试数据库Mysql
  18. 数字图像处理——人脸识别
  19. 怎么让照片人物嘴巴动起来?这个好用方法你必须知道
  20. DC-DC变换器,24v转5v稳压芯片,3A输出电流

热门文章

  1. 操作系统导论-进程概述
  2. 元宵节猜灯谜 关注互联网的你能猜对几个呢?
  3. renesas ravb网卡驱动实现分析(linux uboot xvisor)
  4. 使用Java实现判断年份月份天数
  5. SpringBoot项目打包成war包并部署到服务器上
  6. 重磅!顶级一区期刊官宣:明年起将不再拒稿!
  7. SAP 各种错误解决大全
  8. 【安全知识分享】第二部分灭火器配置及消防设施(附下载)
  9. JNI调用C++代码
  10. MySQL-proxy代理导致PHP PDO::ATTR_EMULATE_PREPARES的预处理出错,MySQL报General error: 1243错误...