一、KubeSphere 介绍
KubeSphere 是在 Kubernetes 之上构建的面向云原生应用的分布式操作系统,完全开源,支持多云与多集群管理,提供全栈的 IT 自动化运维能力,简化企业的 DevOps 工作流。它的架构可以非常方便地使第三方应用与云原生生态组件进行即插即用 (plug-and-play) 的集成。 kubesphere有以下功能:
- 多云与多集群管理
- Kubernetes 资源管理
- DevOps
- 应用生命周期管理
- 微服务治理(服务网格)
- 日志查询与收集
- 服务与网络
- 多租户管理
- 监控告警
- 事件与审计查询
- 存储管理
- 访问权限控制
- GPU 支持
- 网络策略
- 镜像仓库管理
- 安全管理等
二、准备相关安装文件
全面卸载(可选):
当需要卸载kubesphere时,如果要全面卸载它,需要准备相关脚本
https://github.com/kubesphere/ks-installer/edit/master/scripts/kubesphere-delete.sh
前提需要有默认storageclass
k8s持久化存储之OpenEBS
另外两个资源文件
https://github.com/kubesphere/ks-installer/releases/download/v3.2.1/kubesphere-installer.yaml
https://github.com/kubesphere/ks-installer/releases/download/v3.2.1/cluster-configuration.yaml
由于我的环境不是用kubeadm安装,而是二进制安装,所以对于https请求有证书问题就需要高版本的python处理,所以我自己重新构建了ks-installer镜像
leellun/ks-installer:v3.2.1
修改kubesphere-installer.yaml里面的ks-installer镜像为leellun/ks-installer:v3.2.1
三、安装
kubectl create -f kubesphere-installer.yaml
kubectl create -f cluster-configuration.yaml
检查安装
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l 'app in (ks-install, ks-installer)' -o jsonpath='{.items[0].metadata.name}') -f
结果:
Collecting installation results ...
#####################################################
### Welcome to KubeSphere! ###
#####################################################
Console: http://192.168.66.10:30880
Account: admin
Password: P@88w0rd
安装服务查看:
使用 kubectl get pod --all-namespaces
查看所有 Pod 在 KubeSphere 相关的命名空间是否正常运行。如果是正常运行,请通过以下命令来检查控制台的端口(默认为 30880,可以通过默认帐户和密码 (admin/P@88w0rd
) 访问 Web 控制台。):
kubectl get svc/ks-console -n kubesphere-system
重置密码:
kubectl patch users <USERNAME> -p '{"spec":{"password":"<YOURPASSWORD>"}}' --type='merge' && kubectl annotate users <USERNAME> iam.kubesphere.io/password-encrypted-
kubectl patch users admin -p '{"spec":{"password":"P@88w0rd"}}' --type='merge' && kubectl annotate users admin iam.kubesphere.io/password-encrypted-
可以直接在http://192.168.66.10:30880访问