创建项目

本文档介绍了如何创建 Google Distributed Cloud (GDC) 隔离项目,以便在组织内对资源进行分组。项目为资源提供生命周期和政策边界,从而允许多个用户群组分别管理 GDC 资源。

本文档面向平台管理员群组中的 IT 管理员、安全工程师和网络管理员等受众群体,他们负责管理组织内的资源。如需了解详情,请参阅 GDC 气隙环境文档的受众群体

准备工作

如需执行本文档中的任务,您必须完成以下操作:

  • 如需获得创建项目所需的权限,请让组织 IAM 管理员向您授予 Project Creator 角色 (project-creator)。

  • 如需使用 gdcloud CLI,请确保您已安装该 CLI。如需了解详情,请参阅安装 gdcloud CLI

  • 如需使用 Terraform,请确保您已对其进行配置。如需了解详情,请参阅配置 Terraform

创建新项目

您可以创建项目,以便对服务资源进行逻辑分组。例如,您可以创建单独的项目来存放开发、测试和生产环境的资源。

如需获得创建项目所需的权限,请让组织 IAM 管理员为您授予 Project Creator 角色。如需详细了解如何授予权限,请参阅为服务身份分配角色绑定部分。

控制台

如需使用 GDC 控制台创建新项目,请完成以下步骤:

  1. 在导航菜单中,点击项目
  2. 点击添加项目
  3. 项目名称字段中,输入项目名称。
  4. 指定要与项目关联的结算账号 ID。如需跟踪项目资源费用,您的项目必须与结算账号相关联。如需了解详情,请参阅创建和关联结算账号
  5. 点击继续
  6. 可选:配置项目的网络功能。取消选中数据渗漏复选框,以停用组织内其他项目的所有出站流量。
  7. 点击继续
  8. 审核部分,查看摘要,然后点击创建
  9. 如需验证新项目是否可用,请在控制台中查看是否显示了以下消息:Project PROJECT_NAME successfully created

gdcloud

如需使用 gdcloud CLI 创建新项目,请完成以下步骤:

  1. 如需创建项目,请运行:

    gdcloud projects create PROJECT_ID
    

    PROJECT_ID 替换为新项目的唯一标识符。

  2. 验证新项目是否可用:

    gdcloud projects list
    

    输出类似于以下内容:

    METADATA.NAME
    my-project
    
  3. 将新项目与结算账号相关联。如需跟踪项目资源费用,您必须拥有与项目相关联的结算账号。

API

如需使用 API 直接创建新项目,请完成以下步骤:

  1. 为全局管理 API 服务器 kubeconfig 文件设置环境变量:

    export KUBECONFIG=GLOBAL_API_SERVER_KUBECONFIG
    

    如果您没有全局管理 API 服务器 kubeconfig 文件,请生成一个

  2. 创建并应用 Project 自定义资源:

    kubectl --kubeconfig=${KUBECONFIG} apply -f - <<EOF
    apiVersion: resourcemanager.global.gdc.goog/v1
    kind: Project
    metadata:
      namespace: platform
      name: PROJECT_ID
    EOF
    

    PROJECT_ID 替换为新项目的唯一标识符。

  3. 验证新项目是否可用:

    kubectl --kubeconfig=${KUBECONFIG} get projects -n platform
    

    输出类似于以下内容:

    NAME           READY
    my-project
    
  4. 将新项目与结算账号相关联。如需跟踪项目资源费用,您必须拥有与项目相关联的结算账号。

Terraform

如需使用 Terraform 创建新项目,请完成以下步骤:

  1. 确保您已配置 Terraform 并设置适当的权限。 如需了解详情,请参阅配置 Terraform 页面。

  2. 在 Terraform 配置文件中,插入以下代码段:

    provider "kubernetes" {
      config_path = "GLOBAL_API_SERVER_KUBECONFIG"
    }
    

    GLOBAL_API_SERVER_KUBECONFIG 替换为全局管理 API 服务器的 kubeconfig 文件的路径。如果您没有此 kubeconfig 文件,请生成一个

  3. 在 Terraform 配置文件(例如 main.tf)中,插入以下代码段:

    resource "kubernetes_manifest" "project-create" {
      manifest = {
        "apiVersion" = "resourcemanager.global.gdc.goog/v1"
        "kind" = "Project"
        "metadata" = {
          "name" = "PROJECT_ID"
          "namespace" = "platform"
        }
      }
    }
    

    PROJECT_ID 替换为新项目的唯一标识符。

  4. 使用 Terraform 应用新项目:

    terraform apply
    
  5. 将新项目与结算账号相关联。如需跟踪项目资源费用,您必须拥有与项目相关联的结算账号。