Harbor 共享后端高可用-简单版

本文涉及的产品
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
应用实时监控服务-应用监控,每月50GB免费额度
注册配置 MSE Nacos/ZooKeeper,182元/月
简介: 主机配置包括3台服务器,运行Harbor v2.10.0和Docker 24.0.5,其中10.0.90.68额外运行Postgres+Redis。基础安装配置中详细描述了Docker的安装步骤,包括添加仓库、安装、配置国内镜像源和启动Docker。安装postgres+redis服务使用docker-compose.yml文件,通过`docker-compose up -d`命令启动。最后,安装Harbor涉及修改harbor.yml配置文件,设置主机名、数据库和Redis连接信息,然后运行`install.sh`脚本。

1. 主机配置

主机地址 主机配置 软件版本
10.0.90.66 CPU:8C
MEM:8GB
Disk: 100GB
Harbor v2.10.0
Docker 24.0.5
10.0.90.67 CPU:8C
MEM:8GB
Disk: 100GB
Harbor v2.10.0
Docker 24.0.5
10.0.90.68 CPU:8C
MEM:16GB
Disk: 500GB
Postgres+Redis
Docker 24.0.5

2. 基础安装配置(前置工作可跳过)

2.1 Docker 安装教程

2.1.1 安装存储驱动
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2.1.2 添加 Docker-ce 安装仓库
sudo yum-config-manager --add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
2.1.3 查看与安装所需版本
yum list docker-ce --showduplicates | sort -r
yum -y install docker-ce
2.1.4 配置国内仓库
 {
   
    "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn","https://hub-mirror.c.163.com"],
    "max-concurrent-downloads": 20,
    "live-restore": true,
    "max-concurrent-uploads": 10,
    "debug": true,
    "data-root": "/data/docker_data",
    "exec-root": "/data/docker_exec",
    "log-opts": {
   
      "max-size": "100m",
      "max-file": "5"
    }
}
2.1.5 启动 Docker
systemctl start docker && systemctl enable docker
2.1.6 安装 docker-compose
sudo wget https://github.com/docker/compose/releases/download/1.28.4/docker-compose-Linux-x86_64
sudo mv docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

3. 安装postgres+redis服务

3.1 docker-compose.yml

version: '3.1'

services:
  db:
    image: goharbor/harbor-db:v2.10.0
    container_name: harbor-postgres
    restart: always
    cap_drop:
      - ALL
    cap_add:
      - CHOWN
      - DAC_OVERRIDE
      - SETGID
      - SETUID
    environment:
      POSTGRES_PASSWORD: root123
    volumes:
      - /mnt/data/harbor_db/database:/var/lib/postgresql/data
    ports:
      - 5432:5432
  redis:
    image: goharbor/redis-photon:v2.10.0
    container_name: harbor-redis
    restart: always
    cap_drop:
      - ALL
    cap_add:
      - SETGID
      - SETUID
    environment:
      - TZ=Asia/Shanghai
      - LANG=en_US.UTF-8
    volumes:
      - /mnt/data/harbor_db/redis:/var/lib/redis
    ports:
      - 6379:6379

3.2 安装postgres+redis

docker-compose up -d

4. 安装Harbor

4.1 修改harbor.yml

以下仅为需要修改的配置

hostname: harbor.abc.com

http:
  port: 30080

https:
  port: 30443
  certificate: /mnt/gpfs/liuhuan/cert/10932648_harbor.abc.com_nginx/harbor.abc.com.pem
  private_key: /mnt/gpfs/liuhuan/cert/10932648_harbor.abc.com_nginx/harbor.abc.com.key

external_url: https://harbor.abc.com

harbor_admin_password: Harbor123456

data_volume: /mnt/harbor_data

log:
  level: info
  local:
    rotate_count: 50
    rotate_size: 200M
    location: /mnt/harbor_data/log

external_database:
  harbor:
    host: 10.0.90.66
    port: 5432
    db_name: registry
    username: postgres
    password: root123
    ssl_mode: disable
    max_idle_conns: 2
    max_open_conns: 0
  notary_signer:
    host: 10.0.90.68
    port: 5432
    db_name: notarysigner
    username: postgres
    password: root123
    ssl_mode: disable
  notary_server:
    host: 10.0.90.68
    port: 5432
    db_name: notaryserver
    username: postgres
    password: root123
    ssl_mode: disable

external_redis:
  host: 10.0.90.68:6379
  password:

4.2 安装harbor

./install.sh
相关文章
|
JSON API 网络架构
Django 后端架构开发:DRF 高可用API设计与核心源码剖析
Django 后端架构开发:DRF 高可用API设计与核心源码剖析
359 1
|
存储 安全 Java
Java面试题:假设你正在开发一个Java后端服务,该服务需要处理高并发的用户请求,并且对内存使用效率有严格的要求,在多线程环境下,如何确保共享资源的线程安全?
Java面试题:假设你正在开发一个Java后端服务,该服务需要处理高并发的用户请求,并且对内存使用效率有严格的要求,在多线程环境下,如何确保共享资源的线程安全?
186 0
|
弹性计算 运维 负载均衡
【运维】使用HAproxy配置后端数据库集群 高可用及负载均衡
后端mariadb数据库galera_cluster集群参考之前文档,https://developer.aliyun.com/article/849929
2125 5
【运维】使用HAproxy配置后端数据库集群 高可用及负载均衡
|
消息中间件 运维 Kubernetes
Sentry(v20.12.1) K8S云原生架构探索,玩转前/后端监控与事件日志大数据分析,高性能高可用+可扩展可伸缩集群部署
Sentry(v20.12.1) K8S云原生架构探索,玩转前/后端监控与事件日志大数据分析,高性能高可用+可扩展可伸缩集群部署
1225 0
Sentry(v20.12.1) K8S云原生架构探索,玩转前/后端监控与事件日志大数据分析,高性能高可用+可扩展可伸缩集群部署
|
缓存 Java 应用服务中间件
高可用后端架构设计实战-利用request cache请求缓存优化批量查询接口
高可用后端架构设计实战-利用request cache请求缓存优化批量查询接口
308 0
高可用后端架构设计实战-利用request cache请求缓存优化批量查询接口
|
NoSQL 关系型数据库 MySQL
Harbor HA部署-使用Ceph RADOS后端
目录1. 前言2. 配置Ceph radosgw用户3. 部署HA的MariaDB集群4. 部署HA的Redis集群5. 部署Harbor集群参考资料   1. 前言 Harbor 1.4.0版本开始提供了HA部署方式,和非HA的主要区别就是把有状态的服务分离出来,使用外部集群,而不是运行在本地的容器上。
3622 0
|
Web App开发 算法 NoSQL
app后端session共享问题
在分布式中,session如何共享,用户登陆要解决的问题如下图所示,通过nignx请求转发,到不同的应用模块中,需要判断用户有没有登陆验证通过,问题又来了,app的移动端不像浏览器,没有cookie,session,那么怎么搞呢?这时可以使用session外置方式解决,用redis统一管理session,用redis来模拟session。
1183 0
|
4月前
|
存储 消息中间件 前端开发
PHP后端与uni-app前端协同的校园圈子系统:校园社交场景的跨端开发实践
校园圈子系统校园论坛小程序采用uni-app前端框架,支持多端运行,结合PHP后端(如ThinkPHP/Laravel),实现用户认证、社交关系管理、动态发布与实时聊天功能。前端通过组件化开发和uni.request与后端交互,后端提供RESTful API处理业务逻辑并存储数据于MySQL。同时引入Redis缓存热点数据,RabbitMQ处理异步任务,优化系统性能。核心功能包括JWT身份验证、好友系统、WebSocket实时聊天及活动管理,确保高效稳定的用户体验。
285 4
PHP后端与uni-app前端协同的校园圈子系统:校园社交场景的跨端开发实践