Kolla单节点部署手册(centos7)
- 一 系统介绍
- a 概述
- b 拓扑图
- 二 所涉及技术
- 三 部署
- a 环境说明
- i 硬件环境
- ii 软件环境
- b 安装
- i 安装epel源和Pip并升级Pip
- ii 安装依赖
- iii 安装docker
- iv 配置docker
- 配置默认的dockerservice文件
- 新建一个docker后台守护进程配置文档增加配置
- v 安装最新版docker-py
- vi 安装ansible此项目中用ansible196可以用yum安装也能用pip安装
- vii 克隆kolla仓库stable分支
- viii 安装kolla及其依赖
- ix 安装 tox
- x 安装 openstack 和 neutron 的命令行客户端 方便后面部署完使用 openstack
- xi 安装 kolla 的 python 依赖包
- xii 生成配置 kolla-buildconf
- xiii 拷贝配置文件到etc 目录下
- xiv 构建容器镜像
- c 部署
- i 修改配置
- ii 检查
- iii 生成密码
- iv 安装部署
- 修改 em1 配置
- 增加 br-ex 配置 新建 ifcfg-br-ex 文件
- 配置完之后重新 deploy
- a 环境说明
- 四 使用 Openstack
- a 生成环境变量脚本
- b 环境变量生效
- c 查看环境变量中的 OS 账户信息进行 dashboard 登录
- d 用etckollaglobalconf 的配置的 ip 访问 dashboard
一、 系统介绍
a) 概述:
Kolla为openstack的部署提供了有效、快捷、方便、易于维护、方便版本更新与回退的方案。
Kolla的最终目标是为OpenStack的每一个服务都创建一个对应的Docker Image,通过Docker Image将升级的粒度减小到Service级别,从而使升级时,对OpenStack影响能达到最小,并且一旦升级失败,也很容易回滚。升级只需要三步:Pull新版本的容器镜像,停止老版本的容器服务,然后启动新版本容器。回滚也不需要重新安装包了,直接启动老版本容器服务就行,非常方便。
b) 拓扑图:
二、 所涉及技术
- Docker
- Ansible
- Python
- docker-py
- Jinja2
三、 部署
a) 环境说明
i. 硬件环境
- 服务器:Dell Edge R720
- 系统:Centos7.2.1511
- 内存:64G
- 硬盘:4.3T
- CPU:Intel(R) Xeon(R) CPU E5-2620 0 @ 2.00GHz*2
- 网卡:千兆以太网卡(此项目用单网卡em1)
ii. 软件环境
组件 | 版本号 |
---|---|
Ansible | 1.9.6 |
Docker | 1.12.2 |
Docker Python | 1.10.4 |
Python Jinja2 | 2.8.0 |
Pip | 8.1.2 |
Kola branch | stable |
b) 安装
i. 安装epel源和Pip并升级Pip
# yum install -y epel-release
# yum -y update
# yum install -y python-pip
# pip install –U pip
ii. 安装依赖
# yum install -y python-devel libffi-devel gcc openssl-devel git
iii. 安装docker
# curl -sSL https://get.docker.io | bash
注:这条命令安装的是最新版的docker
iv. 配置docker
在docker的守护进程启动配置中设置MountFlags
,如果没有正确设置MountFlags
选项,那么kolla-ansible
将无法部署neutron-dhcp-agent
容器并抛出APIError / HTTPError
。这儿有两种方式可以设置MountFlags
选项。
1. 配置默认的docker.service文件
先找到位置,下面代码中比较大的字体既默认位置
#systemctl status docker.service
● docker.service - Docker Application Container EngineLoaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)Active: inactive (dead)
修改MountFlags
选项
# vim /usr/lib/systemd/system/docker.service
在service
节加上
MountFlags=shared
保存退出,重新加载配置,重启docker服务
# systemctl daemon-reload
# systemctl restart docker
2. 新建一个docker后台守护进程配置文档增加配置
# mkdir -p /etc/systemd/system/docker.service.d# tee /etc/systemd/system/docker.service.d/kolla.conf <<-'EOF'
[Service]
MountFlags=shared
EOF
加载配置,重启服务
# systemctl daemon-reload
# systemctl restart docker
v. 安装最新版docker-py
# yum install -y python-docker-py
# pip install -U docker-py
vi. 安装ansible,此项目中用ansible1.9.6可以用yum安装也能用pip安装
# yum install -y ansible1.9
# pip install ansible==1.9.6
vii. 克隆kolla仓库stable分支
# git clone https://git.openstack.org/openstack/kolla -b stable/mitaka
viii. 安装kolla及其依赖
# pip install kolla/
ix. 安装 tox
Tox 是个标准的 virtualenv (python 虚拟沙盒管理器)和命令行测试
工具,它的作用有以下几点:
- 检查你的软件包能否在不同的 Python 版本或解释器下正常安
装
- 在不同的环境中运行运行你的测试代码
- 作为持续集成服务器的前端,大大减少测试工作所需时间
这儿我们用 tox 工具生成 kolla-build 配置
# pip install -U tox
x. 安装 openstack 和 neutron 的命令行客户端, 方便后面部署完使用 openstack
# pip install -U python-openstackclient python-neutronclient
xi. 安装 kolla 的 python 依赖包
# cd kolla/
# pip install -r requirements.txt -r test-requirements.txt
xii. 生成配置 kolla-build.conf
# tox -egenconfig
xiii. 拷贝配置文件到/etc 目录下
# cp -rv etc/kolla /etc/
xiv. 构建容器镜像
# kolla-build --base centos --type source
注: 此处需要时间比较长, 有一部分镜像可能构建不成功, 对构建
不成功的镜像可单独构建, 或从其他地方把镜像 pull 或者拷贝过来
用。
c) 部署
i. 修改配置
# grep -v ^$ /etc/kolla/globals.yml |grep -v ^#
---
kolla_install_type: "source"
kolla_internal_vip_address: "192.168.1.12"
network_interface: "em1"
neutron_external_interface: "em1
需要修改的部分即以上, ip 修改成物理机网段未使用的 ip, em1 为
网卡名。
ii. 检查
# kolla-ansible prechecks
这儿出错一般都是配置错误, 修改 ip 跟网卡即可。
iii. 生成密码
# kolla-genpwd
iv. 安装部署
# kolla-ansible deploy
Precheck 成功这儿失败的话一般都是镜像没有 build 成功, 注意查
看报错信息, 镜像没 build 成功的处理方式一般有两种,单独
build 未成功的镜像, 从已 build 成功的地方把镜像打包拷贝过
来, 或者 pull 过来。
在部署到 neutron-ovs 容器的时候会断网, 因为这儿用单网卡
模式, 需要配置 ovs:
1. 修改 em1 配置
# cat /etc/sysconfig/network-scripts/ifcfg-em1
TYPE=OVSPort
DEVICE=em1
ONBOOT=yes
DEVICETYPE=ovs
OVS_BRIDGE=br-ex
2. 增加 br-ex 配置, 新建 ifcfg-br-ex 文件
# vim /etc/sysconfig/network-scripts/ifcfg-br-ex
DEVICE=br-ex
DEVICETYPE=ovs
TYPE=OVSBridge
BOOTPROTO=static
IPADDR=192.168.1.1
NETMASK=255.255.255.0
GATEWAY=192.168.1.254
DNS1=114.114.114.114
3. 配置完之后重新 deploy
# kolla-ansible deploy
四、 使用 Openstack
a) 生成环境变量脚本
成功部署 OpenStack 后,运行以下命令可以在 deploy 节点上创
建一个 openrc 文件/etc/kolla/admin-openrc.sh
# kolla-ansible post-deploy
b) 环境变量生效
# source /etc/kolla/admin-openrc.sh
c) 查看环境变量中的 OS 账户信息进行 dashboard 登录
# export OS_USERNAME=admin
# export OS_PASSWORD=RdNBNY0E15YsMhmxfUX0pqhkm8EvqLY5sdNSdZzv
d) 用/etc/kolla/global.conf 的配置的 ip 访问 dashboard
部署成功!
Kolla单节点部署手册(centos7)相关推荐
- 小试牛刀之Kolla单节点部署
写在前面的话,笔者目的是为了尝试用Kolla来方便快捷的部署OpenStack,为以后多节点部署打下基础. Kola简介: kolla项目起源于TripleO项目,聚焦于使用Docker容器部署Ope ...
- openstack 系列: 基于CentOS7系统使用packstack工具单节点部署openstacktrain---Part-I安装简易命令
1说明 本人非linux专业人士,更不是云计算专家 部署过程是从各大博客自己百度知道 各种搜索排查,硬是搭起了train环境 过程纠结,先是在win 10 vmware 上安装centos7 再基于c ...
- Ubuntu下用devstack单节点部署Openstack
一.实验环境 本实验是在Vmware Workstation下创建的单台Ubuntu服务器版系统中,利用devstack部署的Openstack Pike版. 宿主机:win10 1803 8G内存 ...
- k8s二进制单节点部署
k8s二进制单节点部署 常见的k8s部署方式 Kubernetes二进制部署(单节点) 环境准备 部署etcd集群(这里就不在单独的服务器上部署,直接部署在各节点上,节省资源) 下载证书制作工具 利用 ...
- 啃K8s之快速入门,以及哭吧S(k8s)单节点部署
啃K8s之快速入门,以及哭吧S(k8s)单节点部署 一:Kubernets概述 1.1:Kubernets是什么? 1.2:Kubernets特性 1.3:Kubernets群集架构与组件 1.3.1 ...
- Elasticsearch在Linux中的单节点部署和集群部署
目录 一.Elasticsearch简介 二.Linux单节点部署 1.软件下载解压 2.创建用户 3.修改配置文件 4.切换到刚刚创建的用户启动软件 5.测试 三.Linux集群配置 1.拷贝文件 ...
- skywalking单节点部署
skywalking单节点部署 skywalking服务部署 下载skywalking服务文件 下载地址:http://skywalking.apache.org/downloads/ 我使用的是Bi ...
- Graylog 日志服务器单节点部署
资料 https://docs.graylog.org/docs/ 简介 Graylog项目由Lennart Koopmann在2009年左右启动.当时,最着名的日志管理软件vendor发布了他们产品 ...
- ElasticSearch学习(四)——Linux 单节点部署
文章名称 地址 ElasticSearch学习(一)--概述 前往 ElasticSearch学习(二)--索引.文档简单操作 前往 ElasticSearch学习(三)--Windows 集群部署 ...
最新文章
- 《代码大全2》读后感czz
- 亚马逊手机端测评软件/PC端测评软件各有什么优缺点?
- 推动Windows的限制:进程和线程
- 华为机试HJ30:字符串合并处理
- 如何制作一款HTML5 RPG游戏引擎——第二篇,烟雨+飞雪效果
- Springboot搭建SSM+JSP的web项目
- python实现mat格式数据解析处理,并转化为json格式数据
- exe模拟器android版,安卓exe模拟器
- ros pppoe服务器性能,ROS软路由中最详细的PPPOE服务器设置教程
- 行测--资料分析--fb--高照老师
- 肿瘤异质性:精准医学需要解决的难题
- pyhton BOF图像检索
- 物联网(IoT)行业的决策管理应用
- 计算机学院姚茜,2019年东南大学计算机科学与工程学院硕士研究生拟录取名单公示...
- 95后程序员月薪2万带着电脑送外卖 不想35岁就被社会淘汰 你呢
- logback入库配置
- 大模型时代,视觉推理任务竟然只用语言数据也能学习
- Linux人机界面用什么软件,浙江Linux人机界面品牌,人机界面界面设计品牌
- 神技—终端显示Linux系统信息
- 手把手教你搭建实时大数据引擎FLINK