安装部署

安装说明

dockerkubectl

  1. # 安装
  2. sudo docker run --privileged -d --restart=unless-stopped -p 80:80 kubeoperator/kubepi-server

持久化部署

  1. # 创建持久化目录
  2. mkdir -p /opt/kubepi
  3. # 安装
  4. sudo docker run --privileged -d -v /opt/kubepi:/var/lib/kubepi --restart=unless-stopped -p 80:80 kubeoperator/kubepi-server

登录

  1. 地址: http://localhost
  2. 用户名: admin
  3. 密码: kubepi
  1. # 安装
  2. sudo kubectl apply -f https://raw.githubusercontent.com/KubeOperator/KubePi/master/docs/deploy/kubectl/kubepi.yaml

持久化部署

  1. # 安装
  2. sudo kubectl apply -f https://raw.githubusercontent.com/KubeOperator/KubePi/master/docs/deploy/kubectl/kubepi-pvc.yaml

注意

需要替换创建 pvc 时使用的 storageClass

获取访问地址

  1. # 获取 NodeIp
  2. export NODE_IP=$(kubectl get nodes -o jsonpath="{.items[0].status.addresses[0].address}")
  3. # 获取 NodePort
  4. export NODE_PORT=$(kubectl -n kube-system get services kubepi -o jsonpath="{.spec.ports[0].nodePort}")
  5. # 获取 Address
  6. echo http://$NODE_IP:$NODE_PORT

登录

  1. 地址: http://$NODE_IP:$NODE_PORT
  2. 用户名: admin
  3. 密码: kubepi

升级说明

dockerkubectl

获取 CONTAINER ID

  1. [root@kubepi ~]# docker ps -a | grep kubepi-server
  2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  3. -------------------------------------------------------------------------------------------------------------------------------
  4. a953fd099001 781302f01508 "kubepi-server" 12 days ago Up 24 minutes 0.0.0.0:8080->80/tcp trusting_snyder

获取 kubepi 持久化数据(持久化部署忽略此步骤)

  1. # 创建持久化目录
  2. [root@kubepi ~]# mkdir -p /opt/kubepi/db
  3. # 拷贝容器内持久化文件
  4. [root@kubepi ~]# docker cp <CONTAINER_ID>:/var/lib/kubepi/db/kubepi.db /opt/kubepi/db/

升级

  1. # 下载最新镜像
  2. [root@kubepi ~]# docker pull kubeoperator/kubepi-server:latest
  3. # 停止 kubepi 服务(需要用到kubepi container id)
  4. [root@kubepi ~]# docker stop <CONTAINER_ID>
  5. [root@kubepi ~]# docker rm <CONTAINER_ID>
  6. # 启动服务
  7. [root@kubepi ~]# sudo docker run --privileged -d -v /opt/kubepi:/var/lib/kubepi --restart=unless-stopped -p 80:80 kubeoperator/kubepi-server
  1. # 注意:确保 kubepi deployment 的镜像拉取策略为 imagePullPolicy: Always
  2. [root@kubepi ~]# kubectl -n kube-operator edit deployments.apps kubepi
  1. # 获取 kubepi pod 名称以及所在 namespace
  2. [root@kubepi ~]# kubectl get pod -n kube-operator | grep kubepi
  3. NAME READY STATUS RESTARTS AGE
  4. ---------------------------------------------------------------------------
  5. kubepi-6dc758d565-6l5zz 1/1 Running 0 23h
  6. # 删除 Pod(重启服务)
  7. [root@kubepi ~]# kubectl -n kube-operator delete pod kubepi-6dc758d565-6l5zz