目次にジャンプページナビゲーションにジャンプ: 前のページ[アクセスキーp]/次のページ[アクセスキーn]
documentation.suse.com / パブリッククラウドへのSUSE Linux Microの展開

パブリッククラウドへのSUSE Linux Microの展開

発行日: 20/03/2025
概要

この記事では、パブリッククラウドへの展開向けのSUSE Linux Microイメージについて詳しく説明します。さらに、システムの新規ユーザを作成する方法についても説明します。

目的

パブリッククラウド向けのSUSE Linux Microイメージの詳細について理解する必要があります。

所要時間

この記事の理解には10分ほどを要します。

1 パブリッククラウドでのSUSE Linux Microについて

SUSE Linux Microは、軽量でセキュアなオペレーティングシステムであり、複数のベンダのクラウド(AWS、Microsoft Azure、Google Cloudなど)に展開できます。

パブリッククラウドのイメージに関する一般的な情報については、Public Cloud Guideを参照してください。ここでは、サブスクリプションプラン、イメージのライフサイクル、サポートに関する情報などを確認できます。

SUSE Linux Microは、専用の内部スナップショットを作成します。このスナップショットは、ディスクの外部スナップショットとは関係なく、外部スナップショットと干渉することもありません。外部スナップショットはクラウドフレームワークツールを使用して作成でき、バックアップ目的や新しいイメージを作成するために使用できます。SUSE Linux Microのスナップショットの詳細については、SUSE Linux Micro snapshottingを参照してください。

2 パブリッククラウドへのSUSE Linux Microイメージの展開

2.1 必要なディスクサイズと推奨ディスクサイズ

ルートボリュームは、クラウドベンダが指定するサイズに設定されます。たとえば、AWSとGCEでは10GB、Azureでは30GBです。

SUSE Linux Microの推奨サイズは12GBです。ただし、実行する予定のワークロードの数とサイズによって異なります。

ルートファイルシステムに変更を加えると、ほぼ毎回、新しいスナップショットが作成されます。Btrfsスナップショットはスペース効率に優れていますが、これらのスナップショットもある程度のサイズを占有することに注意してください。

ルートボリュームは、基礎となるディスクのサイズを変更すると自動的に大きくなります。ディスク容量が足りなくなったら、いつでもインスタンスを停止して、各クラウドフレームワークの個々のディスクサイズの制限までシステムディスクのサイズを増やすことができます。

2.2 パブリッククラウドへのSUSE Linux Microイメージの展開

次の手順は、SUSE Linux Microイメージの展開と展開後の手順をまとめたものです。

  1. イメージをパブリッククラウドに展開します。具体的な手順は、特定のクラウドベンダによって異なります。詳細については、特定のマニュアルを参照してください。

  2. イメージにはデフォルトの初期設定が付属していますが、これがユーザのニーズに合わない場合があります。たとえば、デフォルトの「ユーザ」の他に別のユーザを追加したい場合があります。この設定を変更するには、2.2.1項 「デフォルト設定の変更」の説明に従ってください。

  3. 2.2.2項 「登録」の説明に従ってシステムを登録します。

  4. 実行中のシステムから別のユーザを作成できます。この手順については、2.3項 「useraddコマンドを使用したユーザの追加」を参照してください。

2.2.1 デフォルト設定の変更

デフォルト設定は、読み込み専用ファイルシステムに属する/usr/lib/ignition/base.d/base.ignに保存されています。したがって、このファイルを直接変更することはできません。このファイルを変更するには、次の手順を実行します。

  1. フラグファイル/boot/writable/firstboot_happenedを削除します。

  2. 次のコマンドを実行します。

                  # 
                  transactional-update shell
  3. /usr/lib/ignition/base.d/base.ignファイルをニーズに合わせて編集します。ここで、システムの他のユーザを追加したり、システムを再パーティションしたりすることもできます。

    このファイルは次回のブート時にIgnitionによって読み込まれます。Ignitionは、このファイルの指示に従ってシステムを再設定します。Ignitionの設定の詳細についてはIgnition configuration examplesを参照してください。

  4. exit」と入力して、transactional-updateシェルを終了します。

  5. Ignitionはinitramfsで動作するため、次のコマンドを実行して再構築する必要があります。

                  # 
                  transactional-update initrd
  6. 新しく作成したユーザに、クラウドフレームワークによって提供されるSSHキーを使用してアクセス権を付与するには、次のsystemdサービスが開始されていることを確認します。

                  # 
                  systemctl start afterburn-sshkeys@USER_NAME
  7. システムを再起動します。

注記
注記

SUSE Linux Microインスタンスの起動に使用され、インスタンスメタデータサービスを使用して渡されるSSHキーは、デフォルトユーザsuseに対して設定されることに注意してください。

2.2.2 登録

イメージを展開した後で、システムを登録する必要があります。新しいイメージでは、registercloudguestコマンドを使用してシステムを登録できます。詳細については、Public Cloud Guideを参照してください。

または、SUSE Linux Micro registrationの説明に従って、システムを登録できます。

2.2.3 パブリッククラウドでのSUSE Linux Microの初期化に関連するツール

SUSE Linux Microのイメージは、最初のブート時に実行されるツールを使用します。これらのツール(IgnitionまたはCombustion)は、指定された一連の指示に従ってシステムを設定します。ただし、パブリッククラウド展開用のSUSE Linux Microイメージでは、デフォルトで用意されているのはIgnitionのみです。Combustionを使用することもできますが、2.2.3.1項 「パブリッククラウドへの展開でのCombustionの使用」の説明に従って進める必要があります。また、SUSE Linux Microをパブリッククラウドに展開する際にはAfterburnも使用されます。

Ignitionのデフォルト設定では、Ignitionがデフォルトユーザ(suse)の作成を行います。Ignitionは、いわゆるユーザデータのみを取得するために、クラウドプロバイダのインスタンスメタデータサービスと対話します。Azureで指定されたユーザやGCEからのSSHキーなどの他のデータは、このメタデータサービスからは解析されません。

Afterburnは、インスタンスメタデータサービス(IMDS)を使用して、suseのホームディレクトリにSSHキーを書き込みます。IMDSからSSHキーを転送するには、afterburn-sshkeys@suseが使用されます。このサービスはsystemdによって自動的に開始されます。

Ignitionは、最初のブート時にのみ実行されます。最初のブートとそれ以降のブートを区別するために、フラグファイル/boot/writable/firstboot_happenedが作成されます。Ignitionを再度トリガしたい場合は常に、このファイルを削除する必要があります。

Ignitionのデフォルト設定は、設定ファイル/usr/lib/ignition/base.d/base.ignに保存されています。このファイルを変更することで、設定を変更できます。詳細については、2.2.1項 「デフォルト設定の変更」を参照してください。

2.2.3.1 パブリッククラウドへの展開でのCombustionの使用

Combustionを使用してインスタンスを設定するには、クラウドフレームワークで別のディスクを作成する必要があります。hereで説明されているように、このディスクには、必要なディレクトリ構造を設定する必要があります。次に、この設定ディスクが接続されたインスタンスを作成する必要があります。ご使用の環境に統合するためにCombustionを使用する必要がある場合は、kegとkeg-recipesを使用して独自のイメージを構築できます。keg-recipesプロジェクトには、SUSEが公開するイメージを構築するために使用しているイメージの説明が含まれています。詳細については、keg-recipesを参照してください。

2.3 useraddコマンドを使用したユーザの追加

useraddコマンドを使用して、すでに実行中のシステムにユーザを追加できます。ただし、SUSE Linux MicroはBtrfsベースであるため、/homeディレクトリはサブボリュームとしてマウントされます。したがって、適宜useraddコマンドを使用する必要があります。

sudo特権なしで、通常のユーザを追加するには、次の手順に従います。

  1. 次のように、useraddコマンドを実行します。

                # 
                useradd --btrfs-subvolume-home --create-home USER_NAME

    --btrfs-subvolume-homeオプションは、/homeディレクトリをサブボリュームとしてマウントすることを指定します。--create-homeオプションは、/homeを特定のサブボリュームの下に作成します。これらのオプションを省略すると、特定のユーザの/homeディレクトリは作成されません。

  2. 新しいユーザのパスワードを設定します。

    # passwd USER_NAME

新しいユーザにsudo特権を付与するには、そのユーザをwheelグループに追加します。

# usermod -aG wheel USER_NAME