安装说明

=== “docker”

  1. !!! info ""
  2. ```
  3. # 安装
  4. sudo docker run --privileged -d --restart=unless-stopped -p 80:80 kubeoperator/kubepi-server
  5. ```
  6. !!! info "持久化部署"
  7. ```
  8. # 创建持久化目录
  9. mkdir -p /opt/kubepi
  10. # 安装
  11. sudo docker run --privileged -d -v /opt/kubepi:/var/lib/kubepi --restart=unless-stopped -p 80:80 kubeoperator/kubepi-server
  12. ```
  13. !!! info "登录"
  14. ```
  15. 地址: http://localhost
  16. 用户名: admin
  17. 密码: kubepi
  18. ```

=== “kubectl”

  1. !!! info ""
  2. ```
  3. # 安装
  4. sudo kubectl apply -f https://raw.githubusercontent.com/KubeOperator/KubePi/master/docs/deploy/kubectl/kubepi.yaml
  5. ```
  6. !!! info "持久化部署"
  7. ```
  8. # 安装
  9. sudo kubectl apply -f https://raw.githubusercontent.com/KubeOperator/KubePi/master/docs/deploy/kubectl/kubepi-pvc.yaml
  10. ```
  11. !!! warning "注意"
  12. 需要替换创建 pvc 时使用的 storageClass
  13. !!! info "获取访问地址"
  14. ```
  15. # 获取 NodeIp
  16. export NODE_IP=$(kubectl get nodes -o jsonpath="{.items[0].status.addresses[0].address}")
  17. # 获取 NodePort
  18. export NODE_PORT=$(kubectl -n kube-system get services kubepi -o jsonpath="{.spec.ports[0].nodePort}")
  19. # 获取 Address
  20. echo http://$NODE_IP:$NODE_PORT
  21. ```
  22. !!! info "登录"
  23. ```
  24. 地址: http://$NODE_IP:$NODE_PORT
  25. 用户名: admin
  26. 密码: kubepi
  27. ```

升级说明

=== “docker”

  1. !!! info "获取 CONTAINER ID"
  2. ```
  3. [root@kubepi ~]# docker ps -a | grep kubepi-server
  4. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  5. -------------------------------------------------------------------------------------------------------------------------------
  6. a953fd099001 781302f01508 "kubepi-server" 12 days ago Up 24 minutes 0.0.0.0:8080->80/tcp trusting_snyder
  7. ```
  8. !!! info "获取 kubepi 持久化数据(持久化部署忽略此步骤)"
  9. ```
  10. # 创建持久化目录
  11. [root@kubepi ~]# mkdir -p /opt/kubepi/db
  12. # 拷贝容器内持久化文件
  13. [root@kubepi ~]# docker cp <CONTAINER_ID>:/var/lib/kubepi/db/kubepi.db /opt/kubepi/db/
  14. ```
  15. !!! info "升级"
  16. ```
  17. # 下载最新镜像
  18. [root@kubepi ~]# docker pull kubeoperator/kubepi-server:latest
  19. # 停止 kubepi 服务(需要用到kubepi container id)
  20. [root@kubepi ~]# docker stop <CONTAINER_ID>
  21. [root@kubepi ~]# docker rm <CONTAINER_ID>
  22. # 启动服务
  23. [root@kubepi ~]# sudo docker run --privileged -d -v /opt/kubepi:/var/lib/kubepi --restart=unless-stopped -p 80:80 kubeoperator/kubepi-server
  24. ```

=== “kubectl”

  1. !!! info ""
  2. ```
  3. # 注意:确保 kubepi deployment 的镜像拉取策略为 imagePullPolicy: Always
  4. [root@kubepi ~]# kubectl -n kube-operator edit deployments.apps kubepi
  5. ```
  6. ```
  7. # 获取 kubepi pod 名称以及所在 namespace
  8. [root@kubepi ~]# kubectl get pod -n kube-operator | grep kubepi
  9. NAME READY STATUS RESTARTS AGE
  10. ---------------------------------------------------------------------------
  11. kubepi-6dc758d565-6l5zz 1/1 Running 0 23h
  12. # 删除 Pod(重启服务)
  13. [root@kubepi ~]# kubectl -n kube-operator delete pod kubepi-6dc758d565-6l5zz
  14. ```