kubeapps離線安裝

安裝kubeapps

執行以下命令安裝

sudo curl -L https://github.com/kubeapps/installer/releases/download/v0.0.2/kubeapps-linux-amd64 -o /usr/local/bin/kubeapps && sudo chmod +x /usr/local/bin/kubeapps

部署kubeapps
如果能夠訪問外部的網絡,執行下面命令

kubeapps up

離線環境,首先下載所需的鏡像

kubeapps up --dry-run -o yaml > kubeapps.yaml
cat kubeapps.yaml | grep image:

下載完鏡像後,替換鏡像拉取策略

sed -i 's#Always#IfNotPresent#g' kubeapps.yaml

建立存儲塊給kubeapps使用,實際存儲依賴k8s的使用環境,我是使用ceph rbd存儲。
rbd-default-storageclass.yaml

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: default-sc
  annotations:
    storageclass.beta.kubernetes.io/is-default-class: "true"
provisioner: kubernetes.io/rbd
parameters:
  monitors: 192.168.122.120:6789,192.168.122.121:6789,192.168.122.122:6789
  adminId: admin
  adminSecretName: ceph-secret
  adminSecretNamespace: kubeapps
  pool: ssd-pool
  userId: admin
  userSecretName: ceph-secret-user
  fsType: ext4
  imageFormat: "2"
  imageFeatures: "layering"

rbd-pv-8g.yaml

apiVersion: v1
kind: PersistentVolume
metadata:
  name: rbdpv8g
spec:
  capacity:
    storage: 8Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Recycle
  storageClassName: default-sc
  rbd:
      monitors:
        - '192.168.122.120:6789,192.168.122.121:6789,192.168.122.122:6789'
      pool: ssd-pool
      image: rbdpd8
      fsType: ext4
      readOnly: false
      user: admin
      keyring: /etc/ceph/ceph.client.admin.keyring

需要自己預先在ceph的ssd-pool池上創建名爲rbdpd8的image。
命令執行如下

kubectl create -f kubeapps-ns.yaml
kubectl create -f rbd-default-storageclass.yaml
kubectl create -f rbd-pv-8g.yaml
kubectl create -f rbd-pv-1g.yaml
kubectl create -f rbd-pv-1g2.yaml
kubectl create -f rbd-pv-1g3.yaml

更改kubeapps.yaml,替換裏面的鏡像爲自己registry上的鏡像,執行以下命令安裝

kubectl create -f kubeapps.yaml

刪除kubeapps

從集羣中刪除kubeapps

kubeapps down

或者使用kubectl逆序刪除前面創建的對象。

啓動kubeapps ui

啓動kubeapps ui

kubeapps dashboard

這個命令只能啓用本地127.0.0.1的端口訪問UI,只能本機器的瀏覽器訪問。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章