5-1 Harbor入门
harbor 还可以扫描镜像漏洞
架构图
简单高可用方案
双主复制
高可用方案
数据库高可用+存储
10.155.20.120 harbor
10.155.20.121 harbor
10.155.20.50 nginx
5-2 Harbor高可用部署(上)
2台机子上解压安装harbor离线包
tar xvf harbor-offline-installer-v1.6.0.tgz
进入harbor文件夹
cd harbor
编辑harbor.cfg
#不用域名是因为需要双主
hostname = 10.155.20.120
harbor_admin_password = Hangzhou@123
编辑docker-compose.yml
确保volume的所在磁盘 够大
下载docker-compose文件并重命名移动到/usr/local/bin/docker-compose
docker-compose --version 为1.22.0
执行install.sh
安装完毕之后安装nginx
docker pull nginx:1.13.12
宿主机上创建一个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 192.168.10.160:80; } server { listen 80; proxy_pass hub; proxy_timeout 300s; proxy_connect_timeout 5s; } }
5-3 Harbor高可用部署(下)
创建一个启动脚本
restart.sh
#!/bin/bash docker stop harbornginx docker rm habornginx docker run -idt --net=host --name harbornginx -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf nginx:1.13.12
通过docker logs 容器名称 查看是否有错误日志
修改工作机hosts
添加10.155.20.50 为某个域名harbor.mooc.com 然后就可以通过域名访问了
1 登录harbor,删除原有library,创建自己的仓库kubernetes
2 创建一个pusher用户 账号密码为 pusher/Hangzhou@123
3 将pusher添加到kubernetes仓库
测试上传镜像
修改/etc/hosts 添加
10.155.20.50 harbor.mooc.com'
执行
docker tag nginx:1.13.12 hub.mooc.com/kubernetes/nginx:1.13.12
编辑/etc/docker/daemon.json
{
"insecure-registries": ["harbor.mooc.com"]
}
执行
service docker restart
sh restart.sh
docker tag nginx:1.13.12 hub.mooc.com/kubernetes/nginx:1.13.12
#用pusher登录hub.mooc.com
docker login hub.mooc.com
#push 镜像
docker push hub.mooc.com/kubernetes/nginx:1.13.12
在另两台机子上修改/etc/hosts以及/etc/docker/daemon.json pull尝试
docker pull hub.mooc.com/kubernetes/nginx:1.13.12
配置双主复制
登录121 在harbor >系统管理>新建目标
在harbor >项目>kubernetes>复制>新建复制规则
同理登录120 创建同样的规则