13 インスタンス
Compute Classicインスタンスは、特定のオペレーティング・システムと、指定したCPUおよびメモリー・リソースを実行する仮想マシンです。 「Oracle Cloud Infrastructure Compute Classicの使用」の「インスタンスについて」を参照してください。 インスタンスの作成については、launch-plan addを参照してください。
この節で説明するCLIコマンドを実行する前に、CLIクライアントをインストールして、「CLIを使用するための準備」で説明されているように必要な環境変数を設定していることを確認してください。
instance list
指定されたコンテナ内で、指定された問合せ条件に一致するすべてのインスタンスの名前を取得します。 1つ以上の問合せパラメータを渡して、検索結果をフィルタできます。 問合せ基準を指定しないと、コンテナ内のすべてのインスタンスの名前が表示されます。 すべての詳細インスタンスを取得するには、-f jsonオプションを指定します。
必要なロール
このタスクを実行するには、Compute_MonitorまたはCompute_Operationsのロールが必要です。 このロールが自分に割り当てられていない場合または不確実な場合は、システム管理者にOracle Cloud 「Infrastructure Classicコンソール」でそのロールが割り当てられていることを確認するように依頼してください。 「Oracle Cloudの管理とモニタリング」の「ユーザー・ロールの変更」を参照してください。
構文
opc compute instance list container [--tags tags]
このコマンドのパラメータとオプションのヘルプについては、-hオプションを指定してコマンドを実行してください。
例
このコマンドは、/Compute-acme/jack.jones@example.comコンテナ内の、productionとタグ付けされているインスタンスの名前を取得します。
opc -f table compute instance list /Compute-acme/jack.jones@example.com --tags production
サンプル出力
+-----------------------------------------------------------------------------------+ | NAME | +-----------------------------------------------------------------------------------+ /Compute-acme/jack.jones@example.com/dev-vm/55a30ad5-ddc2-4991-9c17-f02e97e5c36d /Compute-acme/jack.jones@example.com/prod-vm/ee4b020e-deae-41b2-af72-44a6aa13728b +-----------------------------------------------------------------------------------+
instance discover
必要なロール
このタスクを実行するには、Compute_MonitorまたはCompute_Operationsのロールが必要です。 このロールが自分に割り当てられていない場合または不確実な場合は、システム管理者にOracle Cloud 「Infrastructure Classicコンソール」でそのロールが割り当てられていることを確認するように依頼してください。 「Oracle Cloudの管理とモニタリング」の「ユーザー・ロールの変更」を参照してください。
構文
opc compute instance discover container
このコマンドのパラメータとオプションのヘルプについては、-hオプションを指定してコマンドを実行してください。
例
opc -f json compute instance discover /Compute-acme/jack.jones@example.com
サンプル出力
{
"result": [
"/Compute-acme/jack.jones@example.com/app1-vm/",
"/Compute-acme/jack.jones@example.com/app2-vm/",
"/Compute-acme/jack.jones@example.com/app3-vm/"
]
}instance get
指定したインスタンスの詳細を取得します。
必要なロール
このタスクを実行するには、Compute_MonitorまたはCompute_Operationsのロールが必要です。 このロールが自分に割り当てられていない場合または不確実な場合は、システム管理者にOracle Cloud 「Infrastructure Classicコンソール」でそのロールが割り当てられていることを確認するように依頼してください。 「Oracle Cloudの管理とモニタリング」の「ユーザー・ロールの変更」を参照してください。
構文
opc compute instance get name
このコマンドのパラメータとオプションのヘルプについては、-hオプションを指定してコマンドを実行してください。
例
次のコマンドは、指定したインスタンスのvcable_idパラメータの値を取得します。
opc -f table -F vcable_id compute instance get /Compute-acme/jack.jones@example.com/dev2/6073c806-f7da-47eb-9678-6e618931b29a
サンプル出力
+-----------+------------------------------------------------------------------------+
vcable_id | /Compute-acme/jack.jones@example.com/f7a0859c-caa9-49e2-bf8a-a1c2798d4fe5
+-----------+------------------------------------------------------------------------+
instance update
インスタンスのステータス、およびインスタンスに関連付けられているタグとシェイプを更新します。
次のインスタンス・パラメータの値を更新できます。
-
desired_state: このパラメータの値を更新して、永続的なストレージ・ボリュームを使用する個々のインスタンスをシャットダウンして再起動することができます。 エフェメラル・インスタンスのこのパラメータは更新できません。-
shutdownをdesired_stateの値として指定し、running状態にあるインスタンスをシャットダウンします。 -
desired_stateの値としてrunningを指定して、以前にシャットダウンしたインスタンスを再起動します。 インスタンスは、インスタンス・データまたは構成のいずれも失うことなく再開されます。
-
-
shape: このパラメータの値を更新して、shutdown状態にあるインスタンスに関連付けられたシェイプを変更することができます。 実行中のインスタンスのシェイプを変更することはできません。 -
tags: インスタンスに関連付けられているタグの配列を更新できます。
単一のオーケストレーションで複数のインスタンスを作成した場合、インスタンスをシャットダウンすると便利です。 この場合、インスタンス・オーケストレーションを停止すると、すべてのインスタンスが削除されます。 1つ以上のインスタンスを停止したい場合、同じオーケストレーション内の他のインスタンスを実行させながら、必要なインスタンスを個別にシャットダウンすることができます。
インスタンスをシャットダウンすると、次のようになります:
-
インスタンスIDは保持され、インスタンスの再起動時に再利用されます。 したがって、マルチパート・インスタンス名は変更されません。 これは、インスタンス名がストレージ・アタッチメントなどの他のオブジェクトによって参照される場合に便利です。
-
Orchestrations v1を使用して作成されたインスタンスの場合、インスタンス・オーケストレーションにエラーが表示されます。 ただし、指定されたHAポリシーがアクティブであっても、インスタンスは自動的には再作成されません。
-
ストレージ・ボリュームやIP予約など、そのインスタンスに関連付けられているリソースは解放され、必要に応じて他のインスタンスで使用できます。 ただし、インスタンスを再起動しようとする場合は、必要なリソースが使用可能であることを確認します。そうしないと、インスタンスは再起動できず、エラー状態になります。
-
共有ネットワーク上のプライベートIPアドレスが解放されます。 後でインスタンスを再起動すると、プライベートIPアドレスが新たに割り当てられます。 そのため、共有ネットワーク上のインスタンスのプライベートIPアドレスが変更される可能性があります。
-
IPネットワーク上の動的に割り当てられたIPアドレスも解放されます。 したがって、後でインスタンスを開始すると、IPネットワーク上の動的に割り当てられたIPアドレスも変更される可能性があります。 インスタンス・オーケストレーションのインタフェースに割り当てられた静的プライベートIPアドレスは変更されません。
-
インスタンスの作成後にCompute Classicでインスタンスに加えた変更はすべて失われます。 たとえば、インスタンスをセキュリティ・リスト、アタッチされたストレージ・ボリューム、インスタンスに追加した場合、またはIP予約を切り離してアタッチした場合は、それらの変更を再度行う必要があります。 インスタンスは、インスタンス・オーケストレーションで関連付けられているリソースを使用して再起動されます。
注意:
ただし、インスタンスにログインしてインスタンスに加えた変更は、インスタンスにアタッチされている永続ストレージ・ボリュームに保持されるため、失われません。 ストレージ・ボリュームのデータは、インスタンスをシャットダウンしても影響を受けません。
必要なロール
このタスクを実行するには、Compute_Operationsのロールが必要です。 このロールが自分に割り当てられていない場合または不確実な場合は、システム管理者にOracle Cloud 「Infrastructure Classicコンソール」でそのロールが割り当てられていることを確認するように依頼してください。 「Oracle Cloudの管理とモニタリング」の「ユーザー・ロールの変更」を参照してください。
構文
opc compute instance update name [--desired-state running | shutdown] [--tags tags] [--shape shape]
構文には多くのオプションが表示されますが、これらのオプションの値は変更できません。
このコマンドのパラメータとオプションのヘルプについては、-hオプションを指定してコマンドを実行してください。
例
このコマンドは、実行中の状態の/Compute-acme/jack.jones@example.com/production/dd959b49-60d1-4659-85d3-647722877628インスタンスをシャットダウンし、関連するタグを変更します。
opc compute instance update /Compute-acme/jack.jones@example.com/production/dd959b49-60d1-4659-85d3-647722877628 --desired-state shutdown --tags 'shutdown instance'
インスタンスの状態が変更されるまでには時間がかかります。 ステータスの変化を追跡するには、instance getコマンドを実行します。
サンプル出力
読みやすくするため、一部の行は省略記号(...)を使用して省略されています。 実際の環境でコマンドを実行すると、完全な出力が表示されます。
account /Compute-acme/default attributes/dns/domain compute-acme.oraclecloud.internal. attributes/dns/hostname b9479d.compute-acme.oraclecloud.internal. attributes/dns/nimbula_vcable-eth0 b9479d.compute-acme.oraclecloud.internal. attributes/network/nimbula_vcable-eth0/address ["c6:b...","10.3..."] attributes/network/nimbula_vcable-eth0/dhcp_options attributes/network/nimbula_vcable-eth0/id /Compute-acme/jack.jones@example.com/58de1c89-a006-494d-88a6-6d5113664c58 attributes/network/nimbula_vcable-eth0/model attributes/network/nimbula_vcable-eth0/vethernet /oracle/public/default attributes/network/nimbula_vcable-eth0/vethernet_id 0 attributes/network/nimbula_vcable-eth0/vethernet_type vlan attributes/nimbula_orchestration /Compute-acme/jack.jones@example.com/production_instance attributes/sshkeys availability_domain /ad1 boot_order [1] desired_state shutdown disk_attach domain compute-acme.oraclecloud.internal. entry error_reason fingerprint hostname b9479d.compute-acme.oraclecloud.internal. hypervisor/mode hvm image_format raw imagelist ip 0.0.0.0 label production name /Compute-acme/jack.jones@example.com/production/dd959b49-60d1-4659-85d3-647722877628 networking/eth0/dns ["b9479d.compute-acme.oraclecloud.internal."] networking/eth0/model networking/eth0/nat ippool:/oracle/public/ippool networking/eth0/seclists ["/Compute-acme/default/default"] networking/eth0/vethernet /oracle/public/default placement_requirements ["/system/compute/placement/default","/system/compute/allow_instances"] platform linux priority /oracle/public/default quota /Compute-acme quota_reservation relationships resolvers reverse_dns true shape oc3 site sshkeys start_time 2017-06-30T11:01:24Z state shutdown storage_attachments/0/index 1 storage_attachments/0/volume /Compute-acme/jack.jones@example.com/production-volume tags ["shutdown instance"] uri https://api-z999.compute.us0.oraclecloud.com/instance/Compute-acme/jack.jones@example.com /production/dd959b49-60d1-4659-85d3-647722877628 vcable_id virtio vnc
instance delete
インスタンスを停止し、システムから完全に削除します。 レスポンスは返されません。
オーケストレーションで管理されているインスタンスを削除できます。 ただし、インスタンスのHAポリシーがアクティブな場合は、削除するとすぐにインスタンスが再作成されます。 アクティブなHAポリシーを持つインスタンスを削除するには、対応するオーケストレーションを停止する必要があります。 起動プランを定義してインスタンスを作成した場合は、オーケストレーションによって管理されず、このコマンドを使用してそのようなインスタンスを削除できます。
必要なロール
このタスクを実行するには、Compute_Operationsのロールが必要です。 このロールが自分に割り当てられていない場合または不確実な場合は、システム管理者にOracle Cloud 「Infrastructure Classicコンソール」でそのロールが割り当てられていることを確認するように依頼してください。 「Oracle Cloudの管理とモニタリング」の「ユーザー・ロールの変更」を参照してください。
構文
opc compute instance delete name
このコマンドのパラメータとオプションのヘルプについては、-hオプションを指定してコマンドを実行してください。
例
opc compute instance delete /Compute-acme/jack.jones@example.com/dev1/6073c806-f7da-47eb-9678-6e618931b29a