文档章节

kolla-ansible部署容器ceph

zrz11
 zrz11
发布于 2018/10/22 17:03
字数 852
阅读 466
收藏 1

kolla是从openstack孵化出的一个项目,kolla项目可以制作镜像包括openstack、ceph等容器镜像,

ansible是自动化部署工具,执行playbook中的任务。

kolla-ansible是容器部署工具,部署openstack和ceph;kolla-ansible部署的容器镜像可以是kolla构建的,也可以是从docker register下载来的(本文部署使用kolla-ansible部署ceph采用从docker register下载镜像的方式部署)。

一、节点规划

主机名 ip 角色
localhost 172.16.134.43 master节点,安装kolla-ansible
node58 172.16.134.58 ceph节点,至少有一块osd使用的磁盘
node59 172.16.134.59 ceph节点,至少有一块osd使用的磁盘
node61     172.16.134.61 ceph节点,至少有一块osd使用的磁盘

二、搭建master节点

1、安装docker

yum install -y yum-utils device-mapper-persistent-data lvm2
yum install docker-ce -y

2、master和ceph节点之间解决互信

ssh-keygen


ssh-copy-id root@172.16.134.58

ssh-copy-id root@172.16.134.59

ssh-copy-id root@172.16.134.61

3、安装kolla-ansible依赖包

yum -y install epel-release
yum install -y python-pip ansible
yum install -y python-devel libffi-devel openssl-devel gcc python-setuptools git

 4、修改pip源:
mkdir -p ~/.pip
tee ~/.pip/pip.conf <<-'EOF'
[global]
trusted-host=mirrors.aliyun.com
index-url=http://mirrors.aliyun.com/pypi/simple/
EOF
 5、升级pip:
pip install -U pip

6、下载kolla-ansible源码并安装

git clone https://github.com/openstack/kolla-ansible.git -b stable/queens

cd kolla-ansilbe

pip install -r requirements.txt -r test-requirements.txt

pip install . -i http://mirrors.aliyun.com/pypi/simple/

 7、复制相关文件
cp -r etc/kolla /etc/kolla/
cp ansible/inventory/* /home

8、生成密码

 kolla-genpwd

9、设置docker

mkdir /etc/systemd/system/docker.service.d
编辑kolla.conf文件
vim /etc/systemd/system/docker.service.d/kolla.conf 
[Service]

MountFlags=shared
编辑daemon.json文件
vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://ebu037tr.mirror.aliyuncs.com"],
"insecure-registries": ["docker-registries"]
}

注意:docker-registries为docker镜像服务器,在部署过程中,kolla-ansible会从docker服务器上拉取所需要的镜像,该docker镜像服务器要有ceph各组件的镜像。

         在ceph节点上也要用docker login {docker-registries},登陆到docker服务器,否则在部署过程中会出现认证错误。

10、重启docker服务

systemctl daemon-reload
systemctl restart docker

11、修改/etc/hosts文件,填入ceph节点

三、ceph节点环境配置(在三个ceph节点上执行同样的操作)

1、禁用节点放火墙,安全策略等

[root@node58 ~]vim ~/init.sh
#!/bin/sh
sed -i 's/SELINUX=.*/SELINUX=Disabled/g' /etc/selinux/config
echo '' > /etc/resolv.conf
echo nameserver 114.114.114.114 >> /etc/resolv.conf
echo search novalocal >> /etc/resolv.conf
echo " net.ipv4.ip_forward = 1 ">> /etc/sysctl.conf&&sysctl -p
yum install vim wget -y

systemctl stop firewalld

systemctl disable firewalld
-----------------------------------------------------------
[root@node58 ~]# sh init.sh

2、节点配置时间同步

[root@node58 ~]# yum install -y chrony

[root@node58 ~]# vi /etc/chrony.conf
server 0.cn.pool.ntp.org iburst
server 1.cn.pool.ntp.org iburst
server 2.cn.pool.ntp.org iburst
server 3.cn.pool.ntp.org iburst

3、给ceph节点的磁盘打标签

[root@node58 ~]# parted /dev/sdb -s -- mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP 1 -1

四、部署ceph容器服务(在master节点执行)

1、修改kolla-ansible的配置文件

[root@node58 ~]# cat /etc/kolla/globals.yml|grep -v '^#'|grep -v '^$'
---
kolla_install_type: "binary"
openstack_release: "queens"
kolla_internal_vip_address: "ip of master"
docker_registry: "{docker-registries}"
docker_namespace: "queens/kolla"
docker_registry_username: "admin"
docker_registry_password: "Harbor12345"
network_interface: "ens33"
enable_ceph: "yes"
enable_haproxy: "no"
enable_keystone: "no"
enable_glance: "no"
enable_neutron: "no"
enable_heat: "no"
enable_nova: "no"
enable_horizon: "no"
ceph_pool_type: "replicated"

注意:/etc/kolla/globals.yml文件会重载/usr/share/kolla-ansible/ansible/group_vars/all.yml文件,不需要安装的服务在all.yml中改成“no”

2、修改ansible的inventory文件

在[storage]下填入ceph节点的主机名,把其余section清空

6、部署ceph节点环境

kolla-ansible bootstrap-servers -i /home/multinode

7、检查和部署

kolla-ansible  prechecks  -i /home/multinode

kolla-ansible deploy -i /home/multinode

8、测试(在ceph节点执行)

docker exec ceph_mon ceph -s

© 著作权归作者所有

zrz11
粉丝 3
博文 25
码字总数 15262
作品 0
丰台
程序员
私信 提问
kolla-ansible解析

项目地址 https://github.com/openstack/kolla-ansible https://git.openstack.org/cgit/openstack/kolla-ansible/ kolla-ansible部署的大致流程 执行命令Kolla-ansible –i multinode deplo......

JennerLuo
2017/11/01
0
0
openstack 之 Kolla部署指南(容器化方式)

现在Openstack社区的安装部署方式已经开始推荐使用kolla进行部署,kolla项目现在包括两个子项目:kolla-ansible和kolla-kubernetes,其中kolla-ansible应用于生产环境案例多些并且使用广泛一...

yuweibing
2017/11/13
0
0
Openstack 之 ubuntu16使用kolla部署实验

现在Openstack社区的安装部署方式已经开始推荐使用kolla进行部署了,记得年初还是推荐使用ansible方式,我的理解,kolla项目也是基于原来ansible的部署方式,原来ansible的部署方式支持barem...

yuweibing
2017/10/27
0
0
kolla 容器化openstack

目前手动部署openstack都很繁琐 so all of people 都在研究怎么能快速 简单的部署openstack 最近也在研究 在官网看到了 kolla的这东东 经过调研 好多人在用 也就义无反顾的 跟随了 开始kolla...

吴景峰
2017/07/12
0
0
Openstack Kolla-Ansible安装部署

Openstack Kolla-Ansible安装部署 部署节点制作 环境准备 CentOS环境安装 安装依赖 安装docker-ce 开启 Docker 的共享挂载功能:所谓共享挂载即同一个目录或设备可以挂载到多个不同的路径并且...

hNicholas
2018/11/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

idea下springboot 项目在static目录下添加文件不生效

idea下springboot 项目在static目录下添加文件不生效 问题描述 是这样子的,我的项目目录结构如下: 我在static目录下,创建了index.html和aaaa.jpg这两个文件。然后,启动服务访问 http://l...

wotrd
昨天
5
0
k8s1.14 一、环境

1. 4台虚拟机 (CentOS Linux release 7.2.1511 (Core) ) 192.168.130.211 master 192.168.130.212 node1 192.168.130.213 node2 192.168.130.214 node3 2. 设置服务器hostname 2.1 设置本机......

ThomasCheng
昨天
4
0
盖茨:如果我现在开创一家公司 将会专注于AI

新浪科技讯,北京时间 6 月 26 日凌晨消息,微软联合创始人比尔·盖茨(Bill Gates)在周一接受采访时表示,如果他今天从哈佛大学辍学并开创一家新公司,那么这家公司将会专注于人工智能(A...

linuxCool
昨天
1
0
聊聊feign的Retryer

序 本文主要研究一下feign的Retryer Retryer feign-core-10.2.3-sources.jar!/feign/Retryer.java public interface Retryer extends Cloneable { /** * if retry is permitted, retur......

go4it
昨天
14
0
HyperLogLog简介

  (1)HyperLogLog简介      在Redis 在 2.8.9 版本才添加了 HyperLogLog,HyperLogLog算法是用于基数统计的算法,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个...

SEOwhywhy
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部