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

Elastic Compute Service:イメージがインポート要件を満たしているかどうかを確認する

最終更新日:Jan 10, 2024

イメージコンプライアンスツールでは、イメージのオペレーティングシステム設定がインポート要件を満たしているかどうかを確認できます。 たとえば、イメージを使用してフル機能のElastic Compute Service (ECS) インスタンスを作成できるかどうかを確認します。 このトピックでは、イメージがインポート要件を満たしているかどうかを確認する方法について説明します。 この例では、CentOS 7.9 64ビットオペレーティングシステムを含むイメージが使用されています。

背景情報

イメージ作成の効率を向上させるために、ECSのイメージコンプライアンスツールを使用することを推奨します。 イメージコンプライアンスツールは、Linuxサーバー環境の構成アイテムをチェックして、非準拠アイテムを特定し、必要に応じてソリューションを提供できます。

説明

イメージコンプライアンスツールは、FreeBSDとFedora CoreOSを除くLinuxオペレーティングシステムをサポートしています。 イメージコンプライアンスツールは、Windowsオペレーティングシステムをサポートしていません。

手順

  1. イメージファイルを作成するサーバー、仮想マシン (VM) 、またはクラウドホストにログオンします。

  2. 次のコマンドを順番に実行して、イメージコンプライアンスツールをダウンロードして解凍します。

    wget https://ecs-image-tools.oss-cn-hangzhou.aliyuncs.com/imagecheck/ecsgo-helper.tar.gz
    tar -xf ecsgo-helper.tar.gz 

    ブラウザを使用して画像準拠ツールをダウンロードできます。

  3. 次のコマンドを実行して、イメージコンプライアンスツールを実行します。

    . /ecsgo-helper.sh画像-オンライン-診断

    イメージコンプライアンスツールがシステム構成を確認するのを待ちます。 次のコードは、チェック結果の例を示しています。 チェック項目の詳細については、このトピックの「チェック項目」をご参照ください。

    ------------------------------------------------------------
    
                OS: CentOS 7.9.2009カーネル: 3.10.0-1160.76.1.el7.x86_64
                アーチ: x86_64 RTC-モード: utcブート-モード: レガシー
    
    ------------------------------------------------------------
    画像チェック結果
    Virtio [OK]
    Nvme [OK]
    Fstab [OK]
    グラブ [OK]
    Dhcp [OK]
    Selinux [OK]
    OnlineResizeFS [OK]
    CloudAssistant [OK]
    CloudInit [OK]
    SecurityCenterAgent [OK]
    SupportMocInstanceTypes [OK]
    DiskUsage [OK]
    InodeUsage [OK]
    SystemFileAttribute [OK]
    CriticalUser [OK]
    QemuGuestAgent [OK]
    SshConfig [OK]
    ファイアウォール [OK]
    LibDirectory [OK]
    
             総ケース数19
                成功: 19
                失敗: 0
                警告: 0
    
    ------------------------------------------------------------ 

チェックアイテム

イメージコンプライアンスツールは、チェック項目のレベルに基づいて、OKFAILED、またはWARNINGのチェック結果を提供します。

  • OK: すべてのチェック項目は要件に準拠しています。

  • FAILED: チェック項目が要件に準拠しておらず、イメージから作成されたECSインスタンスが期待どおりに起動できないか、ネットワーク例外が発生する可能性があります。 イメージをインポートする前に、非準拠アイテムを修正することを推奨します。

  • 警告: 項目が要件に準拠していないことを確認し、イメージから作成されたECSインスタンスはセキュリティセンターによって保護されておらず、Cloud Assistantを使用して自動的に操作または保守することはできません。 クラウドのO&M効率を向上させるために、イメージをインポートする前に非準拠アイテムを修正することを推奨します。

イメージ準拠ツールは、ソースサーバーの構成項目をチェックします。 イメージコンプライアンスツールのチェック項目を次の表に示します。

チェックアイテム

レベル

説明

非コンプライアンスの問題

推奨ソリューション

ヴィルティオ

高い

virtioドライバがイメージにインストールされているかどうかを確認します。

ECSインスタンスは、カーネルベースの仮想マシン (KVM) アーキテクチャ上に構築されたVMであり、virtioドライバーをイメージでインストールする必要があります。

イメージを使用するECSインスタンスは、期待どおりに起動できません。

virtio ドライバーのインストール 詳細については、「virtioドライバーのインストール」をご参照ください。

Nvme

高い

イメージにNVMe (Non-Volatile Memory Express) ドライバがインストールされているかどうかを確認します。

ecs.g7seなど、NVMeベースのディスクをサポートする特定のインスタンスタイプのインスタンスの場合、NVMeドライバーをイメージにインストールする必要があります。 NVMeは、SCSI (Small Computer System Interface) やvirtio-blkなどの従来のドライバプロトコルよりも高速な応答時間と高い帯域幅を実現します。 特定のインスタンスタイプをサポートするには、イメージにNVMeドライバーをインストールすることを推奨します。 詳細については、「NVMeプロトコル」をご参照ください。

このイメージは、ecs.g7seなど、NVMeベースのディスクをサポートするインスタンスタイプには適用できません。

LinuxカスタムイメージをNVMeベースのシステムディスクに適応

Fstab

高い

/etc/fstabファイルの設定を確認します。

/etc/fstabファイルの設定が正しくない場合 (存在しないデバイスの設定やUUID (universally unique identifier) が正しくない場合) 、システムの起動例外が発生します。

オペレーティングシステムを期待どおりに起動できません。

なし。

グラブ

高い

GRand Unified Bootloader (GRUB) 構成ファイルを確認します。

GRUBは、カーネルをロードおよびブートするために使用されるツールであり、オペレーティングシステムの重要な構成項目です。 構成が正しくないと、システムの起動例外が発生します。 オペレーティングシステムでGRUB構成ファイルを確認することを推奨します。 たとえば、GRUB構成ファイルをチェックして、デバイス名がブートパーティションの指定に使用されていないことを確認します。 例: root=/dev/sda1。 デバイス名は、環境に基づいて変化し得る。 代わりにUUIDを使用してブートパーティションを指定することを推奨します。

オペレーティングシステムを期待どおりに起動できません。

なし。

Dhcp

高い

イメージのネットワーク設定ファイルでDHCP (Dynamic Host Configuration Protocol) が設定されているかどうかを確認します。

動的IPアドレスをインスタンスに割り当てるように、ネットワークデバイスのDHCPを設定することを推奨します。 静的IPアドレスがイメージで設定されている場合、ネットワーク設定の例外が発生し、イメージを使用するインスタンスが起動できない可能性があります。 また、ネットワークインターフェイスの名前がカーネルで変更されないように、net.ifnamesパラメーターをGRUB構成ファイルのカーネル起動パラメーターに追加し、パラメーターを0に設定することをお勧めします。 このように、ネットワークインターフェース (NIC) はeth0という名前のままです。

システムネットワークエラーが発生します。

なし。

Selinux

イメージでセキュリティ強化Linux (SELinux) が無効になっているかどうかを確認します。 SELinuxを無効にすることを推奨します。

イメージを使用するECSインスタンスは、期待どおりに起動できません。

イメージでSELinuxを無効にします。 詳細については、「SELinuxの有効化または無効化」をご参照ください。

OnlineResizeFS

高い

イメージ内のファイルシステムをオンラインで拡張できるかどうかを確認します。

たとえば、イメージ内の仮想ディスクのサイズが10 GBで、イメージから100 GBのシステムディスクを持つインスタンスを作成し、そのインスタンスにcloud-initやgrowpartなどのコンポーネントをインストールするとします。 インスタンスが初期化されると、ルートパーティションとファイルシステムは自動的にシステムディスクのサイズ (100 GB) に拡張されます。 詳細については、「Linuxインスタンス上のディスクのパーティションとファイルシステムの拡張」をご参照ください。

インスタンスのルートパーティションは拡張できません。

CloudInit

高い

cloud-initがイメージにインストールされているかどうかを確認します。

cloud-initは、インスタンスの起動時にシステム設定を初期化し、ユーザーデータスクリプトを実行します。 システム構成には、NTP (Network Time Protocol) 設定、ソフトウェアリポジトリ、ホスト名、およびSSHキーペアが含まれます。

システム初期化設定がありません。

cloud-initをインストールします

DiskUsage

高い

イメージ内のディスク容量の使用状況を確認します。

df -hコマンドを実行して、ディスク領域の使用状況を確認し、十分なディスク領域が使用可能であることを確認できます。

オペレーティングシステムを期待どおりに起動できません。

不要なファイルを削除します。

InodeUsage

高い

イメージ内のディスクのinode使用率を確認します。

df -iコマンドを実行して、ディスクのinode使用率を確認できます。

オペレーティングシステムを期待どおりに起動できません。

不要なファイルを削除します。

SystemFileAttribute

高い

重要な構成ファイルの属性が正常かどうかを確認します。

イメージを使用するECSインスタンスは期待どおりに起動できず、一部の機能は使用できません。

chattrコマンドを実行して /etc/shadowファイルをロックしないでください。

CriticalUser

高い

rootなどの重要なユーザーがオペレーティングシステムに存在するかどうかを確認します。

重要なユーザーがいないと、システムの起動例外とインスタンス機能の例外が発生します。 たとえば、ユーザー名とパスワードを使用してインスタンスに接続することはできません。

イメージを使用するECSインスタンスは期待どおりに起動できず、一部の機能は使用できません。

rootアカウントを保持します。

QemuGuestAgent

qemu-guest-agentがオペレーティングシステムにインストールされているかどうかを確認します。

qemu-ゲストエージェントはVM上で実行され、ホストと対話します。 qemu-guest-agentがインストールされている場合、ECSに必要な一部のサービスは利用できず、インスタンスはフル機能ではありません。

インスタンスの一部の機能は使用できません。

qemu-guestos-agentをアンインストールします。

SshConfig

高い

sshdの設定ファイルが正常かどうかを確認します。 ほとんどの場合、sshdの設定ファイルは /etc/ssh/sshd_configです。

sshd設定ファイルに誤った設定が存在する場合、sshdサービスは起動しません。 その結果、ECSインスタンスはSSH経由で接続できません。 sshd設定ファイルの正確性と有効性を確認することを推奨します。 次のコマンドを実行できます。

  • sshd -Tコマンドを実行して、すべてのsshd設定オプションを表示します。

  • sshd -tコマンドを実行して、sshd構成ファイルの有効性を確認します。

イメージを使用するECSインスタンスは、SSH経由で接続できません。

sshd設定ファイルを確認してください。

ファイアウォール

ファイアウォールサービスが有効かどうかを確認してください。

オペレーティングシステムでファイアウォールサービスを無効にし、ECSセキュリティグループを使用してインスタンスのインバウンドトラフィックとアウトバウンドトラフィックを管理することを推奨します。 詳細については、「概要」をご参照ください。

システムファイアウォールアプリケーションは、インスタンスアクセス障害を引き起こす可能性があります。

システムファイアウォールサービスを無効にします。

LibDirectory

高い

Red Hatオペレーティングシステムでは、/lib/lib64/usr/lib/usr/lib64を指すシンボリックリンクです。 これらのリンクを変更しないでください。 そうでない場合、システム例外が発生する可能性があります。

オペレーティングシステムの機能は期待どおりに機能しません。

/libおよび /lib64シンボリックリンクは絶対パスを指すことはできません。 /libおよび /lib64が指すパスを相対パスに変更します。

SupportMocInstanceTypes

高い

イメージがSHENLONGアーキテクチャに基づくインスタンスタイプをサポートしているかどうかを確認します。

ほとんどの場合、ECS. g6やecs.g7インスタンスタイプなどの最新のecsインスタンスタイプは、SHENLONGアーキテクチャに基づいています。 イメージのオペレーティングシステムおよびカーネルバージョンが予想よりも早い場合、イメージを使用するインスタンスで例外が発生する可能性があります。 インスタンスタイプについては、「インスタンスファミリーの概要」をご参照ください。

ecs.g6やecs.g7インスタンスタイプなど、SHENLONGアーキテクチャに基づくインスタンスタイプは使用できません。

ほとんどの場合、SHENLONGベースのインスタンスタイプをサポートしていないオペレーティングシステムは、寿命 (EOL) とメンテナンス終了 (EOM) に達した初期バージョンです。 できるだけ早い機会にオペレーティングシステムをアップグレードし、ディストリビューターが保守および更新するオペレーティングシステムを使用することを推奨します。

CloudAssistant

Cloud Assistant Agentがイメージにインストールされているかどうかを確認します。

Cloud Assistantは、ECS用に開発されたネイティブの自動O&Mツールです。 ECSの効率的な運用管理のために、イメージにCloud Assistant Agentをインストールすることを推奨します。 詳細については、「概要」をご参照ください。

クラウドでのO&M管理は非効率的です。

Cloud Assistant Agentのインストール

SecurityCenterAgent

Security Centerエージェントがイメージにインストールされているかどうかを確認します。

Security Centerエージェントがサーバーにインストールされた後にのみ、サーバーをSecurity Centerで保護できます。

イメージから作成されたインスタンスの脆弱性は特定できず、インスタンスはSecurity Centerによって保護されていません。

Security Center エージェントをインストールします

次のステップ

イメージファイルを取得する前に、イメージコンプライアンスツールを使用してイメージを確認します。 詳細については、「Linuxイメージファイルの取得」をご参照ください。