helm使用harbor的chart仓库

前言:
用一个私有化的chart仓库来说明chart仓库的使用
其中包括信任证书和不信任证书的仓库
最后附上常用的共有chart仓库。

1. 环境说明

1.1 harbor服务器

  • harbor私有仓库已安装
  • harbor启用chart仓库,并创建了一个叫chart-public的仓库
    在这里插入图片描述

1.2 客户机

  • 客户机helm3.x 已安装
  • 添加 helm-push 插件
# helm plugin install https://github.com/chartmuseum/helm-push

下载太慢,如果有这个文件我们也可以直接拷贝到如下目录里:
/root/.cache/helm/plugins/https-github.com-chartmuseum-helm-push

2. 添加私有镜像仓库

helm repo add  --username admin --password liubei@2021 liubei-chart   
https://harbocto.xxx.com.cn/chartrepo/chart-public   

如果证书是不信任的或自签的,需要用--ca-file指定证书,如下:

--ca-file /etc/docker/certs.d/10.251.xxx.144/ca.crt 
  • 查看结果
[root@DoM01 ~]# helm repo list
NAME            URL
liubei-chart       https://harbocto.xxx.com.cn/chartrepo/chart-public

3. 使用

3.1 更新仓库信息

# helm repo update

3.2 查找chart

[root@DoM01 ~]# helm search repo mysql
NAME                                    CHART VERSION   APP VERSION     DESCRIPTION
liubei-chart/mysql                         1.6.3           5.7.28          Fast, reliable, scalable, and easy to use open-...
liubei-chart/mysqldump                     2.6.0           2.4.1           A Helm chart to help backup MySQL databases usi...
liubei-chart/prometheus-mysql-exporter     0.5.2           v0.11.0         A Helm chart for prometheus mysql exporter with...
liubei-chart/percona                       1.2.1           5.7.26          free, fully compatible, enhanced, open source d...
liubei-chart/percona-xtradb-cluster        1.0.3           5.7.19          free, fully compatible, enhanced, open source d...
liubei-chart/phpmyadmin                    4.3.5           5.0.1           DEPRECATED phpMyAdmin is an mysql administratio...
liubei-chart/gcloud-sqlproxy               0.6.1           1.11            DEPRECATED Google Cloud SQL Proxy
liubei-chart/mariadb                       7.3.14          10.3.22         DEPRECATED Fast, reliable, scalable, and easy t...

3.3 下载chart

  • 下载
# helm pull liubei-chart/mysql
  • 查看结果

可见,下载到的是一个.tgz的文件。

[root@DoM01 ~]# ll
总用量 24
-rw-r-----  1 root root 11131 1224 19:34 mysql-1.6.3.tgz

3.4 上传chart

# helm push chart_name   --username admin --password liubei@2021
  • 带证书上传

如果证书是自签的或不信任的,则需要用--ca-file参数指定证书

# helm push chart_name repo_name --ca-file /etc/docker/certs.d/10.251.xxx.144/ca.crt    --username admin --password liubei@2021

4. 为私有仓库添加常用chart实例

需求:搭建了一个私有chart仓库,需要为开发测试提供常用chart

  • 基础chart包准备
    github上下载了 charts-master,解压缩到服务器,目录如下 /data/helm/charts-master

  • 上传私有镜像仓库

写一个循环推送stable目录下的chart,推送脚本如下

#!/bin/bash
cd /data/helm/charts-master/stable
for chart_name in `ls -l|awk '{print $NF}'`
  do
    helm push ${chart_name} liubei-chart    --username admin --password liubei@2021
done
  • 查看结果如下
    在这里插入图片描述

5 常用chart仓库

  • 默认谷歌的
    stable https://kubernetes-charts.storage.googleapis.com
    (对应GitHub https://github.com/helm/charts/tree/master/stable)
    incubator https://kubernetes-charts-incubator.storage.googleapis.com
    svc-cat https://svc-catalog-charts.storage.googleapis.com

  • 阿里云apphub
    apphub https://apphub.aliyuncs.com/

以下阿里云仓库18年11月份后不再更新
aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
incubator https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts-incubator
svc-cat https://kubernetes.oss-cn-hangzhou.aliyuncs.com/svc-catalog-charts

  • 微软的
    stable http://mirror.azure.cn/kubernetes/charts
    incubator http://mirror.azure.cn/kubernetes/charts-incubator
    svc-cat http://mirror.azure.cn/kubernetes/svc-catalog-charts
  • bitnami的
    bitnami https://charts.bitnami.com/bitnami
  • elastic的
    elastic https://helm.elastic.co
  • kiwigrid的
    kiwigrid https://kiwigrid.github.io
    (对应GitHub https://github.com/kiwigrid/helm-charts/tree/master/charts)
  • jetstack的
    jetstack https://charts.jetstack.io
  • 其他开源仓库
    https://burdenbear.github.io/kube-charts-mirror
    https://doublemine.github.io/helm-charts-mirror
    https://charts.ost.ai

在这里插入图片描述

posted on 2021-08-16 22:49  运维开发玄德公  阅读(166)  评论(0编辑  收藏  举报  来源

导航