1. 使用nfs共享存储搭建的pvc(此次都放在一个vpc下);
  2. harbor使用nodePort方式部署,不使用ssl;
  1. 准备工作:

    • 准备好harbor用的pvc

    • 安装好helm,添加好可用源;

    • 因为使用的nfs创建的pvc,要给足权限,要不数据库的pod创建时会报错;

      chmod -R 777 /data/nfs-harbor/
    • 创建好harbornamespace,以后的所有资源都创建在这个命名空间里(包括harbor用的pvc);

      kubectl create namespace harbor
  2. 下载harbor包:

    #添加harbor的helm仓库
    helm repo add harbor https://helm.goharbor.io #下载最新的harbor包
    helm pull harbor/harbor
  3. 解压tgz包,修改values.yaml文件

    #values.yaml文件很长,只需要修改一部分
    
    expose:
    type: nodePort #修改为nodePort
    tls:
    enabled: false #不使用ssl,修改为false
    ......
    externalURL: http://10.1.129.121:30002 #修改为其中一个node节点的IP+端口,以后harbor使用这个URL访问
    ......
    persistence:
    enabled: true
    resourcePolicy: "keep"
    persistentVolumeClaim:
    registry:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "registry" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 5Gi
    chartmuseum:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "chartmuseum" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 5Gi
    jobservice:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "jobservice" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 1Gi
    database:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "database" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 1Gi
    redis:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "redis" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 1Gi
    trivy:
    existingClaim: "nfs-pvc-harbor" #修改为之前创建好的pvc
    storageClass: ""
    subPath: "trivy" #修改为对应名字,以后的数据存在此目录中
    accessMode: ReadWriteOnce
    size: 5Gi
    ......
  4. 安装harbor

    helm install harbor harbor/harbor -f values.yaml -n harbor
    
    #等一会查看pod创建是否成功,默认密码为admin/Harbor12345
    kubectl get pod -n harbor #使用之前配的URL即可登录harbor页面
  5. 配置harbor镜像仓库: /

    #修改docker添加http为信任仓库
    vim /etc/docker/daemon.json "insecure-registries": ["10.1.129.121:30002"] #重启docker
    systemctl restart docker #配置用户名密码
    docker login 10.1.129.121:30002 #测试推送
    docker push 10.1.129.121:30002/k8s.gcr.io/kube-apiserver:v1.23.1

使用Helm安装harbor的更多相关文章

  1. 通过helm 安装 harbor 不成功问题处理

    helm 安装 harbor 安装不成功处理过程 通过安装脚本 helm install c7n/harbor \ --set expose.ingress.hosts.core=harbor.ls. ...

  2. kubernetes实战(十):k8s使用Helm安装harbor

    1.基本概念 对于复杂的应用中间件,需要设置镜像运行的需求.环境变量,并且需要定制存储.网络等设置,最后设计和编写Deployment.Configmap.Service及Ingress等相关yaml ...

  3. 通过helm搭建Harbor

    文章转载自:http://www.mydlq.club/article/66/ 系统环境: kubernetes 版本:1.20.1 Traefik Ingress 版本:2.4.3 Harbor C ...

  4. 1.在 Kubernetes 在快速安装 Harbor

    网址:https://www.qikqiak.com/post/harbor-quick-install/ 安装 Harbor Harbor 支持多种安装方式,源码目录下面默认有一个安装脚本(make ...

  5. 安装harbor私有镜像仓库

    有朋友安装harbor的过程中遇到很多问题,为此写一篇最简单安装harbor的文档,希望能帮助所有刚开始接触harbor的新手.harbor的架构不做探究. 实验验环境:os --> cento ...

  6. kubernetes包管理工具Helm安装

    helm官方建议使用tls,首先生成证书. openssl genrsa -out ca.key.pem openssl req -key ca.key.pem -new -x509 -days -s ...

  7. kubernetes(k8s) helm安装kafka、zookeeper

    通过helm在k8s上部署kafka.zookeeper 通过helm方法安装 k8s上安装kafka,可以使用helm,将kafka作为一个应用安装.当然这首先要你的k8s支持使用helm安装.he ...

  8. 安装Harbor

    一.安装Harbor 1. Harbor简介 Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器,通过添加一些企业必需的功能特性,例如安全.标识和管理等,扩展了开源Dock ...

  9. debian8安装harbor

    这里的系统版本是debian8.8,harbor版本为1.1.2. 1.安装docker-ce 1.1.Install packages to allow apt to use a repositor ...

随机推荐

  1. http 的get 与 post 的区别

    1.原理区别 一般在浏览器中输入网址访问资源都是通过GET方式:在FORM提交中,可以通过Method指定提交方式为GET或者POST,默认为GET提交 Http定义了与服务器交互的不同方法,最基本的 ...

  2. 学习鸟哥linux私房菜--安装centos5.6(u盘安装,中文乱码)

    题头为"学习鸟哥Linux私房菜"的内容,均为博主在看鸟哥的Linux私房菜第三版的学习经历收获.以下正文: 鸟哥第一部分讲Linux规则与安装,看到第四章正式开始讲实际安装,于是 ...

  3. 浅析Java中的线程池

    Java中的线程池 几乎所有需要异步或并发执行任务的程序都可以使用线程池,开发过程中合理使用线程池能够带来以下三个好处: 降低资源消耗 提高响应速度 提高线程的可管理性 1. 线程池的实现原理 当我们 ...

  4. golang中结构体当做函数参数或函数返回值都会被拷贝

    1. 结构体做函数的参数或返回值时,都会被重新拷贝一份如果不想拷贝,可以传递结构体指针 package main import "fmt" type Person struct { ...

  5. IoC容器-Bean管理XML方式(注入空值和特殊符号)

    Ioc操作Bean管理(xml注入其他类型属性), 字面量 (1)null值 (2)属性值包含特殊符号

  6. 测试开发实战[提测平台]19-Echarts图表在项目的应用

    微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 在图表统计展示方面,笔者目前使用过的两种开源,分别是 Echats 和 G2Plot 组件,从个人使用上来讲前者应用更广.自定义开发更灵活 ...

  7. 同态加密与 Paillier/RSA

    本文作者: wdxtub 本文链接: http://wdxtub.com/flt/flt-03/2020/12/02/ 白话同态加密 虽然同态加密即使现在听起来也很陌生,但是其实这个概念来自 1978 ...

  8. Java 继承01

    继承 ●示例 class Person { public String name; Person(){ System.out.println("Person Constrctor...&qu ...

  9. 【Python爬虫】爬虫利器 requests 库小结

    requests库 Requests 是一个 Python 的 HTTP 客户端库. 支持许多 HTTP 特性,可以非常方便地进行网页请求.网页分析和处理网页资源,拥有许多强大的功能. 本文主要介绍 ...

  10. 根据指定手绘图纸照片行政区划自定义绘制对应区域边界生成geoJOSN的解决方案

    项目需求 指定某区域(非省市区县乡镇标准行政区划),做功能边界分区,实现Echarts地理坐标数据可视化展示. 提供信息 项目分析 要在Echarts上实现地理坐标可视化,必须使用geoJSON格式文 ...