1. KubeSphere 是什么 1.1. 官方解释 KubeSphere是一个分布式操作系统,提供以Kubernetes为核心的云原生堆栈,旨在成为第三方应用程序的即插即用架构,以促进其生态系统的发展。 KubeSphere还是一个多租户企业级容器平台,具有全栈自动IT操作和简化的DevOps工作流程。它提供了开发人员友好的向导Web UI,可帮助企业构建更健壮且功能丰富的平台,其中包括企业Kubernetes战略所需的最常用功能,例如Kubernetes资源管理,DevOps(CI / CD),应用程序生命周期管理、监控、日志记录、服务网格、多租户、报警和通知,存储和网络、自动定量、访问控制、GPU的支持等,以及多集群管理、网络策略、注册表管理,更多即将发布的安全增强特性。 KubeSphere提供了整合的视图,同时围绕Kubernetes集成了广泛的生态系统工具,并提供一致的用户体验以降低复杂性,并开发了上游Kubernetes中尚不可用的新功能,以减轻Kubernetes的痛苦之处,包括存储,网络 ,安全性和易用性。 KubeSphere不仅允许开发人员和DevOps团队在统一控制台中使用他们喜欢的工具,而且最重要的是,由于这些功能是可插拔和可选的,因此它们与平台松散地结合在一起。 Kubernetes平台,专为DevOps团队量身定制 KubeSphere,以应用为中心的容器平台 极简、易用、灵活、高效 关于KubeSphere,最好最全面最通俗易懂的一篇文章是《一文说清 KubeSphere 容器平台的价值》 https:///zh-CN/blog/kubesphere-values/ 1.2. 个人理解
以上摘抄自https://tech.ifeng.com/c/7u6tUXwXbJU 我觉得,读完以后,醍醐灌顶,茅塞顿开 我们使用Linux的各种发行版(比如:CentOS、Ubuntu等)与Linux内核交互,极大地降低了使用Linux的门槛,而且像Ubuntu还提供了特别漂亮的桌面版,图像界面式的操作使用起来更方便。 我们当然可以使用CMD命令行窗口同Windows系统交互,所有在图形界面上完成的操作都可以通过命令行完成,但是这种操作方式的门槛极高,不利于微软推行Windows桌面操作系统。 同样的,Kubenetes就相当于内核,而KubeSphere就相当于是Kubernetes的发行版。KubeSphere提供极简体验,向导式UI,极大的降低了使用Kubenetes的门槛。 记不住Kubenetes命令不要紧,不会写Dockerfile也没关系,使用KubeSphere图像界面以后一起都变得简单了,而且它是以应用为中心的,极大地解放了运维和开发人员的生产力。 KubeSphere就是Java编程界的Spring。想想看,用了Spring以后你不需要关心各种数据库的连接,各种各样的组件都帮你集成好了,拿来就用。KubeSphere也是一样,开箱即用。 2. 安装 就一条命令,挺简单的,但是我装了两天两夜。期间,虚拟机装了好几遍,KubeSphere也重装了很多遍,一遍就是几个小时…… 话不多说,官方文档(中/英文版)都写的非常清楚,开始安装 由于资源限制,我只能在虚拟机里装,这里选择All-in-One模式 首先,一定一定要看清楚系统要求,之前用CentOS没装成功,试了很多版本,最后老老实实用Ubuntu18.04 https:///download/alternative-downloads 下载安装包 curl -L https:///download/stable/v2.1.1 > installer.tar.gz && tar -zxf installer.tar.gz && cd kubesphere-all-v2.1.1/scripts 在安装前一定一定要记得配置镜像加速器 例如阿里云容器镜像加速器服务 https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors docker_registry_mirrors: - https://docker.mirrors.ustc.edu.cn - https://registry. - https://mirror. ~/kubesphere-all-v2.1.1/conf/common.yaml 执行./install.sh就等着吧(如果要重新安装建议先执行./uninstall.sh) 安装了两天,终于看到期待已久的画面了: 各种验证 https:///docs/installation/verify-components/ https:///docs/zh-CN/installation/verify-components/ 安装完以后,一看资源占用情况,吓一跳,果然只适合企业用户 3. 遇到的问题 https:///docs/troubleshooting/installation/ 1、container in pod is not available Error from server (BadRequest): container "installer" in pod "ks-installer-7d9fb945c7-6tnl9" is not available 检查安装日志 ~/kubesphere-all-v2.1.1/logs 有一个非常好用的命令是 journalctl -xefu kubelet 2、如何重启 3、如何重启Kubernetes集群 我一直有个疑问,如果物理机或者Kubernetes的宿主机宕机或重启以后Kubernetes集群会自动重启吗?如果挂的是master所在的机器,很显然是不会的, 但如果是非master的节点的话不知道没试过。所以,Kubernetes集群的高可用就非常重要了。 https:///docs/setup/production-environment/tools/kubeadm/high-availability/ https:///docs/concepts/workloads/controllers/replicationcontroller/ ReplicationController确保在任何时候都运行指定数量的pod副本。换句话说,ReplicationController确保一个pod或一组同类的pod总是处于可用状态。 我忽略了Kubernetes有很强的自愈能力 自愈(自我修复):重新启动失败的容器,在节点死亡时替换和重新调度容器,杀死那些不响应用户定义的健康检查的容器,并且在它们准备好提供服务之前不会向客户端通知它们。 在后面安装KubeSphere可插拔的功能组件时,更改common.yaml配置文件后,不需要做什么操作,过一会儿会自动更新容器以应用这些改变。 备忘录 kubectl get pods --all-namespaces kubectl get pod -n <namespace> kubectl logs <pod_name> -n <namespace> kubectl delete pod <pod_name> -n <namespace> # 查询systemd日志 journalctl -xefu kubelet kubectl get services kubectl get deployments kubectl cluster-info 4. 文档 https:///docs/installation/intro/ https:///docs/zh-CN https:///docs/zh-CN/installation/intro/ https:///zh-CN/blogs/ https:///zh-CN/blog/kubesphere-values/ https:///docs/zh-CN/introduction/what-is-kubesphere/ https://www./author/kubesphere |
|