Harbor高可用部署配置
环境如下
主机名 | IP | 角色 |
---|---|---|
master | 192.168.1.11 | master |
slave | 192.168.1.12 | slave |
一 基础配置(两台都执行)
systemctl stop firewalld && systemctl disable firewalld
setenforce 0
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
有一些版本要求如下
安装python我就不说了,一般的centos7都自带python,没有的运行如下命令
yum -y install python
1)安装docker并启动
yum install -y docker-ce-18.09.6-3.el7.x86_64 docker-ce-cli-18.09.6-3.el7.x86_64
systemctl start docker && systemctl enable docker
2)安装docker-Compse
wget "https://github.com/docker/compose/releases/download/1.24.0/docker-compose-$(uname -s)-$(uname -m)" -O /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
3)下载Harbor需要的包
https://github.com/goharbor/harbor/releases?after=v1.8.2
往下划,找到,如下版本v1.7.5,别的版本也可以,安装方法一样
拖到两台主机上,并解压
yum -y install lrzsz
tar -zxvf harbor-offline-installer-v1.7.5.tgz
解压完是一个目录,如下
再次重申,以上所有操作在两台主机上都要进行
二 安装并配置Harbor
以下操作,还是在两台主机进行,除非我特别强调不一样的地方
1)数据路径更改
默认都是放在/data,我们创建一个/app/harbor/data ,软链接 /data ,生产环境中/app 应该挂载存储,我们这里模拟就可以
这里实现效果就是,在/data下的数据,实际是存放在/app/harbor/data
mkdir -p /app/harbor/data
ln -s /app/harbor/data/ /data
2)Harbor安装
cd /root/harbor/
vim harbor.cfg
这里master和slave不一样,只用更改hostname项
hostname: 用户访问的url,可以是IP
master主机,写自己IP,当然写域名也是可以的,一般仓库都是内网环境,IP就行
slave主机:也是自己IP
两个都运行如下命令
cd /root/harbor/
./install.sh
等待安装即可
load 镜像。。自动的,等待即可
安装完成
3)Habor访问和主从配置
区分大小写,密码后面进去了可以改
默认用户: admin
密码: Harbor12345
master 操作,推送镜像
首先访问:http://192.168.1.11,并登陆配置主从,(主),推送
这里链接1.12用户名,密码也是那个默认的admim那个
点击测试链接,然后会提示成功,然后,点击确定
上传一个镜像,到master,然后查看是否同步到slave中
打标签,然后推送,基础操作我就不说了,不会的话,去网上搜教程
登陆master主机
vim /etc/docker/daemon.json
{
"insecure-registries": ["192.168.1.11","192.168.1.12"]
}
systemctl daemon-reload
systemctl restart docker
然后登陆,如下,默认用户名和密码还是那个
这个镜像,安装过Harbor就有,打标签就可以了,push了
docker tag goharbor/chartmuseum-photon:v0.8.1-v1.7.5 192.168.1.11/library/test1:v1
docker push 192.168.1.11/library/test1
Slave操作,查看复制情况
http://192.168.1.12
登陆。
已经同步过来了
4)注意事项
注意,如果push镜像到slave上,master不会同步