本页面介绍如何启用 OS Login 以及如何配置组织政策,以便为专用 GKE Standard 模式 GKE 集群和节点强制执行 OS Login。由于 GKE 会管理节点,因此 OS Login 不适用于 GKE Autopilot 模式集群。
如需了解 OS Login 服务,请参阅有关 OS Login 的 Compute Engine 文档。
概览
您可以在组织中设置 OS Login 限制条件,以确保所有新项目和在这些新项目中创建的虚拟机实例都启用了 OS Login。OS Login 已迅速成为 Google Cloud 安全最佳做法,建议您通过组织政策来强制执行使用。
以下说明详细介绍了如何使用 GKE 中的组织政策启用 OS Login。
准备工作
在开始之前,请确保您已执行以下任务:
- 启用 Google Kubernetes Engine API。 启用 Google Kubernetes Engine API
- 如果您要使用 Google Cloud CLI 执行此任务,请安装并初始化 gcloud CLI。 如果您之前安装了 gcloud CLI,请运行
gcloud components update
以获取最新版本。
更新现有项目以使用 OS Login
在设置组织政策之前,请迁移任何现有的专用集群以使用 OS Login。
将项目中的所有节点池中的版本更新为受支持的版本:
gcloud container clusters upgrade CLUSTER_NAME \ --node-pool=NODE_POOL_NAME \ --cluster-version VERSION
请替换以下内容:
CLUSTER_NAME
:现有集群的名称。NODE_POOL_NAME
:节点池的名称。VERSION
:与 OS Login 兼容的版本,它可以是 1.20.5 版或更高版本。
将
enable-oslogin
标志设置为TRUE
,以默认在所有现有和新的虚拟机实例上启用 OS Login。您无需重新启动节点。gcloud compute project-info add-metadata --metadata enable-oslogin=TRUE
设置 OS Login 组织政策
如需在组织级层设置 OS Login 限制条件,请执行以下操作:
运行以下命令,查找您的组织 ID:
gcloud organizations list
设置 OS Login 组织政策。将
ORGANIZATION_ID
替换为您的组织 ID。gcloud resource-manager org-policies enable-enforce \ compute.requireOsLogin \ --organization=ORGANIZATION_ID
设置组织政策后,将应用以下条件:
- 在所有新项目的项目元数据中,
enable-oslogin
设置为true
。 - 在实例或项目元数据中将
enable-oslogin
设置为false
的更新请求被拒绝。
管理节点访问权限
启用 OS Login 组织政策后,您无需管理 SSH 密钥即可做出授权决策。OS Login 将授权管理移至 Identity and Access Management。如需管理针对节点的 SSH 访问权限,请使用 OS Login。如需了解详情,请参阅设置 OS Login。
后续步骤
- 了解 OS Login 服务。
- 了解如何排查 OS Login 问题。