基于上一篇部署完成了企业级仓库harbor的部署,今天我们来聊聊什么是harbor的高可用

Harbor 支持基于策略的 Docker 镜像复制功能,这类似于 MySQL 的主从同步,
其可以实现不同的数据中心、不同的运行环境之间同步镜像,并提供友好的管理
界面,大大简化了实际运维中的镜像管理工作,已经有用很多互联网公司使用
harbor 搭建内网 docker 仓库的案例,并且还有实现了双向复制的案列,本文将
实现单向复制的部署:


 1 1.准备机器
2 #我这边直接复用上一篇的10.0.0.110,再开一个虚机为10.0.0.111
3 10.0.0.110 harbor1
4 10.0.0.111 harbor2
5 2.更改主机名
6 #为了清晰看见,我这里做了主机名修改
7 root@ubuntu1804:~# hostnamectl set-hostname harbor1
8 root@ubuntu1804:~# hostnamectl set-hostname harbor2
9 root@harbor2:~# apt install lrzsz
10 3.安装docker
11 root@harbor2:~# bash docker-install.sh
12 4.解压缩和安装插件
13 root@harbor2:/usr/local/src# tar -xvf harbor-offline-installer-v1.7.6.tgz
14 #安装插件我这里就不多说了,在我的harbor安装有详细步骤说明
15 5.安装成功
16 [Step 4]: starting Harbor ...
17 Creating network "harbor_harbor" with the default driver
18 Creating harbor-log ... done
19 Creating harbor-adminserver ... done
20 Creating registryctl ... done
21 Creating harbor-db ... done
22 Creating registry ... done
23 Creating redis ... done
24 Creating harbor-core ... done
25 Creating harbor-portal ... done
26 Creating harbor-jobservice ... done
27 Creating nginx ... done
28
29 ----Harbor has been installed and started successfully.----

6.验证从harbor登录

7.创建一个linux项目

#和主harbor的项目名称保持一致

8.测试登录harbor2
root@harbor2:/usr/local/src/harbor# docker login 10.0.0.111
Username: admin
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded
root@harbor2:/usr/local/src/harbor# docker login 10.0.0.110
Username: admin
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store Login Succeeded

9.点击复制管理,设置harbor的主同步策略,在harbor1要同步harbor2。在harbor2要同步harbor1

10.主harbor查看镜像同步状态

11.查看镜像是否以及被同步

12.测试可以上传和下载
#本次测试我重新开了一台机器 root@ubuntu1804:~# docker pull 10.0.0.110/linux/nginx:latest
latest: Pulling from linux/nginx
45b42c59be33: Pull complete
8acc495f1d91: Pull complete
ec3bd7de90d7: Pull complete
19e2441aeeab: Pull complete
f5a38c5f8d4e: Pull complete
83500d851118: Pull complete
Digest: sha256:b08ecc9f7997452ef24358f3e43b9c66888fadb31f3e5de22fec922975caa75a
Status: Downloaded newer image for 10.0.0.110/linux/nginx:latest
10.0.0.110/linux/nginx:latest
13.现在我在客户机上传一个镜像上传到我的10.0.0.110的harbor上,查看是否会被备份在10.0.0.111的机器

root@ubuntu1804:~# docker tag mysql:latest 10.0.0.110/linux/mysql:latest
root@ubuntu1804:~# docker push 10.0.0.110/linux/mysql:latest
The push refers to repository [10.0.0.110/linux/mysql]
c080af299e3f: Pushed
ab82e085fd82: Pushed
d60ed0726e37: Pushed
9577a2d5d759: Pushed
d35a1217c926: Pushed
98d98806c8ac: Pushed
0394a41efa73: Pushed
c484a3b6d841: Pushed
6d23902c2a54: Pushed
74c86dffd46f: Pushed
ef4a33cee7a0: Pushed
cb42413394c4: Pushed
latest: digest: sha256:43bf7db32d11e75d8463a8bc077f09af5fb5b84b182b1d74124ddca633093bfa size: 2828

14.查看mysql镜像是否被备份

结语:本次harbor的高可用到这里全部OK!!!

docker仓库之harbor高可用 (三)的更多相关文章

  1. Harbor高可用理论及实践(汇聚篇)

    目录 一.理论概述 什么是harbor harbor要解决的问题 有了docker自带的registry为什么还要用harbor harbor的架构组件 Harbor工作原理 二.部署harbor及其 ...

  2. harbor高可用部署

    文章转载自:https://blog.csdn.net/networken/article/details/119704025 harbor高可用简介 harbor目前有两种主流的高可用方案: 多ha ...

  3. Docker Harbor 高可用 1.7.5版本(七)

    环境说明: node1 10.10.5.135 仓库 1 node2 10.10.5.136 仓库 2 node3 10.10.5.137 客户端 实验内容: Harbor 可以在两台主机之间相互同步 ...

  4. harbor高可用集群配置

    目录 说明 双主复制 主从同步 双主复制说明 多harbor实例共享后端存储 方案说明 环境说明 配置说明 安装redis和mysql 导入registry数据库 配置harbor 挂载nfs目录 修 ...

  5. Harbor高可用

    项目需求: 实现Harbor的HTTPS高可用,由于Harbor 服务器配置不高,直接做HTTPS对上传下载镜像时,若docker客户端多时,会非常慢,为了提高harbor的效率,采用以下方式来解决. ...

  6. harbor高可用集群搭建

    高可用harbor集群搭建 一.安装部署 1.节点角色 角色 数量 名称 备注 harbor主节点 2 harbor-1 harbor-2 双主模式 haproxy 2 HA-1 HA-2 需要通过k ...

  7. 【DB宝19】在Docker中使用MySQL高可用之MHA

    目录 一.MHA简介和架构 1.1 MHA简介 1.2 MHA工具包的组成 1.3 MHA架构 二.准备MHA环境 2.1 下载MHA镜像 2.2 编辑yml文件,创建MHA相关容器 2.3 安装do ...

  8. Redis主从复制、多实例、高可用(三)--技术流ken

    Redis主从复制 在开始实现redis的高可用之前,首先来学习一下如何实现redis的主从复制,毕竟高可用也会依赖主从复制的技术. Redis的主从复制,可以实现一个主节点master可以有多个从节 ...

  9. 在Docker环境下部署高可用的Eureka注册中心

    Eureka Server的同步遵循着一个非常简单的原则,只要有一条边将节点连接,就可以进行信息传播和同步 由于Eureka Server进行相互注册的方式来实现高可用的部署,所以我们只需要将Eure ...

随机推荐

  1. CF 1400G.Mercenaries 题解【SOSDP 组合数学】

    CF 1400G.Mercenaries 题意: 有\(n\)个佣兵,问雇佣至少一名雇佣兵且满足下述条件的方案数 如果雇佣第\(i\)个佣兵必须要求最终雇佣的总人数\(x\)满足\(l_i\le x\ ...

  2. Codeforces Round #652 (Div. 2) A. FashionabLee(几何)

    题目链接:https://codeforces.com/contest/1369/problem/A 题意 判断正 $n$ 边形能否通过旋转使得一边与 $x$ 轴平行,一边与 $y$ 轴平行. 题解 ...

  3. Alternating Strings Gym - 100712D 简单dp && Alternating Strings II Gym - 100712L 数据结构优化dp

    比赛链接:https://vjudge.net/contest/405905#problem/D 题意: 给你一个长度为n的由0或1构成的串s,你需要切割这个串,要求切割之后的每一个子串长度要小于等于 ...

  4. hdu5438 Ponds

    Time Limit: 1500/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) Total Submissi ...

  5. 创建AVL树,插入,删除,输出Kth Min

    https://github.com/TouwaErioH/subjects/tree/master/C%2B%2B/PA2 没有考虑重复键,可以在结构体内加一个int times. 没有考虑删除不存 ...

  6. leetcode10 正则表达式匹配 dp

    刚好最近在学编译原理 有点想按照语法分析写..不过用不着 因为知道正则表达式对一个串可能有多种匹配方法,所以要准备好回溯. 有最优子结构,一段s由一段p生成,于是dp. 常规思路是从前开始逐个字符匹配 ...

  7. Leetcode(884)-索引处的解码字符串

    给定一个编码字符串 S.为了找出解码字符串并将其写入磁带,从编码字符串中每次读取一个字符,并采取以下步骤: 如果所读的字符是字母,则将该字母写在磁带上. 如果所读的字符是数字(例如 d),则整个当前磁 ...

  8. codeforces 876B

    B. Divisiblity of Differences time limit per test 1 second memory limit per test 512 megabytes input ...

  9. C# 类(9) - 接口 Interface

    Interface 接口 类似 抽象类,也不能被实例化...(前面说的静态类,加上抽象类,还有这个,都3个了)接口其实比 抽象类 更加抽象.接口的方法(这个方法还不能有实体代码,和抽象类的抽象方法差不 ...

  10. vue & arrow function error

    vue & arrow function error <template> <div class="home"> <img alt=" ...