注意:
- 此教程位于 Oracle 提供的免费实验室环境中。
- 它对 Oracle Cloud Infrastructure 身份证明、租户和区间使用示例值。完成实验室后,请使用特定于云环境的那些值替换这些值。
在 Oracle Cloud Native Environment 上升级 Kubernetes 版本
简介
最佳实践建议在新发行版发布后尽快升级 Kubernetes 集群。尽快升级的原因包括:
- 应用最新的安全修复
- 访问稳定性和性能改进
- 获取新功能、API 和功能
本教程演示如何升级 Oracle CNE 集群上使用的 Kubernetes 版本。
有关 Oracle CNE 的更多信息,请参阅当前的发行文档网站。
目标
在本教程中,您将学习:
- 升级部署在集群中的 Kubernetes 版本
先决条件
-
最少一个 Oracle Linux 实例
-
每个系统都应安装 Oracle Linux 并配置以下各项:
- 具有 sudo 访问权限的 Oracle 用户帐户(在安装期间使用)
- 主机之间基于密钥的 SSH(也称为无密码 SSH)
- 工作的 KVM libvirt 环境。
部署 Oracle Cloud Native Environment
注:如果在您自己的租户中运行,请阅读 linux-virt-labs
GitHub 项目 README.md ,并在部署实验室环境之前完成先决条件。
-
在 Luna 桌面上打开一个终端。
-
克隆
linux-virt-labs
GitHub 项目。git clone https://github.com/oracle-devrel/linux-virt-labs.git
-
转到工作目录。
cd linux-virt-labs/ocne2
-
安装所需的集合。
ansible-galaxy collection install -r requirements.yml
-
部署实验室环境。
ansible-playbook create_instance.yml -e localhost_python_interpreter="/usr/bin/python3.6" -e install_ocne_rpm=true
空闲实验室环境需要额外的变量
local_python_interpreter
,该变量为在 localhost 上运行的播放设置ansible_python_interpreter
。此变量是必需的,因为环境为 Python 的 Oracle Cloud Infrastructure SDK 安装 RPM 程序包,该程序包位于 python3.6 模块下。默认部署配置使用 AMD CPU 和 Oracle Linux 8。要使用 Intel CPU 或 Oracle Linux 9,请将
-e instance_shape="VM.Standard3.Flex"
或-e os_version="9"
添加到部署命令。重要提示:等待剧本成功运行并进入暂停任务。在手册的这一阶段,Oracle CNE 的安装已完成,实例已准备就绪。记下之前的播放,该播放会打印其部署的节点的公共和专用 IP 地址以及运行实验室时所需的任何其他部署信息。
启动 Kubernetes 集群
我们将使用基于 Kubernetes v1.30 的单个控制层和 worker 节点集群,并计划升级到 1.31。
-
打开终端并通过 SSH 连接到 ocne 实例。
ssh oracle@<ip_address_of_node>
-
启动集群。
ocne cluster start --version 1.30 -n 1 -w 1 -u false
-
为新群集设置 kubeconfig 环境变量。
export KUBECONFIG=$(ocne cluster show -C ocne)
其中, ocne 是群集的缺省名称,除非指定。然后,可以使用
kubectl get nodes
显示这两个节点并验证它们是否正在运行版本 1.30。
更新 Kubernetes
Kubernetes 要求您一次更新一个版本,因此,如果您需要升级多个版本,则需要为每个版本重复这些步骤。
-
暂存下一个 Kubernetes 版本。
ocne cluster stage -v 1.31
-
获取集群节点的列表。
kubectl get nodes
-
检查是否有可用更新。
watch ocne cluster info
监视直到看到输出中报告的 nodes with available updates:2 。输入
Ctrl-c
退出 watch 命令。 -
更新控制层节点。
必须先更新群集中的所有控制层节点。
ocne node update -N ocne-control-plane-1
在命令完成后,可能需要几分钟才能完成更新。可以使用
kubectl get nodes
检查控制层节点的版本。 -
更新 Worker 节点。
ocne node update -N ocne-worker-1 --delete-emptydir-data
如果收到升级不可用或集群无法执行升级的警告,请重复该命令。此小型集群可能需要几分钟才能稳定下来,然后才能更新 worker 节点。
worker 节点需要
--delete-emptydir-data
选项,因为ui
云池使用emptyDir
卷在其正在运行的容器之间共享内容。 -
验证群集节点的版本。
kubectl get nodes
重复该命令,直到输出显示每个节点都处于预期版本。
后续步骤
了解如何将部署在 Oracle CNE 集群上的最新 Kubernetes 版本保持不变,从而确保集群始终使用最新的安全性和稳定性修复程序进行更新。
相关链接
更多学习资源
浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Upgrade the Kubernetes Version on Oracle Cloud Native Environment
G32058-01
Copyright ©2025, Oracle and/or its affiliates.