前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【排坑指南之kubeSphere】2022年最新版-”kubeSphere3.2.1 Paas容器云平台“使用DevOps-CICD之”排坑指南“

【排坑指南之kubeSphere】2022年最新版-”kubeSphere3.2.1 Paas容器云平台“使用DevOps-CICD之”排坑指南“

原创
作者头像
秋意零
修改2022-05-15 21:47:38
6110
修改2022-05-15 21:47:38
举报
文章被收录于专栏:YeTechLogYeTechLog

@toc

前言

作者主页https://blog.csdn.net/qq_48450494?type=blog

作者博客http://ygcloud.work/

最近几天一直在学习kubeSphere Paas容器云平台,在这期间遇到了不少坑。

<font size=5 color=red> 下面统一告诉各位,希望各位少走弯路!!!</font>

看在作者努力排坑+分享的份上,给个三连吧!!!

看在作者努力排坑+分享的份上,给个三连吧!!!

看在作者努力排坑+分享的份上,给个三连吧!!!

坑位!!!

坑位1(配置 Kubernetes默认存储类型)

在安装kubeSphere Paas容器云平台之前(后期出一篇kubeSphere安装教程),需要一个重要的环境准备(不只有这一个环境),配置 Kubernetes 默认存储类型(storageclass)它的作用就是创建pvc之后自动创建pv与之绑定,在这里折腾了两天。。。。,最后发现官方的镜像不可用,导致创建pvc后不会自动创建pv与之绑定。。。

坑位2(java.lang.NullPointerException)

使用kubeSphere平台的DevOps-CICD部署服务时,前面的拉取代码、构建docker镜像、上传docker镜像到Harbor仓库、拉取Harbor仓库到本地,这一切都没问题直到最后一步部署服务时始终报错java.lang.NullPointerException),在这里也折腾了两天。。。。就,, 最后发现这种方式(kubernetesDeploy)已经不维护了。。。说多了都是泪aaa。。。。,

坑位2报错信息,见下图:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

排坑!!!

排坑位1

修改自己的nfs-client-provisioner服务,对应的image镜像,如下:

这里的quay.io/external_storage/nfs-client-provisioner:latest镜像不可用,

请使用registry.cn-hangzhou.aliyuncs.com/jijic/provisioner:v4.0.2镜像,这个镜像是我自己阿里云镜像。我放在我资源里面,大家自取吧!!下载provisioner镜像

helm3安装默认存储类型

helm3是什么?,点这里

helm包里的镜像(k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2)是国外的,国内翻墙也下载不到,贼坑。所有我为大家准备好了,放在我资源里面了,大家自取吧!!下载provisioner镜像

代码语言:shell
复制
kind: Deployment
apiVersion: apps/v1
metadata:
  name: nfs-client-provisioner
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nfs-client-provisioner
  strategy:
    type: Recreate
  template:
    metadata:
      labels:
        app: nfs-client-provisioner
    spec:
      serviceAccountName: nfs-client-provisioner
      containers:
        - name: nfs-client-provisioner
        # image: quay.io/external_storage/nfs-client-provisioner:latest
          image: registry.cn-hangzhou.aliyuncs.com/jijic/provisioner:v4.0.2
          volumeMounts:
            - name: nfs-client-root
              mountPath: /persistentvolumes
          env:
            - name: PROVISIONER_NAME
              value: fuseim.pri/ifs
            - name: NFS_SERVER
              value: 192.168.200.37
            - name: NFS_PATH
              value: /data/k8s
      volumes:
        - name: nfs-client-root
          nfs:
            server: 192.168.200.37
            path: /data/k8s

排坑位2

这里流水线部署阶段做一个对比就明白了

  1. 使用kubernetesDeploy方式:不可用的
  2. web界面内容:
    在这里插入图片描述
    在这里插入图片描述
  3. 对应Jenkinsfile文件内容:
代码语言:shell
复制
     stage('deploy') {
      agent none
      steps {
        container('maven') {
          kubernetesDeploy(enableConfigSubstitution: true, deleteResource: false, kubeconfigId: 'demo-kubeconfig', configs: 'yaml/gpmall.yaml')
        }

      }
    }
  1. 添加凭证方式:可用的
  2. web界面内容:
    在这里插入图片描述
    在这里插入图片描述
  3. 对应Jenkinsfile文件内容:
代码语言:shell
复制
        stage('deploy to dev') {
             steps {
                 container ('maven') {
                      withCredentials([
                          kubeconfigFile(
                          credentialsId: env.KUBECONFIG_CREDENTIAL_ID,
                          variable: 'KUBECONFIG')
                          ]) {
                          sh 'envsubst < ./gpmall.yaml | kubectl apply -f -'
                      }
                 }
             }
        }

看在作者努力排坑+分享的份上,给个三连吧!!!

看在作者努力排坑+分享的份上,给个三连吧!!!

看在作者努力排坑+分享的份上,给个三连吧!!!

参考资料

https://kubesphere.com.cn/docs/devops-user-guide/examples/a-maven-project/

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • 坑位!!!
    • 坑位1(配置 Kubernetes默认存储类型)
      • 坑位2(java.lang.NullPointerException)
      • 排坑!!!
        • 排坑位1
          • 排坑位2
          • 参考资料
          相关产品与服务
          容器服务
          腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档