在 Oracle OKE 上部署 KubeSphere
本文演示在 Oracle Kubernetes Engine 上部署 KubeSphere 的步骤。
创建 Kubernetes 集群
-
在 OKE 上创建一个标准的 Kubernetes 集群是安装 KubeSphere 的前提条件。在导航栏中,请参考下图创建集群。
-
在弹出窗口中,选择快速创建并点击启动工作流。
备注
本示例演示快速创建,Oracle Cloud 通过此模式会为集群自动创建所必需的资源。如果您选择定制创建,您需要自己创建所有资源(例如 VCN 和负载均衡器子网)。 -
接下来,您需要为集群设置基本信息(可参考以下图例)。完成后,请点击下一步。
备注
- 如需在 Kubernetes 上安装 KubeSphere 3.2.1,您的 Kubernetes 版本必须为:v1.19.x,v1.20.x,v1.21.x 或 v1.22.x(实验性支持)。
- 建议您在可见性类型中选择公共,即每个节点会分配到一个公共 IP 地址,此地址之后可用于访问 KubeSphere Web 控制台。
- 在 Oracle Cloud 中,配置定义了一个实例会分配到的 CPU 和内存等资源量,本示例使用
VM.Standard.E2.2 (2 CPUs and 16G Memory)
。有关更多信息,请参见 Standard Shapes。 - 本示例包含 3 个节点,可以根据需求自行添加节点(尤其是生产环境)。
-
检查集群信息,确认无需修改后点击创建集群。
-
集群创建后,点击关闭。
-
确保集群状态为活动后,点击访问集群。
-
在弹出窗口中,选择 Cloud Shell 访问权限。点击启动 Cloud Shell,并将 Oracle Cloud 所提供的命令复制到 Cloud Shell。
-
在 Cloud Shell 中,粘贴该命令以便之后可以执行 KubeSphere 安装命令。
警告
如果不在 Cloud Shell 中执行该命令,您无法继续进行以下操作。
在 OKE 上安装 KubeSphere
-
使用 kubectl 安装 KubeSphere。直接输入以下命令会默认执行 KubeSphere 的最小化安装。
kubectl apply -f https://github.com/kubesphere/ks-installer/releases/download/v3.2.1/kubesphere-installer.yaml kubectl apply -f https://github.com/kubesphere/ks-installer/releases/download/v3.2.1/cluster-configuration.yaml
-
检查安装日志:
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f
-
安装完成后会输出以下信息:
##################################################### ### Welcome to KubeSphere! ### ##################################################### Console: http://10.0.10.2:30880 Account: admin Password: P@88w0rd NOTES: 1. After logging into the console, please check the monitoring status of service components in the "Cluster Management". If any service is not ready, please wait patiently until all components are ready. 2. Please modify the default password after login. ##################################################### https://kubesphere.io 20xx-xx-xx xx:xx:xx
访问 KubeSphere 控制台
KubeSphere 安装完成后,您可以通过 NodePort
或 LoadBalancer
的模式访问 KubeSphere 的 Web 控制台。
-
通过以下命令查看 KubeSphere 控制台的服务状态。
kubectl get svc -n kubesphere-system
-
输出如下,将类型修改为
LoadBalancer
,从而暴露外部 IP 地址。提示
在上图中,ks-console
服务通过NodePort
的类型暴露,即您可以通过NodeIP:NodePort
的方式直接访问 Web 控制台(任意节点的公共 IP 都可用),值得注意的是需要在防火墙中提前开启端口 30880。 -
执行以下命令编辑服务配置。
kubectl edit svc ks-console -o yaml -n kubesphere-system
-
将
type
字段所对应的值修改为LoadBalancer
,然后保存配置。 -
再次执行以下命令,可以看到 IP 地址现已暴露(如下图)。
kubectl get svc -n kubesphere-system
-
访问此外部 IP 地址并通过默认的帐户和密码 (
admin/P@88w0rd
) 登录 Web 控制台。在集群管理页面,您可以看到集群概览。
启用可插拔组件(可选)
上面的示例演示了默认的最小安装过程,要在 KubeSphere 中启用其他组件,请参阅启用可插拔组件。
反馈
这篇文章对您有帮助吗?
通过邮件接收 KubeSphere 最新的技术博客与产品更新的通知
感谢您的反馈。如果您有关于如何使用 KubeSphere 的具体问题,请在 Slack 上提问。如果您想报告问题或提出改进建议,请在 GitHub 存储库中打开问题。