下载 Terraform 模块并设置变量

在 Oracle Cloud 上托管 Agile PLM 应用程序所需的资源在 Terraform 模块中定义。下载模块并在您可以持久保存、版本和共享的 Terraform 配置文件中定义基础结构资源。这些文件介绍了预配基础结构和维护所需状态所需的步骤。然后,可以执行这些步骤来构建所述的基础设施。

下载 Terraform 模块

GitHub 上提供了此解决方案的 Terraform 模块。您可以在本文档中找到该代码的路径。

  1. 在左侧的导航窗格中,单击下载代码
  2. 单击 Git Repo
  3. 将资料档案库克隆或下载到本地计算机。

设置租户变量

指定 Terraform 连接到 Oracle Cloud Infrastructure 租户所需的参数。

  1. 导航到 Examples 文件夹,然后根据体系结构的类型选择 Single_instanceMultiple_instance
  2. 创建 terraform.tfvars.template 的副本并将该文件重命名为 terraform.tfvars
  3. 在纯文本编辑器中打开 terraform.tfvars,并为其中的变量设置值,如下所示:
    变量 说明
    tenancy_id 租户的 ID。您可以在 Oracle Cloud Infrastructure Web 控制台中找到租户的 ID。从服务菜单中选择 Administration(管理),然后单击 Tenancy Details(租户详细信息)
    user_id 您希望 Terraform 用于通过 Oracle Cloud Infrastructure 进行验证的用户的 ID。

    要查找用户的 ID,请从服务菜单中选择身份,然后选择用户。在列表中找到您的用户名,然后复制其 ID。

    fingerprint 您上载的公共 API 签名密钥的指纹。
    private_key_path 包含专用 API 签名密钥的文件的完整路径和名称。
    region 要在其中创建资源的区域。
    db_admin_password 输入数据库管理员用户的密码。

设置基础结构变量

指定 Terraform 为 Agile PLM 设置基础结构所需的值。为计算实例、网络参数、堡垒主机的属性、组件详细信息和其他常用配置指定 SSH 密钥。例如,您可以指定需要多少个应用程序实例,无论是在单个可用性域中还是在两个可用性域中创建所有资源,还是在数据库系统上需要哪些版本的数据库等。
  1. 导航到与 terraform.tfvars 文件相同的文件夹,然后打开 agile-plm-complex.auto.tfvars
  2. agile-plm-complex.auto.tfvars 中设置变量的值。下表包含简单或复杂体系结构所需的所有变量:
    部分 变量 说明
    公用配置 default_compartment_id 要在其中创建资源的区间的 OCID。

    要查找区间的 OCID,请从服务菜单中选择身份,然后选择区间。在列表中找到所需的区间,并复制其 OCID。

    default_ssh_auth_key 包含拓扑中专用计算实例的 SSH 公共密钥的文件的完整路径和名称。
    ssh_private_key_path 包含拓扑中专用计算实例的 SSH 私有密钥的文件的完整路径和名称。
    default_img_id Agile PLM 定制映像的 OCID。这是您的定制映像的 ID,而不是市场上提供的 ID。如果您没有定制映像,可以将值设置为 null
    default_img_name Agile PLM 定制映像的名称。如果您没有定制映像,可以将值设置为 null
    default_mkp_image_name Agile PLM 的默认 Oracle Cloud Marketplace 映像名称。
    default_mkp_image_version Agile PLM Oracle Cloud Marketplace 映像的版本。
    数据库配置 provision_db 是否预配 Database Classic Cloud Service
    dbcs_db_edition Database Classic Cloud Service 版本的名称。
    dbcs_instance_shape 定义 Database Classic Cloud Service 实例的配置。
    负载平衡器配置 provision_pub_lb 是否预配公共负载平衡器。
    provision_priv_lb 是否预配专用负载平衡器。
    lb_port 负载平衡器的监听端口。
    lb_ca_certificate 负载平衡器根证书的路径。
    lb_private_key 负载平衡器专用证书根密钥的路径。
    lb_public_certificate 负载平衡器公共证书的路径。
    rule_sets 提供规则的执行单元。
    基线主机配置 create_bastion 是否创建堡垒及其所有资源(子网 /NSG/ 计算实例)。
    bastion_image_name 堡垒主机的名称。
    应用程序服务器配置 as_num_inst 应用程序服务器实例数。
    as_instances_shape 应用程序服务器实例的配置,用于指定 CPU 数量和内存分配。
    as_instances_boot_vol_size 应用程序服务器实例的引导卷大小。
    as_aditional_block_volume_size 其他块存储卷大小。
    as_aditional_block_volume_mount_point 应用服务器块存储卷的挂载位置。
    as_volumes_backup_policy 卷备份策略,可以是通用服务级别,例如黄金、白银和青铜。
    as_prod_port 每个主机上第一个受管服务器的监听端口,默认情况下为 8001。
    as_admin_port WebLogic 管理服务器的 HTTP 监听端口,默认情况下为 9001。
    文件管理器服务器配置 fm_num_inst 文件管理器实例数。
    fm_instances_shape 文件管理器实例的配置,用于指定 CPU 数量和内存分配。
    fm_instances_boot_vol_size 文件管理器实例的引导卷大小。
    fm_aditional_block_volume_size 其他块存储卷大小。
    fm_aditional_block_volume_mount_point 文件管理器块存储卷的挂载位置。
    fm_volumes_backup_policy 卷备份策略,可以是通用服务级别,例如黄金、白银和青铜。
    fm_prod_port 每个主机上第一个受管服务器的监听端口,默认情况下为 8001。
    Ansible 服务器配置(如果决定安装)。 create_ansible 是否立即为 Ansible 创建框架,以便稍后安装它。
    DNS 服务器配置 create_dns 接收 Agile PLM 应用程序请求的内部部署或外部 DNS 服务。