日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Helm基于Harbor中存儲(chǔ)的chart快速發(fā)布服務(wù)

Helm基于Harbor中存儲(chǔ)的chart快速發(fā)布服務(wù)

作者:鍵客李大白 2023-04-06 10:08:58

云計(jì)算

云原生 ChartMuseum:提供了API管理非OCI規(guī)范的Helm Chart。在安裝了ChartMuseum組件后,當(dāng)用戶使用“helm”命令向Harbor推送或拉取Chart時(shí),Harbor的Core組件會(huì)首先收到請(qǐng)求,在校驗(yàn)后將請(qǐng)求轉(zhuǎn)發(fā)給ChartMuseum進(jìn)行Chart文件的讀寫。

創(chuàng)新互聯(lián)建站主營西吉網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都App定制開發(fā),西吉h5微信小程序搭建,西吉網(wǎng)站營銷推廣歡迎西吉等地區(qū)企業(yè)咨詢

概述

??Harbor在v1.6版本開始支持Helm Chart倉庫功能,這樣就可以利用 harbor 同時(shí)管理鏡像和 helm charts 了,無需另外部署一套Helm Chart系統(tǒng)。在harbor中,chart倉庫由chartmuseum以插件的方式提供,可以自己選擇安裝或者不安裝。

ChartMuseum:提供了API管理非OCI規(guī)范的Helm Chart。在安裝了ChartMuseum組件后,當(dāng)用戶使用“helm”命令向Harbor推送或拉取Chart時(shí),Harbor的Core組件會(huì)首先收到請(qǐng)求,在校驗(yàn)后將請(qǐng)求轉(zhuǎn)發(fā)給ChartMuseum進(jìn)行Chart文件的讀寫。

??隨著兼容OCI規(guī)范的Helm Chart在社區(qū)上被更廣泛地接受,Helm Chart能以Artifact的形式在Harbor中存儲(chǔ)和管理,不再依賴ChartMuseum,因此Harbor會(huì)在后續(xù)版本中移除對(duì)ChartMuseum的支持。

??雖然被廢棄,但是并不意味著不能用Harbor存儲(chǔ)chart了,而是用 OCI chart替代。

  • 從v2.6.0 開始棄用Chartmuseum,并在v2.8.0中開始刪除。更多詳情,請(qǐng)參閱討論:https://github.com/goharbor/harbor/discussions/15057 從 v2.6.0 開始棄用 Notary(簽名者和服務(wù)器),并在 v2.8.0 中開始刪除。更多詳情,請(qǐng)參閱討論:https://github.com/goharbor/harbor/discussions/16612
  • Harbor版本必須是1.6+到2.8.0才支持存儲(chǔ)Helm Chart(我這用的是2.6.2);
  • 默認(rèn)新版harbor不會(huì)啟用chart repository service,需要在安裝harbor時(shí)指定--with-chartmuseum參數(shù);
  • 創(chuàng)建項(xiàng)目chartrepo(公有項(xiàng)目);

環(huán)境說明

Harbor版本: 2.6.2Harbor地址:?https://192.168.2.30:443?部署路徑: /app/harbor證書位置:/app/harbor/ssl/

安裝Chartmuseum組件

2.1 修改配置文件

??在absolute_url?參使用ChartMuseum?組件時(shí),客戶端獲取到的Chart的index.yaml?中包含的URL是否為絕對(duì)路徑。在不配置該項(xiàng)時(shí),ChartMuseum組件會(huì)返回相對(duì)路徑,默認(rèn)為disabled。

$ vim  harbor.yml
chart:
# Change the value of absolute_url to enabled can enable absolute url in chart
absolute_url: enabled

enabled表示使用絕對(duì)路徑!

2.2 停止Harbor

$ docker-compose stop

2.3 注入配置

??執(zhí)行./prepare將新的配置注入到各個(gè)組件中。

$  ./prepare

2.4 安裝chartmuseum

??在執(zhí)行install.sh安裝時(shí),通過--with-chartmuseum參數(shù)安裝chart插件,安裝完后會(huì)自動(dòng)啟動(dòng)Harbor。

$ ./install.sh  --with-notary --with-trivy --with-chartmuseum
----Harbor has been installed and started successfully.---- #輸出該信息則表示安裝成功

2.5 查看組件服務(wù)狀態(tài)

??通過docker-compose ps命令可以看到harbor的組件中多了個(gè)chartmuseum的容器。

$ docker-compose ps

2.6 驗(yàn)證是否安裝了chartmuseum組件

登錄Harbor UI管理界面:【項(xiàng)目】==>【library】==> 【Helm Charts】

安裝helm-push插件

通過Harbor UI界面可以將制作好的chart包直接上傳到Harbor,但是命令行上傳、下載Chart則需要安裝helmpush插件。

通常在kubernetes的master節(jié)點(diǎn)進(jìn)行操作,前提是已經(jīng)安裝好helm。

3.1 在線直接安裝

$ helm plugin install https://github.com/chartmuseum/helm-push
Downloading and installing helm-push v0.9.0 ...
https://github.com/chartmuseum/helmpush/releases/download/v0.9.0/helmpush_0.9.0_linux_amd64.tar.gz
Installed plugin: push
$ helm plugin list
NAME VERSION DESCRIPTION
cm-push 0.10.3 Push chart package to ChartMuseum
$ ls /root/.local/share/helm/plugins/helmpush/bin/helmpush
/root/.local/share/helm/plugins/helm-push/bin/helmpush

上傳Chart包到Harbor

4.1 Harbor UI上傳Chart

??登錄Harbor管理界面,進(jìn)入要將chart包上傳的projects(項(xiàng)目),選擇【Helm Charts】,然后選擇【上傳】按鈕將本地電腦中制作好的Chart包上傳到Harbor中。

然后點(diǎn)擊【上傳】

4.2 命令行上傳Chart

1)下載測(cè)試用的chart包

$ helm repo list
NAME URL
bitnami https://charts.bitnami.com/bitnami
ali-incubator https://aliacs-app-catalog.oss-cn-hangzhou.aliyuncs.com/charts-incubator/
$ helm search repo bitnami | head -2
NAME CHART VERSION APP VERSION DESCRIPTION
bitnami/airflow 14.0.13 2.5.1 Apache Airflow is a tool to express and execute...
$ helm pull bitnami/airflow
$ ls
airflow-14.0.13.tgz

2)添加Harbor repo

  • 拷貝https相關(guān)證書
$ scp 192.168.2.30:/app/harbor/ssl/{ca.pem,harbor.pem,harbor-key.pem}  ./
  • 添加repo
$ helm repo add harbor-library https://192.168.2.30:443/chartrepo/library --username admin --password Harbor12345 \
--ca-file ca.pem --key-file harbor-key.pem --cert-file harbor.pem
"harbor-library" has been added to your repositories

harbor-library?:自定義的repo名稱;https://192.168.2.30:443/chartrepo/library?為chart連接地址,chartrepo固定格式,“l(fā)ibrary”為chart所在項(xiàng)目的名稱,請(qǐng)結(jié)合自身的實(shí)際環(huán)境修改。--username?:指定Harbor的用戶名(該用戶必須對(duì)project對(duì)象擁有權(quán)限);--password?:指定密碼;--ca-file?:為harbor頒發(fā)證書的頒發(fā)者證書;--key-file?: Harbor的私鑰;--cert-file:指定harbor的證書;

參數(shù)

含義

Cfssl工具格式

Openssl工具格式

--ca-file

CA證書

ca.pem

ca.crt

--cert-file

證書文件

harbor.pem

harbor.crt

--key-file

私鑰

harbor-key.pem

  • 查看是否添加成功
$ helm repo list
NAME URL
harbor-library https://192.168.2.30:443/chartrepo/library

3)將打包應(yīng)用從命令行push到harbor

格式:helm cm-push chart包 repo名稱

$ helm cm-push airflow-14.0.13.tgz harbor-library \
--ca-file ca.pem --key-file harbor-key.pem \
--cert-file harbor.pem

4)驗(yàn)證是否上傳成功

基于Harbor中的Chart包發(fā)布服務(wù)

??使用helm包管理工具將存放在Harbor中的chart包部署到kubernetes集群中

5.1 查看chart概要

??在Harbor UI點(diǎn)擊chart名稱即可查看該chart的概要信息,包括chart介紹、安裝、卸載、配置等,可以根據(jù)概要信息來使用相關(guān)的管理命令。

圖5.1-1

圖5.1-2

圖5.1-3

5.2 添加Harbor作為Chart倉庫

添加的命令格式:

$ helm repo add --ca-file  \
--cert-file --key-file \
--username \
--password https://192.168.2.22/chartrepo/lidabai

1)拷貝harbor相關(guān)證書

將harbor相關(guān)的證書拷貝到Helm所在服務(wù)器(一般是kubernetes集群中的master節(jié)點(diǎn))。

$ scp 192.168.2.30:/app/harbor-cert/{ca.pem, harbor.pem, harbor-key.pem}  ./

2)添加harbor的chart倉庫

$ helm repo add my-harbor https://192.168.2.22/chartrepo/lidabai \
--username admin --password Harbor12345 \
--ca-file ca.pem --cert-file harbor.pem --key-file harbor-key.pem

輸出結(jié)果:

"my-harbor" has been added to your repositories

表示添加成功!

3)查看驗(yàn)證

$ helm repo list
NAME URL
aliyun https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts
my-harbor https://192.168.2.22/chartrepo/lidabai

?5.3 發(fā)布服務(wù)

$ helm install --ca-file  --cert-file  --key-file   \
--username= --password= --version 2.0.1 /memcached
  • 搜索chart
$ helm search repo my-harbor
NAME CHART VERSION APP VERSION DESCRIPTION
my-harbor/memcached 2.0.1 Free & open source, high-performance, distribut...
  • 安裝chart
$ helm install  memcached-test \
--ca-file ca.pem --cert-file harbor.pem \
--key-file harbor-key.pem \
> --username=admin --password=Harbor12345 \
--version 2.0.1 my-harbor/memcached


文章標(biāo)題:Helm基于Harbor中存儲(chǔ)的chart快速發(fā)布服務(wù)
文章分享:http://www.dlmjj.cn/article/dpcepjc.html