天天看点

Docker Private Registry搭建(一)

简介

搭建Docker私服仓库,后端采用ceph swift 分布式存储。使用 Potus 做管理平台. 本文详细介绍搭建ceph

环境准备:

1、准备三台机器,可以是虚拟机。

2、修改计算机名:node1、node2、node3(根据需要修改) (vi /etc/sysconfig/network )

3、在三台计算机中的host文件添加配置:

.:node1
    .:node2
    .:node3
           

4、设置免密登录

可以参考 http://chenlb.iteye.com/blog/211809

这里暂时均使用root用户,正式环境应该创建相应的用户,并赋予相应的权限。

做到这里,基础的环境就准备好了,下面开始搭建ceph

我们采用yum 安装的方式

yum源设置

设置yum源,有些镜像在国内下载不了。

删除默认的源,国外的比较慢

yum clean all

rm -rf /etc/yum.repos.d/*.repo

下载阿里云的base源

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

下载阿里云的epel源

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

修改里面的系统版本为7.3.1611(系统版本更新比较快,可以日志情况去官网查询后修改),当前用的centos的版本的的yum源可能已经清空了

sed -i '/aliyuncs/d' /etc/yum.repos.d/CentOS-Base.repo
sed -i '/aliyuncs/d' /etc/yum.repos.d/epel.repo
sed -i 's/$releasever/7.4.1708/g' /etc/yum.repos.d/CentOS-Base.repo
           

添加ceph源

vim /etc/yum.repos.d/ceph.repo

[ceph]
name=ceph
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/x86_64/
gpgcheck=
[ceph-noarch]
name=cephnoarch
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/noarch/
gpgcheck=
[ceph-source]
name=cephsource
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/x86_64/
gpgcheck=
[ceph-radosgw]
name=cephradosgw
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/x86_64/
gpgcheck=
           

进行yum的makecache

yum makecache

将node1作为管理节点,ssh登录到node1.

安装ceph部署工具

yum install ceph-deploy

建部署目录

mkdir my-cluster

cd my-cluster

创建集群

如果在某些地方碰到麻烦,想从头再来,可以用下列命令清除配置:

ceph-deploy purgedata node1 node2 node3

ceph-deploy forgetkeys

用下列命令可以连 Ceph 安装包一起清除:

ceph-deploy purge node1 node2 node3

如果执行了 purge ,你必须重新安装 Ceph 。

1、创建管理节点

ceph-deploy new node1

把 Ceph 配置文件里的默认副本数从 3 改成 2 ,这样只有两个 OSD 也可以达到 active + clean 状态。把下面这行加入 [global] 段:

2、安装ceph节点

ceph-deploy install node1 node2 node3

此过程比较漫长,选择网络稳定时段,否则出了问题要重装。

3、配置初始 monitor(s)、并收集所有密钥

ceph-deploy mon create-initial

完成上述操作后,当前目录里应该会出现这些密钥环:

{cluster-name}.client.admin.keyring

{cluster-name}.bootstrap-osd.keyring

{cluster-name}.bootstrap-mds.keyring

{cluster-name}.bootstrap-rgw.keyring

添加OSD

1、添加两个 OSD 。为了快速地安装,这篇快速入门把目录而非整个硬盘用于 OSD 守护进程。如何为 OSD 及其日志使用独立硬盘或分区,请参考 ceph-deploy osd 。登录到 Ceph 节点、并给 OSD 守护进程创建一个目录。

ssh node2

mkdir /var/local/osd0

chmod +777 /var/local/osd0

exit

ssh node3

mkdir /var/local/osd1

chmod +777 /var/local/osd1

exit

2、准备

ceph-deploy osd prepare node2:/var/local/osd0 node3:/var/local/osd1

3、激活

ceph-deploy osd activate node2:/var/local/osd0 node3:/var/local/osd1

4、用 ceph-deploy 把配置文件和 admin 密钥拷贝到管理节点和 Ceph 节点,这样你每次执行 Ceph 命令行时就无需指定 monitor 地址和 ceph.client.admin.keyring 了

ceph-deploy admin admin-node node1 node2 node3

5、确保你对 ceph.client.admin.keyring 有正确的操作权限

chmod +r /etc/ceph/ceph.client.admin.keyring

6、检查集群的健康状况

ceph health

等 peering 完成后,集群应该达到 active + clean 状态。

如果失败,回到开头,执行purge命令清楚后重新安装即可。

集群扩容

按照添加osd的步骤1-7 操作即可,注意安装前配置与admin节点的免密登录。

参考:

http://docs.ceph.org.cn/start/quick-ceph-deploy/

http://chenlb.iteye.com/blog/211809