パブリッククラウドへのSUSE Linux Microの展開
- 概要
この記事では、パブリッククラウドへの展開向けの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イメージの展開と展開後の手順をまとめたものです。
イメージをパブリッククラウドに展開します。具体的な手順は、特定のクラウドベンダによって異なります。詳細については、特定のマニュアルを参照してください。
イメージにはデフォルトの初期設定が付属していますが、これがユーザのニーズに合わない場合があります。たとえば、デフォルトの「ユーザ」の他に別のユーザを追加したい場合があります。この設定を変更するには、2.2.1項 「デフォルト設定の変更」の説明に従ってください。
2.2.2項 「登録」の説明に従ってシステムを登録します。
実行中のシステムから別のユーザを作成できます。この手順については、2.3項 「
useradd
コマンドを使用したユーザの追加」を参照してください。
2.2.1 デフォルト設定の変更 #
デフォルト設定は、読み込み専用ファイルシステムに属する/usr/lib/ignition/base.d/base.ign
に保存されています。したがって、このファイルを直接変更することはできません。このファイルを変更するには、次の手順を実行します。
フラグファイル
/boot/writable/firstboot_happened
を削除します。次のコマンドを実行します。
#
transactional-update shell
/usr/lib/ignition/base.d/base.ign
ファイルをニーズに合わせて編集します。ここで、システムの他のユーザを追加したり、システムを再パーティションしたりすることもできます。このファイルは次回のブート時にIgnitionによって読み込まれます。Ignitionは、このファイルの指示に従ってシステムを再設定します。Ignitionの設定の詳細についてはIgnition configuration examplesを参照してください。
「
exit
」と入力して、transactional-update
シェルを終了します。Ignitionは
initramfs
で動作するため、次のコマンドを実行して再構築する必要があります。#
transactional-update initrd
新しく作成したユーザに、クラウドフレームワークによって提供されるSSHキーを使用してアクセス権を付与するには、次の
systemd
サービスが開始されていることを確認します。#
systemctl start afterburn-sshkeys@USER_NAME
システムを再起動します。
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
特権なしで、通常のユーザを追加するには、次の手順に従います。
次のように、
useradd
コマンドを実行します。#
useradd --btrfs-subvolume-home --create-home USER_NAME
--btrfs-subvolume-home
オプションは、/home
ディレクトリをサブボリュームとしてマウントすることを指定します。--create-home
オプションは、/home
を特定のサブボリュームの下に作成します。これらのオプションを省略すると、特定のユーザの/home
ディレクトリは作成されません。新しいユーザのパスワードを設定します。
#
passwd USER_NAME
新しいユーザにsudo
特権を付与するには、そのユーザをwheel
グループに追加します。
#
usermod -aG wheel USER_NAME
3 法的事項 #
Copyright © 2006–2025 SUSE LLC and contributors. All rights reserved.
この文書は、GNUフリー文書ライセンスのバージョン1.2または(オプションとして)バージョン1.3の条項に従って、複製、頒布、および/または改変が許可されています。ただし、この著作権表示およびライセンスは変更せずに記載すること。ライセンスバージョン1.2のコピーは、「GNUフリー文書ライセンス」セクションに含まれています。
SUSEの商標については、https://www.suse.com/company/legal/を参照してください。その他の第三者のすべての商標は、各社の所有に帰属します。商標記号(®、™など)は、SUSEおよび関連会社の商標を示します。アスタリスク(*)は、第三者の商標を示します。
本書のすべての情報は、細心の注意を払って編集されています。しかし、このことは正確性を完全に保証するものではありません。SUSE LLC、その関係者、著者、翻訳者のいずれも誤りまたはその結果に対して一切責任を負いかねます。