首次使用 Trusted Cloud时,您会获得一个新的空组织。如需使用此组织,您需要为其配置项目、网络和其他资源。 Trusted Cloud提供了多种用于配置组织的选项(包括 Terraform 模块),可帮助您快速设置您和用户开始使用时所需的资源。
本页面适用于需要在 Trusted Cloud中配置新组织的管理员。
在阅读本指南之前,您应该:
了解Trusted Cloud概览中介绍的基本 Trusted Cloud概念。
了解 Trusted Cloud 资源层次结构,包括组织、文件夹和项目。
了解 Virtual Private Cloud (VPC) 在 Trusted Cloud中的运作方式。
熟悉以下 Trusted Cloud产品和服务以及它们的用途:
如果您打算使用 Terraform 配置您的组织,请熟悉 Terraform 的工作原理。
如果您已经熟悉 Google Cloud 的类似设置,我们建议您查看 Trusted Cloud 与 Google Cloud 之间的主要差异。
准备工作
确保所有设置选项都符合以下要求:
- 为您的组织配置了身份提供方 (IdP),并且您可以使用管理员 ID 登录。
- 您已设置 Google Cloud CLI 以与 Trusted Cloud搭配使用。即使您打算使用 Terraform 进行设置,Google Cloud CLI 也非常适合用于通过命令行验证设置,以及执行其他管理任务。
我们还强烈建议您在进行完整的企业配置之前,先查看Trusted Cloud by S3NS 设置引导式流程。虽然并非所有部分都与Trusted Cloud相关(例如,您无法自行创建组织),但该部分提供了有关设置基础设施的实用背景信息、指导和最佳实践。我们提供的 Terraform 模块也反映了相同的最佳实践。请注意,在执行引导式流程时, Trusted Cloud 控制台中的企业配置在 Trusted Cloud中不可用。
配置选项
在 Trusted Cloud上设置企业组织有三种可能的选项:
- (推荐)使用我们提供的 Terraform 模块来设置组织。这是 Google Cloud 的云基础配置的调整后版本,遵循了设置企业级组织的最佳实践。
- (仅限高级用户)如果您在 Google Cloud 中使用过现有的 Terraform“着陆区”模块,则可以对其进行调整并重复使用,以在 Trusted Cloud中配置组织。如果您选择此选项,应仔细查看两个环境之间的差异,包括概要差异和您要使用的任何服务的差异。
- 您可以按照相关文档中的说明,使用 Google Cloud CLI 或 Trusted Cloud 控制台手动创建项目、网络、政策和其他资源。您可以使用此方法来实现最小配置(如下一部分所述)或完整的企业设置,并使用我们建议的配置或您自己的首选版本。
最少的配置工作量
如果您只想在完全设置新组织之前先试用一下,可以添加一个项目和 Virtual Private Cloud (VPC) 网络。此基本部署足以探索可用服务并运行快速入门教程:
- 在您的组织中创建项目。
使用以下命令在项目中创建并配置一个名为
default
的 VPC 网络:gcloud compute networks create default gcloud compute firewall-rules create default-allow-internal --allow=tcp:1-65535,udp:1-65535,icmp --source-ranges 10.128.0.0/9 gcloud compute firewall-rules create default-allow-ssh --allow=tcp:22 gcloud compute firewall-rules create default-allow-rdp --allow=tcp:3389 gcloud compute firewall-rules create default-allow-icmp --allow=icmp
没有默认网络
如果您熟悉 Google Cloud,可能不需要创建网络:在 Google Cloud 中,系统会为每个项目自动创建默认 VPC 网络(具有预先填充的 IPV4 防火墙规则)。但是, Trusted Cloud项目没有默认网络,因此您需要自行创建一个,以便您和团队成员开始使用。
建议的配置
以下是使用我们提供的 Terraform 部署的配置,这是 Google Cloud 的云基础配置的调整后版本。如果您选择使用 Trusted Cloud 控制台或 Google Cloud CLI 手动创建自己的资源和政策,也可以将此部分作为准则。
虽然此配置代表了我们发现适用于大多数组织的许多最佳实践,但可能无法满足您的所有组织或技术要求。请仔细查看此部分(以及 Terraform 本身,如果使用),并根据需要自定义配置。
以下部分介绍了我们建议的配置中的各种资源。
组织
在组织的顶层,我们建议的配置包含两个文件夹。第一个文件夹包含项目,其中包含组织共享的通用资源,例如 Cloud KMS 和 Logging 资源。另一个文件夹用于存储与网络相关的项目,例如组织的 Cloud DNS Hub,以及每个环境(开发、非生产和生产)的基础网络和受限网络共享 VPC 宿主项目。
example-organization
└── fldr-common
├── s3ns:prj-c-kms
├── s3ns:prj-c-logging
└── fldr-network
├── s3ns:prj-net-dns
├── s3ns:prj-d-shared-base
├── s3ns:prj-d-shared-restricted
├── s3ns:prj-n-shared-base
├── s3ns:prj-n-shared-restricted
├── s3ns:prj-p-shared-base
└── s3ns:prj-p-shared-restricted
环境
我们建议的配置针对每个环境(生产、非生产和预演)都创建一个文件夹。每个文件夹都包含一个项目,可供 Cloud KMS 用于与此环境专门关联的密钥管理资源。
example-organization
└── fldr-development
├── s3ns:prj-d-kms
└── fldr-nonproduction
├── s3ns:prj-n-kms
└── fldr-production
├── s3ns:prj-p-kms
网络拓扑
在标准配置中,该配置为每个环境(开发、非生产和生产)提供一个共享 VPC 网络,并设置合理的安全基准。此配置包括:
- (可选)开发、非生产和生产的子网示例(包括次要范围)。
- 创建用于允许远程访问虚拟机的分层防火墙政策。
- 创建用于允许负载均衡健康检查的分层防火墙政策。
- 创建用于允许 Windows KMS 激活的分层防火墙政策。
- 虚拟机/加密磁盘
- 应用默认 Cloud DNS 政策,并开启 DNS 日志记录和入站查询转发。
项目
每个环境都可以有多个连接到上一部分中所述的共享 VPC 网络的服务项目。如果您部署此配置且不进行修改,我们提供的 Terraform 会创建以下一组项目。项目会分组到每个环境中的文件夹,其中每个文件夹都与特定业务单元相关联。对于每个业务单元,系统会使用 Cloud Build 触发器、应用基础设施代码的证书签名请求 (CSR) 和用于存储状态的 Cloud Storage 存储桶创建共享 infra-pipeline
项目。
example-organization/
└── fldr-development
└── fldr-development-bu1
├── s3ns:prj-d-bu1-sample-floating
├── s3ns:prj-d-bu1-sample-base
├── s3ns:prj-d-bu1-sample-restrict
├── s3ns:prj-d-bu1-sample-peering
└── fldr-development-bu2
├── s3ns:prj-d-bu2-sample-floating
├── s3ns:prj-d-bu2-sample-base
├── s3ns:prj-d-bu2-sample-restrict
└── s3ns:prj-d-bu2-sample-peering
└── fldr-nonproduction
└── fldr-nonproduction-bu1
├── s3ns:prj-n-bu1-sample-floating
├── s3ns:prj-n-bu1-sample-base
├── s3ns:prj-n-bu1-sample-restrict
├── s3ns:prj-n-bu1-sample-peering
└── fldr-nonproduction-bu2
├── s3ns:prj-n-bu2-sample-floating
├── s3ns:prj-n-bu2-sample-base
├── s3ns:prj-n-bu2-sample-restrict
└── s3ns:prj-n-bu2-sample-peering
└── fldr-production
└── fldr-production-bu1
├── s3ns:prj-p-bu1-sample-floating
├── s3ns:prj-p-bu1-sample-base
├── s3ns:prj-p-bu1-sample-restrict
├── s3ns:prj-p-bu1-sample-peering
└── fldr-production-bu2
├── s3ns:prj-p-bu2-sample-floating
├── s3ns:prj-p-bu2-sample-base
├── s3ns:prj-p-bu2-sample-restrict
└── s3ns:prj-p-bu2-sample-peering
└── fldr-common
├── s3ns:prj-c-bu1-infra-pipeline
└── s3ns:prj-c-bu2-infra-pipeline
日志记录和监控
建议的配置的最后一步是在组织的通用日志记录项目中配置日志存储桶和 Pub/Sub 日志接收器。必要时会启用所需的 API。在组织级层配置非拦截汇总接收器,以将日志条目路由到包含日志存储桶的通用项目。如需详细了解此配置的工作原理,请参阅集中式日志存储。
您和您的组织成员可以通过 Trusted Cloud 控制台或通过将订阅连接到 Pub/Sub 主题(采用拉取模式)在 Logs Explorer 中查看日志。 Trusted Cloud 中的 Cloud Logging 仅将日志保留三十天。
使用 Terraform 配置组织
我们建议您使用 Terraform 来配置组织,尤其是您从未在 Google Cloud 上设置过组织的情况下。所提供的 Terraform 会自动设置默认文件夹、项目、集中日志记录和监控、网络等,如建议的配置中所述。您可以在部署前或部署后根据自己的需求调整此配置。
Terraform 是根据 Google Cloud 的云基础配置进行调整的。您可以在云基础模块的仓库中详细了解这些模块,但请注意,并非所有信息都与此Trusted Cloud特有的设置相关。
在开始之前,请确保您已安装 Terraform 工具。由于 Trusted Cloud中不支持 Cloud Shell,因此请按照说明在本地安装 Terraform。
下载 Terraform 文件。
如需下载最新的 Terraform 资产,请与您的支持团队或客户支持团队联系。从 GitHub 下载公开的 Terraform 即将推出!
在部署配置之前,请查看(并根据需要修改)为组织部署的内容,如建议的配置中所述。除了配置之外,提供的 Terraform 还包含一个用于部署以下内容的引导模块:
- 包含以下内容的
s3ns:prj-b-seed
项目:- Terraform 状态存储桶
- Terraform 用于在 Trusted Cloud中创建新资源的自定义服务账号
应用 Terraform
如需应用 Terraform,请执行以下操作:
- 前往包含 Terraform 配置文件的目录。
打开并修改提供的
terraform.tfvars
文件,为以下参数指定您选择的值:org_id = ORG_ID billing_account = BILLING_ACCOUNT billing_project = moonrise-replace5ee46da7eba742199d747bf5477bed08moonrise-replace:BILLING_PROJECT prefix = FOLDER_PREFIX
替换以下内容:
ORG_ID
:组织的唯一 IDBILLING_ACCOUNT
:您的结算账号BILLING_PROJECT
:组织的结算项目(有时称为其配额项目)FOLDER_PREFIX
(可选):您要应用于所有唯一文件夹和项目名称的前缀
部署配置。
terraform init terraform apply
排查使用现有资源部署 Terraform 时的问题
如果下载的 Terraform 配置尝试创建已存在的资源,Terraform 会退出并显示 409
错误代码。如需解决这些错误,您可以使用 Trusted Cloud 控制台或 gcloud CLI 删除资源,然后重新应用 Terraform 配置。或者,如果这些资源至关重要且无法删除,您可以将资源导入 Terraform 状态。
验证设置
如需验证您的设置,我们建议您先使用 Google Cloud CLI 或 Trusted Cloud 控制台检查您的文件夹和项目结构是否已正确设置。
然后,您可以使用选择的工作负载,或者按照我们的某些快速入门教程,尝试在某个服务项目中部署应用工作负载。这些简短教程可帮助您快速在 Trusted Cloud上启动并运行简单示例。如需了解详情,请参阅后续步骤。
后续步骤
通过尝试快速入门教程,探索您的组织并验证您的设置。以下这些建议可帮助您顺利入门:
- 在 Compute Engine 中创建 Linux 虚拟机实例
- 创建 GKE 集群并部署工作负载
- 在 BigQuery 中查询公共数据集(但请注意,您需要预先上传数据集才能按照本教程操作)
扩展和自定义初始设置,包括:
使用 IAM 向用户和群组授予权限。