openstack kolla多节点容器化环境安装
好久没写随笔了,6月份趁着在公司没有太忙的事儿,把公司的服务器进行了虚拟化,采用的openstack当前的容器化方案kolla。
整体安装完的感受时,小白感觉自己是个大牛!哈哈,开玩笑,由于以前是开发虚拟化软件的,所以对虚拟化相关概念比较熟悉,安装起来比普通的开发人员要顺手一下。下面记录一下安装的流程。
首先,感谢openstack基金会推出的kolla解决方案,基于容器化的解决方案,让我们更加便捷的实现服务器资源的虚拟化,不过我并不能确保节点过多(具体数量我也不确认,不过有安装50节点的介绍,说也没太大问题)的话,是否会有意想不到的问题,只能大家自己去测试。我的安装环境当前是3个节点。
==================================================
其次,特别的感谢九州云的陈沙克老师的文章,地址如下:
http://www.chenshake.com/kolla-installation/
陈老师的文章简明扼要的指出了安装kolla时,需要注意的点以及安装的流程与相关包,大家如果安装单节点测试,可以根据陈老师的文字进行。
==================================================
其实多节点的安装,跟单节点的安装没有太大区别,最终我得到的经验是网络的规划是至关重要的,kolla当前能够支持节点的拓展,要规划好网络。
安装环境介绍:
1)三台物理机均使用三块网卡,一块网卡虚拟机内部网络使用(配置ip),一块网卡做浮动ip(不要配置ip,要记得启用),一块网卡单独给api服务使用。
2)三台物理机,一台做控制节点与网络节点,另外两台做计算与存储。注意:控制节点需要为奇数个,否则容易出现脑裂。
剩下的为软件包的安装,下面摘录自陈老师的文章:
各节点均做一下的配置:
- 关闭Selinux
- 关闭Firewalld
- 关闭NetworkManager
- 设置hostname FQDN,让机器可以通过hostname进行互相访问,统一 /etc/hosts文件
- 同步时间,先确保时间是基本一致,和硬件也统一时间
- 设置docker registry 服务器位置,设置不安全的访问。
- 检查机器是否支持KVM
- 设置docker源,安装docker 1.12.5
- 设置访问私有的registry 源
- 打开Docker 的 shared mount 功能
- 设置网卡,网络,符合部署需求。如果需要bonding,需要把bonding做好。
- 对于要部署Ceph的节点的磁盘,进行打标签
- 检查网络,重点,确保装好后,网络功能正常。
在控制节点,我们需要做的工作,
- 关闭Selinux
- 关闭Firewalld
- 关闭NetworkManager
- 设置hostname FQDN,让机器可以通过hostname进行互相访问,统一 /etc/hosts文件
- 同步时间,先确保时间是基本一致,和硬件也统一时间
- 设置docker源,安装docker 1.12.5
全面6条,都是相同的,不同的是需要在控制节点做如下操作:
- 搭建私有的registry服务器,存放build好的OpenStack Docker镜像
- 安装ansible
- 部署kolla-ansible
- 如果你愿意,可以把docker服务安装在单独的节点,kolla安装节点配置服务地址即可。
安装完毕后有几个问题可能会碰到:
1、如果逻辑卷创建失败,可能是iscsi服务未找到,这时cinder_conf中添加如下配置:
iscsi_ip_prefix=192.168.1
iscsi_ip_address=192.168.1.1
根据实际环境配置。
2、出现了tgtd容器占用空间较大的情况,具体原因我扔在分析。 前期预留足够的空间给docker使用。
问题原因已经找到, 解决方式如下:
1)docker inspect tgtd 查看容器详细信息, 查找参数LOGPATH
2) 进入到logpath目录,du -sh *查看日志大小
3) cat /dev/null > LOGPATH 清理日志,释放空间。
不过这也是暂时的解决方案,这个地方应该是kolla启动docker容器时,--log-driver参数没有置为none,导致日志输出量如此大。我会再找时间研究一下。
3、docker安装后,建议对相关配置进行优化,包括docker最大占用空间值等,防止docker占用太多空间。
目前服务已经运行了19个多月,相对比较稳定。

openstack kolla多节点容器化环境安装的更多相关文章
- Windows Server 2019 container容器化-Docker安装
一.启用服务器Hyper-V,Containers特性 Install-WindowsFeature -Name Hyper-V,Containers -IncludeAllSubFeature -I ...
- zabbix容器化安装及监控docker应用
一.zabbix agent2 介绍 从Zabbix 4.4之后,官方推出了Zabbix Agent 2,意味着zabbix 不在只是物理机监控的代名词,现在你可以使用Go为Zabbix编写插件,来监 ...
- 【转帖】使用容器化和 Docker 实现 DevOps 的基础知识
使用容器化和 Docker 实现 DevOps 的基础知识 https://www.kubernetes.org.cn/6730.html 2020-02-24 15:20 灵雀云 分类:容器 阅读( ...
- 脚本安装Rocky版OpenStack 1控制节点+1计算节点环境部署
视频安装指南请访问: http://39.96.203.138/wordpress/document/%E8%84%9A%E6%9C%AC%E5%AE%89%E8%A3%85rocky%E7%89%8 ...
- kolla 多节点部署 openstack
kolla 介绍 简介 kolla 的使命是为 openstack 云平台提供生产级别的.开箱即用的交付能力.kolla 的基本思想是一切皆容器,将所有服务基于 Docker 运行,并且保证一个容器只 ...
- OpenStack搭建Q版在控制节点上的环境准备(step2)
接下来是只需要在控制节点上准备的环境配置.其中虽然NTP服务需要在所有节点上都安装,但NTP服务在控制节点和其他的节点上的配置是不同的,所以不把它放在step1的公共配置中进行准备.如下: 1.配置N ...
- Openstack 10 云环境安装
概述 资源规划 Undercloud Installation Overcloud Installation Trouble Shooting 附录 本指南介绍了如何使用 Red Hat OpenSt ...
- openstack Mitaka实验环境安装(centos系统)
本博文仅供参考,具体一定详细学习官方安装文档. 一 准备工作 二安装过程 1 安装NTP服务 2 安装openstack包 3 SQL数据库安装 4 安装消息队列 message queue 5 Me ...
- 研发环境容器化实施过程(docker + docker-compose + jenkins)
目录 背景介绍 改造思路 容器构建 基础准备 中间件容器 外部依赖容器 业务应用容器 容器整合 自动构建容器 Maven相关 非Maven项目 总结 背景介绍 目前公司内部系统(代号GMS)研发团队, ...
随机推荐
- c++类的单目和双目运算符的重定义
这个里面需要注意的是对于双目运算符,像是加号,如果是复数加整数是一种情况,而整数加复数又是另一种情况,所以需要重定义两次. 而对于单目运算符,如果是前缀的,直接重定义就可以了,但是如果是后缀的,我们在 ...
- [LOJ] 分块九题 7
区间加法,区间乘法,单点查询. 洛谷线段树2 屡清加法乘法的关系,定义答案为 a*mut+add 对于整块: 新的乘w,mut和add都要乘w 新的加w,add加w //Stay foolish,st ...
- 我的MySql掉队了
本来今天高高兴兴,突然: raise MigrationSchemaMissing("Unable to create the django_migrations table (%s)&qu ...
- svn上传项目
1.桌面右键单击 2.进行项目导入 3.选择项目所在目录 4.
- Linux用户和组的概念
目 录 第1章 用户和组存在的关系 1 1.1 我们现在所使用的操作系统都是多用户操作系统 1 1.2 id命令查看当前登陆的用户信息 1 1.3 用户UID的分类 1 1.4 ...
- HTML5结构
1.显示编排内容区域块(明确使用section等元素创建文档结构,在每个区域块中使用标题元素) 2.隐示编排内容区域块(不明确使用section等元素,而是根据网页需求来将各级的元素创建出来) 3.标 ...
- HTML5新增的非主体元素header元素、footer元素、hgroup元素、adress元素
---恢复内容开始--- header header元素是一种具有引导和导航作用的结构元素,通常用来放置整个页面或页面内的一个内容区块的标题,但是也可以包含其他内容,例如数据表格.搜索表单或相关的lo ...
- PHP调用webService WSDL 接口发送邮件
1.什么是 webService WSDL? webService WSDL 暴露一些接口给第三方调用,在底层会转化成一个HTTP请求,主要是不同语言之间为了通讯的一个协议,比如发送邮件的系统是用J ...
- 68. 使用thymeleaf报异常:Not Found, status=404【从零开始学Spring Boot】
[从零开始学习Spirng Boot-常见异常汇总] 我们按照正常的流程编码好了 controller访问访问方法/hello,对应的是/templates/hello.html文件,但是在页面中还是 ...
- waiting TTFB 时间优化
百度百科解释:获取在接收到响应的首字节前花费的毫秒数. 根据chrome浏览器,具体请求链接的这个时间,对反应慢的页面进行优化.