这里三个节点信息:
node-1:10.155.20.50
node-2:10.155.20.120
node-3:10.155.20.121
一、Harbor下载
1、下载
harbor1.6的网盘地址:
链接:https://pan.baidu.com/s/16pHuVqr0HZGcqvVoVg4zqA?pwd=drux
提取码:drux
2、demo
二、安装配置
1、上传安装包解压
上传到node-2和node-3
tar -zxvf harbor-offline-installer-v1.6.0.tgz
2、修改配置
cd /data/soft/harbor
vi harbor.cfg
将hostname改为ip
node-2:
node-3:
安装docker-compose
docker-compose下载地址:
链接:https://pan.baidu.com/s/1alueS2J-LYBG-bUdKd32Gw?pwd=yr8f
提取码:yr8f
执行如下命令
mv docker-compose-Linux-x86_64-1.22.0 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
验证:
docker-compose --version
如果没安装docker的话要安装docker
yum -y install docker
安装完启动docker服务
service docker restart
然后执行安装操作
./install.sh
如下就说明安装完成了:
注意,这里安装完成的ip不对,后贴上去的,应该是
node-2:10.155.20.120
node-3:10.155.20.121
登录验证:
三、安装nginx
在node-1上操作
1、下载Nginx镜像
如果没安装docker安装一下
yum -y install docker
cd /root
mkdir nginx
cd nginx
docker pull nginx:1.13.12
2、进行配置nginx
vi nginx.conf
内容如下:
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
stream {
upstream hub {
server 10.155.20.121:80;
}
server {
listen 80;
proxy_pass hub;
proxy_timeout 300s;
proxy_connect_timeout 5s;
}
}
3、写个脚本启动一下
vi restart.sh
内容如下:
#!/bin/bash
docker stop harbornginx
docker run -idt --net=host --name harbornginx -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf nginx:1.13.12
进行启动
sh restart.sh
进行访问
http://10.155.20.50:harbor/sign-in/
4、配置域名访问
在你的本机的host文件里配置!!
10.155.20.50 hub.mooc.com
进行登录
admin
Harbor@12345
新建项目
5、push镜像
然后push一个镜像,到node-1上。
docker images| grep nginx
dockertag nginx:1.13.12 hub.mooc.com/kubernetes/nginx:1.13.12
编辑一下host文件(node-1)
vi /etc/hosts
内容如下:
10.155.20.50 hub.mooc.com
然后进行push
docker push hub.mooc.com/kubernetes/nginx:1.13.12
这里失败了,这里443是https的,我们是http的,这里进行修改一下配置。
vi /etc/docker/daemon.json
内容如下:
{
"insecure-registries": ["hub.mooc.com"]
}
重启docker的服务
service docker restart
注意,这里重启完,ngInx的容器停掉了,重启一下。
sh restart.sh
重新进行push一下
docker push hub.mooc.com/kubernetes/nginx:1.13.12
这里又报个错,拒绝连接,因为我们还没登录。
下面,我们来创建一个用户。
然后在项目里面,添加这个用户。
然后使用这个用户进行push
docker login hub.mooc.com
输入用户名和密码:
pusher/pusher
然后再进行push
docker push hub.mooc.com/kubernetes/nginx:1.13.12
这里就push成功了。
6、pull镜像
下面我们来进行pull一个镜像,我们到node-2或者node-3上进行pull操作。
注意,这里也要配置host,内容如下:
10.155.20.50 hub.mooc.com
docker pull hub.mooc.com/kubernetes/nginx:1.13.12
这里遇到同样的问题,也要配置下docker的配置文件。
vi /etc/docker/daemon.json
内容如下:
{
"insecure-registries": ["hub.mooc.com"]
}
重启docker的服务
service docker restart
注意,这里有点慢,这个是个worker节点,harbor在重启,过一会再pull试试。
docker pull hub.mooc.com/kubernetes/nginx:1.13.12
到此,harbor可以正常运行,下面来配置下双主复制。
四、配置双主复制
现在在121上有项目,但120上是空的。
10.155.20.121/harbor/projects
10.155.20.120/harbor/projects
1、在121上新建规则
新建规则
新建目标
把刚刚的目标添加进去。
现在到120上看一下,就有项目了。
同样在120上也创建个目标。
到项目里,把刚建好的目标添加进去: