すべてのプロダクト
Search
ドキュメントセンター

CDN:ROSを使用したリソース統合

最終更新日:Sep 09, 2024

Resource Orchestration Service (ROS) を使用して、Alibaba Cloud CDNのAPI操作を呼び出すことができます。 このトピックでは、ROSテンプレートを作成し、そのテンプレートを使用してAlibaba Cloud CDNにドメイン名を自動的に追加する方法について説明します。

サポートされるリソース

ROSは、クラウドコンピューティングリソースの管理を簡素化するAlibaba Cloudサービスです。 Elastic Compute Service (ECS) やApsaraDB RDSインスタンスなど、使用するクラウドコンピューティングリソース、およびリソース間の関係を記述するテンプレートを作成できます。 ROSは、テンプレートに基づいてすべてのリソースを自動的に作成および構成し、自動デプロイとO&Mを実装します。詳細については、「」をご参照ください。ROSとは何ですか?

ROSを使用して、Alibaba Cloud CDNのAPI操作を呼び出すことができます。 ROSを使用して調整できるリソースには、通常のリソースとデータリソースがあります。

権限

この例では、ドメイン名を追加する必要があります。 デフォルトでは、Resource Orchestration ServiceはROSコンソールにログインしたユーザーの資格情報を使用します。 ユーザーには、次の権限を付与する必要があります。

  • AliyunCDNFullAccess: Alibaba Cloud CDNリソースへのフルアクセス。

Alibaba Cloudアカウントには、すべてのAPI操作に対する権限があります。 Alibaba Cloudアカウントを使用してAPI操作を呼び出すと、セキュリティリスクが発生する可能性があります。 RAMユーザーとしてAPI操作を呼び出すか、ルーチンのO&Mを実行することを強くお勧めします。 RAMユーザーとしてAPI操作を呼び出す前に、ビジネス要件に基づいて必要な権限をRAMユーザーに付与します。 RAMユーザーには、Alibaba Cloud CDNリソースを管理する権限が必要です。 詳細については、「Alibaba Cloud CDNシステムポリシー」をご参照ください。

手順

  1. ROSコンソールにログインします。 上部のナビゲーションバーで、リージョンドロップダウンリストからリージョンを選択します。

  2. 左側のナビゲーションペインで、[スタック] をクリックします。 [スタック] ページで、[スタックの作成] > [ROSを使用] を選択します。

    • テンプレートの指定: [既存のテンプレートの選択] を選択します。

    • テンプレートインポート方法: [テンプレートコンテンツの入力] を選択します。

  3. テンプレートの内容: [ROS] を選択し、コードを入力します。

    ドメイン名の追加方法の構文、説明、および例の詳細については、「ALIYUN::CDN:: domain」をご参照ください。

    YAML形式

    ROSTemplateFormatVersion: '2015-09-01'
    Parameters:
     CdnType:
      AllowedValues:
      - video
      - download
      - web
      - liveStream
      Description: 'The business type. Valid values: web, download, video, livestream,
       and httpsdelivery. web: acceleration of images and small files download. download:
       acceleration of large file downloads. video: live streaming acceleration. httpsdelivery:
       SSL acceleration for HTTPS.'
      Type: String
     CheckUrl:
      Description: The validation of the origin.
      Type: String
     DomainName:
      Description: The CDN domain name. Wildcard domain names that start with periods
       (.) are supported. For example, .example.com.
      Type: String
     ResourceGroupId:
      Description: The ID of the resource group. If this is left blank, the system automatically
       fills in the ID of the default resource group.
      Type: String
     Scope:
      Description: 'Valid values: domestic, overseas, and global. Default value: domestic.
       The setting is supported for users outside mainland China, users in mainland
       China of level 3 or above.'
      Type: String
     Sources:
      Description: The list of origin URLs.
      Type: String
     Tags:
      Description: Tags to attach to instance. Max support 20 tags to add during create
       instance. Each tag with two properties Key and Value, and Key is required.
      MaxLength: 20
      Type: Json
     TopLevelDomain:
      Description: The top-level domain, which can only be configured by users on the
       whitelist.
      Type: String
    Resources:
     Domain:
      Properties:
       CdnType:
        Ref: CdnType
       CheckUrl:
        Ref: CheckUrl
       DomainName:
        Ref: DomainName
       ResourceGroupId:
        Ref: ResourceGroupId
       Scope:
        Ref: Scope
       Sources:
        Ref: Sources
       Tags:
        Ref: Tags
       TopLevelDomain:
        Ref: TopLevelDomain
      Type: ALIYUN::CDN::Domain
    Outputs:
     Cname:
      Description: The CNAME generated for the CDN domain.You must add a CNAME record
       with your DNS provider to map the CDN domain name to the CNAME.
      Value:
       Fn::GetAtt:
       - Domain
       - Cname
     DomainName:
      Description: The CDN domain name. Wildcard domain names that start with periods
       (.) are supported. For example, .example.com.
      Value:
       Fn::GetAtt:
       - Domain
       - DomainName

    JSON 形式

    {
     "ROSTemplateFormatVersion": "2015-09-01",
     "Parameters": {
      "CheckUrl": {
       "Type": "String",
       "Description": "The validation of the origin."
      },
      "ResourceGroupId": {
       "Type": "String",
       "Description": "The ID of the resource group. If this is left blank, the system automatically fills in the ID of the default resource group."
      },
      "Scope": {
       "Type": "String",
       "Description": "Valid values: domestic, overseas, and global. Default value: domestic. The setting is supported for users outside mainland China, users in mainland China of level 3 or above."
      },
      "DomainName": {
       "Type": "String",
       "Description": "The CDN domain name. Wildcard domain names that start with periods (.) are supported. For example, .example.com."
      },
      "CdnType": {
       "Type": "String",
       "Description": "The business type. Valid values: web, download, video, livestream, and httpsdelivery. web: acceleration of images and small files download. download: acceleration of large file downloads. video: live streaming acceleration. httpsdelivery: SSL acceleration for HTTPS.",
       "AllowedValues": [
        "video",
        "download",
        "web",
        "liveStream"
       ]
      },
      "TopLevelDomain": {
       "Type": "String",
       "Description": "The top-level domain, which can only be configured by users on the whitelist."
      },
      "Sources": {
       "Type": "String",
       "Description": "The list of origin URLs."
      },
      "Tags": {
       "Type": "Json",
       "Description": "Tags to attach to instance. Max support 20 tags to add during create instance. Each tag with two properties Key and Value, and Key is required.",
       "MaxLength": 20
      }
     },
     "Resources": {
      "Domain": {
       "Type": "ALIYUN::CDN::Domain",
       "Properties": {
        "CheckUrl": {
         "Ref": "CheckUrl"
        },
        "ResourceGroupId": {
         "Ref": "ResourceGroupId"
        },
        "Scope": {
         "Ref": "Scope"
        },
        "DomainName": {
         "Ref": "DomainName"
        },
        "CdnType": {
         "Ref": "CdnType"
        },
        "TopLevelDomain": {
         "Ref": "TopLevelDomain"
        },
        "Sources": {
         "Ref": "Sources"
        },
        "Tags": {
         "Ref": "Tags"
        }
       }
      }
     },
     "Outputs": {
      "DomainName": {
       "Description": "The CDN domain name. Wildcard domain names that start with periods (.) are supported. For example, .example.com.",
       "Value": {
        "Fn::GetAtt": [
         "Domain",
         "DomainName"
        ]
       }
      },
      "Cname": {
       "Description": "The CNAME generated for the CDN domain.You must add a CNAME record with your DNS provider to map the CDN domain name to the CNAME.",
       "Value": {
        "Fn::GetAtt": [
         "Domain",
         "Cname"
        ]
       }
      }
     }
    }
  4. [次へ] をクリックします。

  5. [パラメーターの設定] ステップでパラメーターを設定し、[作成] をクリックします。

  6. 作成したスタックを表示します。

    image

  7. スタックが作成されたら、API操作を呼び出すか、SDKを使用するか、Alibaba Cloud CDNコンソールにログインしてドメイン名を表示します。

    image