IBM Cloud Docs
在 IBM Cloud® VPC 上部署 SAP ASE Sybase 独立虚拟服务器实例

在 IBM Cloud® VPC 上部署 SAP ASE Sybase 独立虚拟服务器实例

可以使用 Terraform 脚本在 VPC 中创建 VPC 和 SAP ASE Sybase 数据库单一 VSI 基础架构。 Terraform 脚本使用你提供的信息,然后调用 Ansible playbooks 在指定的 VPC 中创建 SAP 架构。

您可以使用 Schematics 用户界面调用 Terraform 脚本,在 VPC 中创建 VPC 和 SAP ASE Sybase 数据库单一 VSI 基础架构。 Terraform 脚本使用你提供的信息,然后调用 Ansible playbooks 在指定的 VPC 中创建 SAP 架构。

IBM Cloud® 上的 Terraform 可实现 IBM Cloud VPC 基础架构资源的可预测和一致调配,从而使您能够快速构建复杂的云环境。IBM Cloud VPC 基础架构由 SAP 认证的硬件组成,采用英特尔®至强 CPU 和其他英特尔®技术。

有关 IBM Cloud 上的 Terraform 的更多信息,请参阅 IBM Cloud 上的 Terraform 入门

要使用 Terraform 创建资源,可以使用 Terraform 配置文件来描述所需的 IBM Cloud 资源以及配置方式。 Terraform 会根据配置创建执行计划,并描述创建资源时需要运行的操作。 您可以查看执行计划、更改计划或运行计划。

您有两种部署方法可供选择:

  • 在 CLI 中,在 bastion 服务器上运行 Terraform 脚本。
  • 在 Schematics 用户界面中,可从 IBM Cloud 仪表板菜单访问。

先决条件

使用自动化解决方案 Automate SAP 堡垒服务器 – SAP 媒体存储库 部署的部署服务器(堡垒服务器)必须存在于同一个 VPC 和同一个地域中。 该子网和安全组应与为 SAP 系统 VSI 配置的子网和安全组相同。

创造了什么

这些脚本可在现有 VPC 中自动部署虚拟基础架构资源和 SAP 架构的调配流程。 在 VPC 虚拟服务器实例箱上配置了 SAP ASE Sybase DB。 脚本分两个阶段运行。

在第一阶段,配置一个虚拟服务器实例,该实例具有 SAP 认证的存储和网络配置(与部署服务器(堡垒服务器)相同的子网和安全组)。

在第二阶段,调用 Ansible playbooks,并在 SAP ASE Sybase VSI box 上安装 SAP ASE Sybase 2.0 架构。

IBM Cloud VPC SAP 经过认证的服务器配置文件可以部署该解决方案。

x86-64 实例简介

在配置过程中 IBM Cloud® Virtual Servers for Virtual Private Cloud,您可以从以下系列配置文件中进行选择:

  • 计算优化
  • 均衡
  • 已优化内存
  • 极高内存优化
  • 超高内存优化

配置文件是实例属性的组合,如 vCPUs, 内存数量、网络带宽和默认带宽分配。 属性定义了所配置的虚拟服务器实例的大小和功能。 在 IBM Cloud 控制台中,您可以选择最近使用的配置文件,或单击“查看所有配置文件”选项卡,选择最适合您需要的配置文件。

有关 SAP 配置文件的更多信息,请参阅 SAP NetWeaver VPC 基础架构上的英特尔虚拟服务器认证配置文件

Terraform 脚本使用 input.auto.tfvars 文件中提供的信息,调用 Ansible Playbooks 并部署 SAP ASE Sybase 数据库单一 VSI 和 SAP 架构。

虚拟服务器实例配置

支持以下操作系统:

  • Red Hat Enterprise Linux 8.6 用于 SAP ( amd64 )
  • Red Hat Enterprise Linux 8.4 用于 SAP ( amd64 )
  • SUSE Linux Enterprise Server 15 SP 4 用于 SAP 应用 ( amd64 )
  • SUSE Linux Enterprise Server 15 SP 3 用于 SAP 应用 ( amd64 )

提供的 SSH 密钥用于以根用户身份通过 SSH 访问 VSI。

脚本文件

配置文件和脚本文件可在 GitHub 存储库中找到。

input.auto.tfvars 文件允许自定义输入参数。

所有其他配置文件均已提供,无需修改。

Schematics 部署

使用 Schematics 界面进行部署时,您需要

  • 提供工作区信息。
  • 提供 GitHub 存储库路径。
  • 更新 Schematics 界面中的参数值。 这些参数与 input.auto.tfvars 文件中的参数类似,后者用于通过 CLI 进行部署。

支持

IBM® 不对这些材料提供任何担保,也不提供任何服务或技术支持。 建议您在实际系统中使用从本网站下载的任何资料之前,先仔细检查这些资料。

虽然此处提供的材料未得到 IBM 服务组织的支持,但开发人员欢迎您提出意见,并保留随时修改、重新改编或删除材料的权利。 要报告问题或提供建议或意见,请打开 GitHub 问题。

准备工作

如果同一 VPC 中没有部署服务器(堡垒服务器),请创建一个部署服务器来存储 SAP 工具包。 更多信息,请参阅 自动化 SAP bastion 服务器 - SAP 媒体存储库

  • 登录部署服务器,验证 Terraform 和 Ansible 是否已安装。
  • 从 SAP Portal 将 SAP 工具包下载到部署服务器。 记下下载位置。 Ansible 解压所有压缩包。 更多信息,请参阅 自述文件
  • 创建或检索 IBM Cloud API 密钥。 API 密钥用于与 IBM Cloud 平台进行身份验证,并确定您使用 IBM Cloud 服务的权限。
  • 创建或获取 SSH 密钥 ID。 您需要的是 SSH 密钥的 40 位 UUID,而不是 SSH 密钥名称。

过程

  1. 通过 ssh 登录部署服务器(Bastion 服务器)。

  2. https://github.com/IBM-Cloud/sap-ase-db 克隆 GitHub 仓库,然后转到 sap-ase-db 文件夹。

    git clone https://github.com/IBM-Cloud/sap-ase-db.git
    
    cd sap-ase-db
    
  3. 根据现有 VPC 数据自定义 VPC 变量资源的值。 您可以通过更新 input.auto.tfvars 文件来指定您的选项。 您需要一个 40 位 SSH 密钥 ID 用于部署。 附加 SSH 密钥 ID 是可选项。

    必须提供以下输入变量值

    • REGION - SAP HANA 服务器的区域。 请参见 自述文件
    • ZONE - SAP HANA 服务器的区域。 请参见 自述文件
    • VPC - 指定区域内现有 VPC 的名称。
    • SECURITY_GROUP - 同一 VPC 中现有安全组的名称。
    • RESOURCE_GROUP - 用户先前创建的现有资源组的名称。
    • SUBNET - 与 VSI 位于同一地区和区域的现有子网的名称。
    • SSH_KEYS - 允许通过 SSH 连接到 VSI 的 SSH 密钥 UUID 列表。
    • ID_RSA_FILE_PATH - OpenSSH 格式的现有 id_rsa 私钥文件路径,权限为 0600。
    • DB_HOSTNAME - SAP HANA 服务器的主机名,最多 13 个字符。 更多信息,请参阅 自述文件
    ######################################################
    # General & Default VPC variables for CLI deployment
    ######################################################
    
    REGION = "eu-de"
    # Region for the VSI. Supported regions: https://cloud.ibm.com/docs/containers?topic=containers-regions-and-zones#zones-vpc
    # Example: REGION = "eu-de"
    
    ZONE = "eu-de-1"
    #   Availability zone for VSI. Supported zones: https://cloud.ibm.com/docs/containers?topic=containers-regions-and-zones#zones-vpc
    # Example: ZONE = "eu-de-1"
    
    VPC = "ic4sap"
    # EXISTING VPC, previously created by the user in the same region as the VSI. The list of available VPCs: https://cloud.ibm.com/infrastructure/network/vpcs
    # Example: VPC = "ic4sap"
    
    SECURITY_GROUP = "ic4sap-securitygroup"
    # EXISTING Security group, previously created by the user in the same VPC. The list of available Security Groups: https://cloud.ibm.com/infrastructure/network/securityGroups
    # Example: SECURITY_GROUP = "ic4sap-securitygroup"
    
    RESOURCE_GROUP = "wes-automation"
    # EXISTING Resource group, previously created by the user. The list of available Resource Groups: https://cloud.ibm.com/account/resource-groups
    # Example: RESOURCE_GROUP = "wes-automation"
    
    SUBNET = "ic4sap-subnet"
    # EXISTING Subnet in the same region and zone as the VSI, previously created by the user. The list of available Subnets: https://cloud.ibm.com/infrastructure/network/subnets
    # Example: SUBNET = "ic4sap-subnet"
    
    SSH_KEYS = ["r010-8f72b994-c17f-4500-af8f-d05680374t3c", "r011-8f72v884-c17f-4500-af8f-d05900374t3c"]
    # List of SSH Keys UUIDs that are allowed to SSH as root to the VSI. The SSH Keys should be created for the same region as the VSI. The list of available SSH Keys UUIDs: https://cloud.ibm.com/infrastructure/compute/sshKeys
    # Example: SSH_KEYS = ["r010-8f72b994-c17f-4500-af8f-d05680374t3c", "r011-8f72v884-c17f-4500-af8f-d05900374t3c"]
    
    ID_RSA_FILE_PATH = "ansible/id_rsa"
    # The id_rsa private key file path in OpenSSH format with 0600 permissions.
    # This private key is used only during the terraform provisioning and it is recommended to be changed after the SAP deployment.
    # It must contain the relative or absoute path from your Bastion.
    # Examples: "ansible/id_rsa_abap_syb_dst" , "~/.ssh/id_rsa_abap_syb_dst" , "/root/.ssh/id_rsa".
    
    ##########################################################
    # DB VSI variables:
    ##########################################################
    
    DB_HOSTNAME = "ic4sapdb"
    # The Hostname for the DB VSI. The hostname should be up to 13 characters, as required by SAP
    # Example: DB-HOSTNAME = "ic4sapdb"
    
    DB_PROFILE = "bx2-4x16"
    # The DB VSI profile. Supported profiles for DB VSI: bx2-4x16. The list of available profiles: https://cloud.ibm.com/docs/vpc?topic=vpc-profiles&interface=ui
    
    DB_IMAGE = "ibm-redhat-8-6-amd64-sap-applications-6"
    # OS image for DB VSI. Supported OS images for DB VSIs: ibm-redhat-8-6-amd64-sap-applications-6, ibm-redhat-8-4-amd64-sap-applications-10, ibm-sles-15-4-amd64-sap-applications-8, ibm-sles-15-3-amd64-sap-applications-11.
    # The list of available VPC Operating Systems supported by SAP: SAP note '2927211 - SAP Applications on IBM Virtual Private Cloud (VPC) Infrastructure environment' https://me.sap.com/notes/2927211; The list of all available OS images: https://cloud.ibm.com/docs/vpc?topic=vpc-about-images
    # Example: DB-IMAGE = "ibm-sles-15-4-amd64-sap-applications-8"
    
    • 根据 SAP 的要求,主机名最长不得超过 13 个字符。 有关适用于 SAP 系统主机名规则的更多信息,请参阅 SAP Note 611361 - Hostnames of SAP ABAP Platform servers。
    • 自定义 SAP 系统配置。 修改 input.auto.tfvars 文件,指定 SAP ASE Sybase 系统配置,并输入下载的 SAP 工具包的位置。
    # SAP ASE SYBASE configuration
    
    ##########################################################
    # SAP system configuration
    ##########################################################
    
    ASE_SID = "NWD"
    # The SAP ASE system ID. Identifies the entire ASE system.
    # Consists of exactly three alphanumeric characters and the first character must be a letter.
    # Does not include any of the reserved IDs listed in SAP Note 1979280
    
    DATA_DISK_SIZE = "30"
    # The size of data disk, in GB.
    
    ##########################################################
    # Kit Paths
    ##########################################################
    
    KIT_ASE_FILE = "/storage/ASEDB/SP04/PL06/ASESERV160004P_6-80008862.TGZ"
    
  4. 初始化 Terraform CLI。 terraform init

  5. 创建 Terraform 执行计划。 Terraform 执行计划总结了在账户中创建虚拟私有云实例的所有操作。 terraform plan --out plan1

    您需要输入 IBM Cloud API 密钥和 SAP ASE Sybase 主密码。 SAP ASE Sybase 主密码必须至少包含一个数字(0-9)、一个小写字母(a-z)和一个大写字母(A-Z)。 只能包含以下字符:a-z、A-Z、0-9、!、@、#、$、_。不得以数字或下划线 ( _ ) 开头。

  6. 验证计划是否显示了要创建的所有资源,名称和值是否正确。 如果计划需要调整,请编辑 input.auto.tfvars 文件以修正资源,然后再次运行 terraform plan --out plan1

  7. 部署 SAP 解决方案。 terraform apply "plan1"

使用 Schematics 用户界面在单个 VSI 上部署 SAP ASE Sybase 数据库

请按照以下步骤,使用 Schematics 用户界面在现有 VPC 的单个 VSI 上部署 SAP ASE Sybase 数据库。 脚本需要 1-2 个小时才能完成。

  1. 从 IBM Cloud 菜单中选择 Schematics.

  2. 单击创建工作空间

  3. 指定模板页面:

    • 输入您计划部署的代码的 GitHub URL。
    • 选择 自述文件中列出的 Terraform 版本
    • 单击下一步
  4. 工作区详细信息页面:

    • 输入工作区名称。
    • 选择资源组
    • 为工作区选择一个位置。 工作区位置不必与资源位置一致。
    • 单击下一步
  5. 选择“**创建 **”来创建工作区。

  6. 在“工作区设置”页面的“输入变量”部分,查看默认输入变量并提供与解决方案相匹配的值:

    • 您的 IBM Cloud API 密钥。
    • 部署时使用私人 SSH 密钥。
    • (可选)您可以更改 Schematics 和 bastion 服务器上自动生成的 SSH 密钥文件的 ID_RSA_FILE_PATH
    • 您创建并上传到 IBM Cloud 的 SSH 密钥的 ID。 在括号中输入 SSH 密钥 ID,并用引号括起来,例如 [" ibmcloud_ssh_key_UUID1 ", " ibmcloud_ssh_key_UUID2 ",....]
    • 您的资源区域。
    • 您的资源区。
    • 现有 VPC 名称
    • 现有子网名称
    • VPC 名称
    • 子网名称
    • 安全组名称
    • 主机名
    • Profile
    • 图像
    • 数据盘大小
    • SAP 主密码 - 必须至少包含 10 个字符、大写和小写字母、一个数字和一个特殊字符,不能是感叹号。
    • 单击保存更改

    有关参数的详细说明,请查阅 GitHub repo Readme 文件中的“输入参数文件”一章。 此外,将包含敏感信息(如密码、IBM Cloud API、SSH 私钥)的参数标记为“敏感”(在 Readme 中的 "输入参数文件 "中将它们标记为 "敏感")。

  7. 在工作区设置页面,单击生成计划。 等待计划完成。

  8. 单击查看日志以查看 Terraform 执行计划的日志文件。

  9. 单击“应用计划”应用 Terraform 模板。

  10. 查看日志文件,以确保在供应、修改或删除过程中未发生任何错误。

后续步骤

对于 SAP 解决方案,如果要删除使用自动化创建的资源,请转到工作区页面 > 操作,然后选择销毁资源。

如果需要移除 SAP 解决方案自动化创建的资源,请进入项目文件夹并运行 terraform destroy