k8s部署-19-harbor高可用部署

网友投稿 297 2022-09-12

k8s部署-19-harbor高可用部署

​​harbor架构​​

从官网找到下面这张图,可以大概的看一下,有一个简单的认知。

​​软件下载​​

​​环境​​

节点名字

ip地址

node2

192.168.112.131

node3

192.168.112.132

PS:harbor最好找两台独立的服务器来安装,我这里没有足够的服务器,所以在两个worker节点上进行安装了。

​​上传解压​​

PS:本步骤需要在两个节点上同时执行;

[root@node2 ~]# tar xf harbor-offline-installer-v1.10.10.tgz[root@node2 ~]# cd harbor/[root@node2 harbor]# lscommon.sh harbor.v1.10.10.tar.gz harbor.yml install.sh LICENSE prepare[root@node2 harbor]#

​​配置修改​​

PS:本步骤需要在两个节点上同时执行;

[root@node2 harbor]# vim harbor.yml # hostname需要修改成本机的地址hostname: 192.168.112.131# 密码修改,我在这里就不进行修改了harbor_admin_password:Harbor12345# 修改存储磁盘,默认是data,具体根据你服务器来修改,# 应该放置到最大目录下,我在这里就不修改了data_volume: /data# harbordb的密码,我在这里也不进行修改了password: root123# 把有关 # port for harbor, default is 443 # port: 443 # The path of cert and key files for nginx #certificate: /your/certificate/path #private_key: /your/private/key/path[root@node2 harbor]#

​​安装​​

[root@node2 harbor]# pwd/root/harbor[root@node2 harbor]# ./install.sh

提示如下内容就表示安装成功了。

​​访问​​

使用浏览器分别访问我们两台服务器的harbor界面,地址为:

root;worker_processes 1;error_log /usr/local/nginx/logs/error.log warn;pid /usr/local/nginx/nginx.pid;events { worker_connections 1024;}stream { upstream harbor { server 192.168.112.131:80; # server 192.168.112.132:80; } server { listen 80; proxy_connect_timeout 10s; proxy_timeout 300s; proxy_pass harbor; }}

然后启动nginx:

[root@node1 nginx]# pwd/usr/local/nginx# 检查配置文件是否有问题[root@node1 nginx]# ./sbin/nginx -tnginx: the configuration file /usr/local/nginx//conf/nginx.conf syntax is oknginx: configuration file /usr/local/nginx//conf/nginx.conf test is successful# 启动nginx[root@node1 nginx]# ./sbin/nginx

​​验证​​

通过浏览器访问node1的IP,看下是否可以访问到harbor服务。

harbor.yunweijia.com

最后保存关闭即可。

linux服务器修改(三台服务器都需要修改):

[root@node1 nginx]# vim /etc/hosts# 新增如下内容192.168.112.130 harbor.yunweijia.com[root@node1 nginx]#

最后浏览器访问验证:

登录进去,密码如果你修改了,记得使用你自己的密码,登录之后界面如下:

1、他默认有个library的仓库,我们将其删除:

2、然后新建一个k8s的仓库,如下:

3、创建一个用户:

4、新建一个目标:

5、配置复制

把刚才新建的用户添加进来:

配置复制规则:

前往node3上进行配置,操作和上面基本相同,不同的是配置目标的时候选择node2即可,如下:

所有的步骤进行完毕之后,我们测试一下,使用node3给harbor上传一个image,看下是否两个节点都有了该镜像。

​​配置harbor]# vim /etc/docker/daemon.json{ "insecure-registries": ["harbor.yunweijia.com"]}[root@node2 harbor]#

然后重启docker:

[root@node2 harbor]# pwd/root/harbor[root@node2 harbor]# [root@node2 harbor]# systemctl restart docker[root@node2 harbor]# docker-compose startStarting log ... doneStarting registry ... doneStarting registryctl ... doneStarting postgresql ... doneStarting portal ... doneStarting redis ... doneStarting core ... doneStarting jobservice ... doneStarting proxy ... done[root@node2 harbor]#

​​验证高可用​​

在node3上操作:

# 登录harbor[root@node3 harbor]# docker login harbor.yunweijia.comUsername: yunweijiaPassword: WARNING! Your password will be stored unencrypted in /root/.docker/config.json.Configure a credential helper to remove this warning. SeeSucceeded[root@node3 harbor]#

打包docker镜像,并上传:

[root@node3 harbor]# docker tag goharbor/harbor-portal:v1.10.10 harbor.yunweijia.com/k8s/harbor-portal:V1.0[root@node3 harbor]# docker push harbor.yunweijia.com/k8s/harbor-portal:V1.0The push refers to repository [harbor.yunweijia.com/k8s/harbor-portal]173c8c58ac9c: Pushed 0a48234d6364: Pushed cdaa2acc770f: Pushed 98ac3dea2937: Pushed 259a4c53fb16: Pushed babe85b686ad: Pushed 454bac8f976d: Pushed V1.0: digest: sha256:8265570fb57999f6f2ea8bf31a4e77fbd613560e09ccd3eb69898a43636684cc size: 1784[root@node3 harbor]#

分别以下面三个地址登录查看是否有对应的镜像:

# harbor代理地址node2的harbor地址node3的harbor地址http://192.168.112.132

至此,本文结束。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:k8s系列-16-worker节点安装
下一篇:高诗岩关键6分助山东进4强,巩晓彬称战广东没有包袱!
相关文章

 发表评论

暂时没有评论,来抢沙发吧~