Rancher 可透過helm chart安裝應用程式 而Rancher一開始就有他們預設的幾個helm chart
而若要加入自己的helm chart則可透過兩種方式
一是可透過用https 的方式到透過helm 建立的index去取得需要的資訊
二是可透過git的方式取得Helm chart的資訊
而這次透過git的方式添加第三方的APP 使用的repo(https://github.com/openfaas/faas-netes)
若對方有提供helm chart就可直接添加 首先先到左邊的repositoreis並按create
之後就會到剛剛的畫面 選擇透過含有helm chart 或cluster template資訊的git Repository
若添加的git沒有需要認證的限制就可直接按Create
而若沒問題就可以看到Active
而回到Charts 可看到剛剛添加的faas在最底下可以被看到
而自己建立的helm chart也可添加進去
而這邊就不做修改直接推上github
(https://github.com/kanic1111/helm_test)
之後透過同樣的步驟添加至repository
而同樣可以在Charts上看到我們添加的helm charts
而若使用者自己安裝application到主機上Rancher也可以做監控
這邊我們以存放docker image,kubernetes yaml,helm chart 並協助使用者掃描與協助簽署憑證確保資料安全的一個軟體HARBOR做舉例
首先先到自己的cluster 右上角會有 kubectl shell(自己SSH進到主機也可以) 可以使用Rancher所提供的terminal進行操作
連線成功後再terminal打
helm repo add harbor https://helm.goharbor.io
helm fetch harbor/harbor --untar
cd harbor
sed -i 's/ type: ingress/ type: clusterIP/g' values.yaml
sed -i 's/ commonName: ""/ commonName: "harbor"/g' values.yaml
kubectl create ns harbor
helm install harbor . -n harbor
打完後就會進行安裝 而Rancher上也能看到installed app 中出現Harbor
等Harbor完全設定完成後就可看到幾個服務被部屬成功
而這邊到Harbor登入網頁會遇到一個問題 因為所有的Service都是由Harbor透過Rancher起的 因此再透過Rancher連線至網頁時會發現API打的時候的網址會是導到Rancher自己的網頁導致登入失敗。
為了確保他API連線到的是正確的位址因此我們要去Deployment的地方新增Service把Pod的Port對出來外面,因此到Deployment的地方修改Harbor- nginx Networking
將80,443,4443 port 透過nodeport去做對外
之後再到設定的443port的位址去做連線
就能成功登入了