KubesphereV2.1.1部署在Minikube-kubernetes集群上

道九言 · · 1197 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

1. 背景

  • 想体验KubesphereV2.1.1版本部分功能
  • Kubesphere社区提供的在线DEMO环境比较简单,满足不了我想体验的功能
  • Kubesphere社区ks-installer安装工具相对较重
  • 使用简单的kubernets部署yaml文件搭建一套最简Kubesphere环境(基本核心组件,不包括Jenkins/Monitor/Devops/Sonarqube等增值服务)

2. 环境说明

  • macos版本为:mojave-10.14
  • minikube版本为:v1.5.2
  • kubernetes版本为:v1.14.3
  • kubesphere版本为:v2.1.1

3. 部署文件

所有的部署文件,都是从ks-installer项目抽取,文件名称可能与ks-installer不一样(注意ks-installer版本为v2.1.1)

image.png

部署文件地址:TODO

4. 部署顺序

当时部署顺序是参考社区API架构来安装的,即从上到下,从左到右(最上应该为ks-console),后面安装过程中碰到一些依赖问题,总结后应先安装基础资源,再安装组件会比较好

20190627223641.png

4.1 创建命名空间

命名空间kubesphere-controls-system必须存在,否则会导致ks-account启动失败;原因是ks-account会在kubesphere-controls-system命名空间下创建kubectl-admin-pod

kubectl create ns kubesphere-system
kubectl create ns kubesphere-controls-system

4.2 创建CRD资源

ks-account组件启动时依赖tenant_v1alpha1_workspace.yaml资源,而ks-controller-manager组件启动时依赖app_v1beta1_application.yaml资源

kubectl create -f ks-account/tenant_v1alpha1_workspace.yaml
kubectl create -f ks-controller-manager/app_v1beta1_application.yaml

4.3 创建配置或秘钥资源

kubectl create -f ks-account/ks-account-config-secret.yaml
kubectl create -f ks-apigateway/ks-apigateway-config.yaml
kubectl create -f ks-apigateway/kubesphere-config.yaml
kubectl -n kubesphere-system create configmap ks-router-config --from-file=ingress-controller.yaml=./ks-apiserver/ingress-controller.yaml --from-file=ingress-controller-svc.yaml=./ks-apiserver/ingress-controller-svc.yaml
kubectl create -f ks-console/ks-console-config.yaml
kubectl create -f ks-console/ks-console-context.yaml
kubectl create -f ks-console/sample-bookinfo-configmap.yaml

4.4 创建基础服务

  • 部署单节点redis,组件ks-console和ks-account有使用(在ks-installer工具中使用是redis-ha)
kubectl create -f ks-console/redis-pvc.yaml
kubectl create -f ks-console/redis-svc.yaml
kubectl create -f ks-console/redis-deploy.yaml
  • 部署单节点openldap,组件ks-account有使用(在ks-installer工具中使用是openldap集群)
kubectl create -f ks-account/openldap-deploy.yaml

4.5 创建kubesphere-controls资源

用于nginx-ingress-controller后端检查的default-http-backend服务

kubectl create -f kubesphere-controls-system/kubesphere-controls-system-deploy.yaml

4.6 创建controller-manager资源

用于kubesphere平台crd资源的控制与处理

kubectl create -f ks-controller-manager/ks-controller-manager-deploy.yaml

4.7 创建ks-account服务

kubectl create -f ks-account/ks-account-deploy.yaml

4.8 创建ks-apiserver服务

kubectl create -f ks-apiserver/ks-apiserver-deploy.yaml

4.9 创建ks-apigateway服务

kubectl create -f ks-apigateway/ks-apigateway-deploy.yaml

4.10 创建ks-console服务

kubectl create -f ks-console/ks-console-svc.yaml
kubectl create -f ks-console/ks-console-deploy.yaml

5. 部署效果

  • 组件Pod情况

image.png

  • 页面访问(登录成功后,可以参考社区文档创建用户和角色)

image.png


有疑问加站长微信联系(非本文作者)

本文来自:Segmentfault

感谢作者:道九言

查看原文:KubesphereV2.1.1部署在Minikube-kubernetes集群上

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

1197 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传