Kolla单节点部署手册(centos7)
来源:互联网 发布:windows update失败 pe 编辑:程序博客网 时间:2024/06/03 13:55
- 一 系统介绍
- 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. 软件环境
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 Engine Loaded: 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=sharedEOF
加载配置,重启服务
# 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-em1TYPE=OVSPortDEVICE=em1ONBOOT=yesDEVICETYPE=ovsOVS_BRIDGE=br-ex
2. 增加 br-ex 配置, 新建 ifcfg-br-ex 文件
# vim /etc/sysconfig/network-scripts/ifcfg-br-exDEVICE=br-exDEVICETYPE=ovsTYPE=OVSBridgeBOOTPROTO=staticIPADDR=192.168.1.1NETMASK=255.255.255.0GATEWAY=192.168.1.254DNS1=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单节点部署OpenStack Ocata
- Kolla安装Ocata 单节点
- 基于kolla部署多节点OpenStack(Ocata版)
- 使用Kolla镜像Openstack多节点快速搭建部署
- 基于kolla部署多节点OpenStack(Ocata版)-续
- centos7 单节点部署k8s以及kubernetes-dashboard安装
- Ubuntu 12.04 OpenStack Swift单节点部署手册
- openfire单节点部署
- TiDB 单节点部署
- Centos7 单节点安装Kubernetes
- Centos7安装-单节点Torque
- kolla快速集成openstack-ocata和opencontrail-4.0.1.0单节点
- 试一试 kolla部署OpenStack Ocata
- elastic单节点安装部署
- 单节点部署kafaka+zookeeper
- Hadoop单节点部署步骤
- kafka集群/单节点部署
- usb驱动的基本结构和函数简介
- 配置安装ionic环境以及遇到的问题
- [Linux]RPM软件包管理
- USB gadget设备驱动解析
- logcat命令详解--长期更新
- Kolla单节点部署手册(centos7)
- Java读取Excel文件的方法
- CSS 6.2 定位-浮动
- 二叉搜索树转化双向链表
- 洛谷 P1078 文化之旅
- Linux软件安装过程
- C# 解决窗体假死的状态 非常有用!且非常重要!
- 移动WEB布局使用less语法之header布局
- godaddy远程连接虚拟主机 Cpanel激活ssh生成密钥 使用xshell 远程虚拟主机