zoukankan      html  css  js  c++  java
  • Docker Harbor 高可用 1.7.5版本(七)

    环境说明:

    node1    10.10.5.135    仓库 1
    node2    10.10.5.136    仓库 2
    node3    10.10.5.137    客户端
    
    实验内容: Harbor 可以在两台主机之间相互同步仓库,客户端在任意主机上传镜像可以同步到所有Harbor仓库。
    

    Harbor 安装:

    两台机器都要安装好harbor
    
    # 1 ) 安装docker :
    yum install docker-ce -y
    systemctl restart docker
    systemctl enable docker
    
    # 2 ) 安装 docker-compose(1.7.1+):
    yum install epel-release -y 
    yum install docker-compose -y
    
    # 3 ) 安装Harbor-1.7.5:
    tar -zxvf harbor-offline-installer-v1.7.5.tgz &&  cd harbor
    
    vim harbor.cfg 
    hostname = 10.10.5.135             # 写对应的主机名 
    harbor_admin_password = 123456     # 默认密码:Harbor12345
    
    ./install.sh 
    
    安装过程省略........
    
    # 4 ) 登录页面查看:
    http://10.10.5.135  |  admin  |  123456
    
    # 5 )  docker log 会提示不能链接,没有SSL证书的情况下,需要把所有的harbor服务器地址都写进配置文件:
    vim /etc/systemd/system/multi-user.target.wants/docker.service 
    ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 10.10.5.136 --insecure-registry 10.10.5.135
    
    systemctl daemon-reload
    systemctl restart docker 
    
    

    Harbor 复制:

    1 )node1 (10.10.5.135) 上配置Harbor 仓库管理 和 复制管理:
    # 仓库管理:
    仓库管理 -> 新建目标 -> 目标名: baseimages -> 目标URL: http://10.10.5.136 -> 用户名:admin -> 密码:123456 -> 不选"验证远程证书" -> 测试连接 -> 确定
        
    # 复制管理:
    复制管库-> 新建规则 -> 名称:baseimages -> 源项目: baseimages -> 源镜像过滤器 -> 目标(下拉选择创建好的) -> 触发模式 即刻(可选:手动|即刻|定时) -> 保存
    
    2 )node2 (10.10.5.136) 上配置Harbor 仓库管理 和 复制管理:
    # 仓库管理:
    仓库管理 -> 新建目标 -> 目标名: baseimages -> 目标URL: http://10.10.5.135 -> 用户名:admin -> 密码:123456 -> 不选"验证远程证书" -> 测试连接 -> 确定
        
    # 复制管理:
    复制管库-> 新建规则 -> 名称:aseimages -> 源项目: baseimages -> 源镜像过滤器 -> 目标(下拉选择创建好的) -> 触发模式 即刻(可选:手动|即刻|定时) ->保存
    
    
    3 ) 测试同步:
    这个时候去看日志里面 就会产生docker push 和 docker pull 的日志了. 下面有图
    
    4 ) 测试客户端上传镜像到任意主机能同步到其他主机: 
        4.1 ) 登陆10.10.5.135,并上传镜像:
        docker login 10.10.5.135   |  admin  | 123456
        docker tag tomcat-app1:v1 10.10.5.135/baseimages/tomcat-app1:v1
        docker push 10.10.5.135/baseimages/tomcat-app1:v1
     
        4.2 )登陆10.10.5.136,并上传镜像:
        docker login 10.10.5.136  | admin    | 123456 
        docker tag tomcat-app2:v1 10.10.5.136/baseimages/tomcat-app2:v1
        docker push 10.10.5.136/baseimages/tomcat-app2:v2
    
        4.3 ) 登录任意Harbor 并上传镜像:
        docker login 10.10.5.135  | admin    | 123456 
        docker tag tomcat-app2:v1 10.10.5.135/baseimages/tomcat-app2:v1
        docker push 10.10.5.135/baseimages/tomcat-app2:v2
    
    
    *** 注意:
        1 harbor 采用http协议传输, 按项目仓库来同步, 规则里源镜像过滤器能过滤(repository|tag|label).
        2 创建规则的时候一定注意写的是同步到的目的主机URL和账号密码.
        3 同步一定要看日志, 有时候发生了无法同步的问题,看看两边同步用的账号是否有一遍无法连通.
    

    1 仓库管理设置图

    image

    2 复制管理设置图:

    image

    3 同步日志:

    image

    4 验证结果:

    image

  • 相关阅读:
    关于JVM的一些想法
    hashMap理解以及jdk1.7、jdk1.8其中区别
    各数据库如何实现自增
    dubbo遇坑记录
    mysql建表语句问题
    @Configuration
    生成一个唯一的ID
    门面模式
    关于getClass().getClassLoader()
    元素链
  • 原文地址:https://www.cnblogs.com/zhenxing06/p/13441968.html
Copyright © 2011-2022 走看看