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)研发团队, ...
随机推荐
- Apache web服务
1.apache 1> 世界上使用率最高的网站服务器,最高时可达70%:官方网站:apache.org 2> http 超文本协议 HTML超文本标记语言 3> URL 统一资源定位 ...
- 条款15:在资源管理类中提供对原始资源的访问(Provide access to raw resources in resource-managing classes)
NOTE: 1.APIs往往要求访问原始资源(raw resources),所以每一个RAII class应该提供一个“取得其所管理之资源”的办法. 2.对原始资源的访问可能经由显示转换或隐式转换.一 ...
- SV学习之interface
普通的模块使用法:注意我们这里只实现了部分功能....不是完全的读写模块.... module mem_core( input logic wen, input logic ren, ...
- Python装饰器粗解学习
此次学习资料详细来自:http://blog.csdn.net/u013471155 本次是粗学,仍有诸多疑问,暂且记录一二,如有不足和建议,希望可以达者指点. 三个关键点理解: 1.关于函数“变 ...
- STM32——输入捕获实验原理及配置步骤
输入捕获实验原理及配置步骤 一.输入捕获概念 STM32的输入捕获,简单的说就是通过检测 TIMx_CHx (定时器X的通道X)上的 边沿信号,在边沿信号发生跳变(比如上升沿/下降沿)的时候,将当前定 ...
- Haybale Stacking(差分数组 + 求中位数的一些方法 + nth_element)
题意: 给定N个初始值为0的数, 然后给定K个区间修改(区间[l,r] 每个元素加一), 求修改后序列的中位数. 分析: K个离线的区间修改可以使用差分数组(http://www.cnblogs.co ...
- Apollo配置中心的使用
1. 自己搭建Apollo配置中心 碰到如下错误: nested exception is org.hibernate.HibernateException: Access to DialectRes ...
- 【06】Firebug记录Javascript日志
Firebug记录Javascript日志 你可以使用Firebug来生成日志. 这有助于我们调试web页面并发现页面的错误. 在Firefox浏览器中执行以下代码: <!DOCTYPE HTM ...
- Java基础学习总结(90)——Java单元测试技巧
测试是开发的一个非常重要的方面,可以在很大程度上决定一个应用程序的命运.良好的测试可以在早期捕获导致应用程序崩溃的问题,但较差的测试往往总是导致故障和停机. 虽然有三种主要类型的软件测试:单元测试,功 ...
- 大数据学习——hdfs客户端操作
package cn.itcast.hdfs; import org.apache.commons.io.IOUtils; import org.apache.hadoop.conf.Configur ...