ユーザー定義スクリプトは、ユーザーが ECS インスタンスの起動動作をカスタマイズするために Alibaba Cloud が提供するスクリプトの一種です。 詳しくは「ユーザー定義データ 」をご参照ください。

この例では、Linux インスタンスを作成する際に、Linux インスタンスを使用して、ご自身の yum レポジトリ、NTP サービス、および DNS サービスを設定するためのユーザー定義スクリプトの使用方法を実証します。 ユーザー定義スクリプトを使用して、Windows インスタンス用に NTP サービスと DNS サービスを設定することもできます。

シナリオ

Linux インスタンスを開始すると、Alibaba Cloud は、インスタンス用に事前定義された yum レポジトリ、NTP サービス、およびDNS サービスを自動的に設定します。 ただし、ご自身の yum レポジトリ、NTP サービス、および DNS サービスが必要な場合は、ユーザー定義のスクリプトを使用してそれらを実装します。

  • カスタム yum レポジトリを使用している場合は、Alibaba Cloud はそれをサポートしません。
  • カスタム NTP サービスを使用している場合は、Alibaba Cloud はタイムサービスを提供しません。

手順

Linux インスタンスを作成する際に、yum レポジトリ、NTP サービス、およびDNS サービスをカスタマイズするには、次の手順に従います。

  1. ECS コンソールにログインして インスタンスを作成します。 次のようにインスタンスを設定します。
    • ネットワーク種別: VPC を選択します。
    • インスタンス種別: I/O 最適化インスタンスを選択します。
    • オペレーティングシステム: [パブリックイメージ] タブで "CentOS 7.2" を選択します。
  2. インスタンス作成ページのユーザーデータボックスに次のスクリプトを入力します。
    #! /bin/sh
    # Modify DNS
    echo "nameserver 8.8.8.8" | tee /etc/resolv.conf
    # Modify yum repo and update
     rm -rf /etc/yum.repos.d/*
     touch myrepo.repo
    echo "[base]" | tee /etc/yum.repos.d/myrepo.repo
    echo "name=myrepo" | tee -a /etc/yum.repos.d/myrepo.repo
    echo "baseurl=http://mirror.centos.org/centos" | tee -a /etc/yum.repos.d/myrepo.repo
    echo "gpgcheck=0" | tee -a /etc/yum.repos.d/myrepo.repo
    echo "enabled=1" | tee -a /etc/yum.repos.d/myrepo.repo
    yum update -y
    # Modify NTP Server
    echo "server ntp1.aliyun.com" | tee /etc/ntp.conf
    systemctl restart ntpd.service
    
    • 最初の行は、先頭にスペースを入れずに #!, with no leading space. /bin/sh とする必要があります。
    • テキスト全体に不要なスペースや復帰文字を追加しないでください。
    • インスタンスの状況に基づいて、独自の DNS サーバー、NTP サーバー、および yum レポジトリの URL をカスタマイズできます。
    • 前述の内容は CentOS 7.2 に適用されます。 他のイメージを使用している場合は、必要に応じてスクリプトを修正してください。
    • 種別が cloud config のスクリプトで yum レポジトリを定義することもできますが、いずれかの yum レポジトリを事前設定する可能性のある Alibaba Cloud に適合させられるほど柔軟ではないので推奨しません。 yum レポジトリ を変更するために、種別が script のスクリプトを推奨します。
  3. 必要に応じて、[セキュリティ設定] を完了します。
  4. 設定が完了したら、[今すぐ購入] をクリックし、ページの指示に従ってインスタンスを有効化します。
    次の図に示すように、インスタンスが作成されたら、そのインスタンスに接続して実装の詳細を表示できます。

    上の図は、DNS サービス、NTP サービス、および yum レポジトリが正常にカスタマイズされたことを示しています。