9.5. SSH アクセスが設定されたインスタンスの作成
インスタンスの作成時にキーペアを指定して、インスタンスへの SSH アクセスを提供することができます。キーペアは、起動時にインスタンスに挿入される SSH または x509 認証情報です。各プロジェクトには、少なくとも 1 つのキーペアが必要です。キーペアは、プロジェクトではなく、個々のユーザーに属します。
インスタンスの作成後にキーペアをインスタンスに関連付けることはできません。
インスタンスの作成時にセキュリティーグループをインスタンスに直接適用することや、実行中のインスタンスのポートに適用することができます。
インスタンスの作成中に、ロールベースのアクセス制御 (RBAC) 共有セキュリティーグループを直接インスタンスに適用することはできません。RBAC 共有セキュリティーグループをインスタンスに適用するには、最初にポートを作成し、共有セキュリティーグループをそのポートに適用してから、そのポートをインスタンスに割り当てる必要があります。セキュリティーグループのポートへの追加 を参照してください。
前提条件
- インスタンスに SSH 接続するのに使用できるキーペアが利用可能である。詳細は、新しい SSH キーペアの生成 を参照してください。
- インスタンスを作成するネットワークは、外部ネットワーク、またはゲートウェイとして外部ネットワークが設定されたルーターに接続されているプロジェクトネットワークでなければなりません。詳細は、ネットワークガイド の ルーターの追加 を参照してください。
- インスタンスが接続する外部ネットワークには、Floating IP アドレスを提供するサブネットが必要です。
- セキュリティーグループが、インスタンスへの SSH アクセスを許可する。詳細は、セキュリティーグループとキーペアを使用したインスタンスアクセスのセキュリティー保護 を参照してください。
-
インスタンスのベースとなっているイメージに、インスタンスに SSH 公開鍵を挿入する
cloud-init
パッケージが含まれている。 - インスタンスに割り当てるフローティング IP アドレスが利用可能である。詳細は、インスタンスへの Floating IP アドレスの割り当て を参照してください。
手順
インスタンスが要求するハードウェアプロファイルを持つフレーバーの名前または ID を取得します。
$ openstack flavor list
注記イメージが正常に起動するのに十分なサイズを持つフレーバーを選択します。そうでないと、インスタンスの起動に失敗します。
インスタンスが要求するソフトウェアプロファイルを持つイメージの名前または ID を取得します。
$ openstack image list
必要なイメージが利用できない場合は、新しいイメージをダウンロードまたは作成できます。クラウドイメージの作成またはダウンロードの情報は、イメージの作成 を参照してください。
インスタンスを接続するネットワークの名前または ID を取得します。
$ openstack network list
インスタンスにリモートでアクセスするために使用するキーペアの名前を取得します。
$ openstack keypair list
SSH アクセスを設定してインスタンスを作成します。
$ openstack server create --flavor <flavor> \ --image <image> --network <network> \ [--security-group <secgroup>] \ --key-name <keypair> --wait myInstancewithSSH
-
<flavor>
を、ステップ 1 で取得したフレーバーの名前または ID に置き換えてください。 -
<image>
を、ステップ 2 で取得したイメージの名前または ID に置き換えてください。 -
<network>
を、ステップ 3 で取得したネットワークの名前または ID に置き換えてください。必要に応じて、--network
オプションを複数回使用して、インスタンスを複数のネットワークに接続することができます。 -
(オプション)
default
セキュリティーグループは、代替のセキュリティーグループを指定しないインスタンスに適用されます。インスタンスの作成時に別のセキュリティーグループをインスタンスに直接適用することや、実行中のインスタンスのポートに適用することができます。インスタンスの作成時に別のセキュリティーグループを指定するには、--security-group
オプションを使用します。実行中のインスタンスのポートにセキュリティーグループを追加する方法は、セキュリティーグループのポートへの追加 を参照してください。 -
<keypair>
を、ステップ 4 で取得したキーペアの名前または ID に置き換えてください。
-
インスタンスに Floating IP アドレスを割り当てます。
$ openstack server add floating ip myInstancewithSSH <floating_ip>
<floating_ip>
を、インスタンスに割り当てる Floating IP アドレスに置き換えてください。自動的に作成された
cloud-user
アカウントを使用して、SSH を使用してインスタンスにログインできることを確認します。$ ssh -i ~/.ssh/<keypair>.pem cloud-user@<floatingIP> [cloud-user@demo-server1 ~]$