クラウドを「知ろう」「使おう」
クラウドを「知ろう」「使おう」

目次

  1. オーケストレーションとは
  2. オーケストレーションを作成してみよう
  3. オーケストレーションのライフサイクルについて
  4. オーケストレーションの状態を変化させてみよう
  5. 終わりに

皆様、こんにちは。PSソリューションズのKMです。

今回は、Oracle Cloud Infrastructure Classic(OCI-C)でのオーケストレーション機能についてご紹介します。

 

 

オーケストレーションとは

そもそも、オーケストレーションとは何かご存知でしょうか。

Oracleのマニュアルでは下記のように説明されています。

 

<引用>

An orchestrationは、Compute Classic内のコンピューティング、ネットワーキング、およびストレージ・リソースのコレクションの属性と相互依存関係を定義します。 オーケストレーションを使用して、仮想コンピュート・トポロジ全体のプロビジョニングおよびライフサイクル操作を自動化することができます。

(引用元: Oracle Help Center | Orchestrations v2について)

 

 

今までの記事でご紹介してきた内容では、インスタンスやネットワーク、セキュリティ設定などをそれぞれ個別に作成していました。

しかし、その方法では管理が別々で面倒という課題があります。そんなときに役立つのが、オーケストレーション機能です。

 

例を挙げて説明しましょう。下記のような環境をOCI-C上で作成するとします。

 

 

上記構成を作成する場合は、次の3つを作成する必要があります。

  • インスタンス
  • インスタンスで使用するブート・ボリューム
  • IPネットワーク

 

今までの説明ではそれぞれ個別に作成していましたが、オーケストレーションを使用することで、上記全てを一つのオーケストレーションに定義して、まとめて管理できるようになります。

 

  • ひとつのオーケストレーションを起動、停止することで、環境全体の作成、削除を容易に制御することが可能。
  • 既存のオーケストレーションをもとに、オブジェクトの名前などを書き換えたものを作成することで、既存環境の複製や、一部変更した環境を容易に作成することが可能。

 

 

オーケストレーションを作成してみよう

それでは、実際にオーケストレーションを使い、上記の構成を作成してみましょう。

初めに、オーケストレーションをOCI-Cの画面の「オーケストレーション」タブから作成します。

 

 

「オーケストレーションの作成」ボタンを押すと、ポップアップが表示されます。そこで作成したいオーケストレーションの名前を入力すると、下記のように停止状態でオーケストレーションが作成されます。

 

 

オーケストレーションの設定は、右側のボタンから「更新」を選択することで変更できます。

この画面ではオーケストレーションで設定可能な内容の一覧が表示されています。

今回のオーケストレーションは作成したばかりでまだ空っぽの状態のため、これから設定を追加していきます。

 

 

まずは、IPネットワークを作成します。

IPネットワークを選択し、「追加」ボタンを選択するとポップアップが表示されます。

 

 

 

上記で作成したいIPネットワークの名前やIPネットワークの定義を設定し、「作成」ボタンを押します。IPネットワークの設定が追加されたことが確認できます。

 

 

次に、インスタンスにアタッチするストレージ・ボリュームを作成します。

IPネットワークと同様に、ストレージ・ボリュームを選択して「追加」ボタンを選択すると設定画面がポップアップで表示されます。

 

 

 

ここで、各種設定を入力していきます。なお、今回はストレージ・ボリュームをインスタンスのブート・ボリュームとして使用します。ブート・イメージOracle Linux 7.2 を指定します。

 

インスタンスを2つ作成するため、同様の手順でもう一つストレージ・ボリュームを作成しました。

作成後、下記のように表示されます。ブート・イメージを選択しているため、ブート可能がtrueになっています。

 

 

最後にインスタンスを作成します。

インスタンスを選択し、今までと同様に「追加」ボタンを押すとインスタンスが追加されます。

オーケストレーション名でインスタンスが作成されます。ちなみに、インスタンスはデフォルトの設定で作成されるため、追加した後に忘れずに設定を変更しましょう。

 

 

インスタンスの設定を変更する際は、右側の「更新」ボタンを選択し、設定画面を開きます。

設定画面には、インスタンスで設定可能な内容の一覧が表示されます。

 

 

まずは、作成したストレージ・ボリュームをアタッチしてブートボリュームを変更します。

 

「ストレージ・ボリュームのアタッチ」ボタンを押すとポップアップが表示されるので、

アタッチしたいストレージを選択して「アタッチ」ボタンを押します。すると、ストレージがアタッチされます。

 

 

アタッチ後は、インスタンス画面で下記のようにアタッチされているストレージが表示されます。

 

 

ストレージをアタッチすると、ブート元としてアタッチしたボリュームが選択可能になるので、ブート元を変更します。

 

 

次に、IPネットワークの設定を追加し、先ほど作成したIPネットワークに参加させます。

「IPネットワーク・インターフェースの追加」ボタンを押すと、下記のような設定画面が表示されます。

IPネットワークの項目では、先ほど作成したIPネットワークを選択。静的IPアドレスには、IPネットワークのサブネットに含まれる任意のIPアドレスを指定します。

すべて設定すると下記のような画面になるので、「保存」ボタンを押します。

 

 

インスタンス名の変更とSSH鍵の追加を行うことで、最終的なインスタンス設定としては下記のようになります。今回はインスタンスを2つ作成するため、同様の設定でもう1インスタンス作成します。

 

 

これで、今回作成する環境のための設定は完了しました。後は、このオーケストレーションを起動するだけで、環境全体が作成されて起動します。

 

 

 

オーケストレーションのライフサイクルについて

ここで、実際にオーケストレーションを起動する前に、オーケストレーションのライフサイクルについてご紹介します。

 

オーケストレーションにはActive,Inactive,Suspendという3つの状態が存在しており、下記のような状態遷移を行います。

 

 

(参考元: Oracle Help Center | Orchestration v2ライフサイクル)

 

それぞれの状態について

  • Active(実行中)
    オーケストレーションは実行中で、すべてのオブジェクトが作成されています。
  • Suspend(中断)
    オーケストレーションは中断状態です。非永続(persistent: false)オブジェクトは削除されており、永続(persistent: true)のオブジェクトは作成されています。
  • Inactive(停止)
    オーケストレーションは停止状態です。すべてのオブジェクトが削除されています。

 

ここで、中断のステータスにて「永続」、「非永続」という言葉が出てきました。実は、オーケストレーションで定義したオブジェクトには永続、非永続といった属性を設定できるのです。

この設定を使用することで、オーケストレーションを中断(Suspend)した際に、削除したいオブジェクトと削除したくないオブジェクトを区別できるようになります。

 

これがどういった場合に有効なのかを解説します。

例えば、インスタンスを使用しない場合。インスタンスを停止したいけれど、インスタンスの中のデータは保持したいことがあると思います。

 

この場合は、インスタンスは非永続オブジェクト、ストレージ・ボリュームは永続オブジェクトとしてそれぞれ設定します。そして、オーケストレーションを中断状態にすることで、インスタンスのみ停止し、インスタンス内のデータは保持することが出来ます。

 

ただ、永続性設定を行っていても、オーケストレーションを終了してしまうとオブジェクトは削除されてしまうので、その点はご注意ください。

 

 

では、実際にストレージ・ボリュームを永続オブジェクトとして設定してみます。

永続性設定は、オーケストレーションの詳細画面内、対象のオブジェクトの右側のボタンで、「プロパティ」を選択すると変更できます。

下記のようなポップアップが表示されるので、永続にチェックを入れて更新を押すと設定されます。

 

 

永続設定がされたオブジェクトは、下記のように緑色のチェックが入ります。

 

 

 

オーケストレーションの状態を変化させてみよう

最後に、オーケストレーションのステータスを実際に変化させて、ライフサイクルの各状態をご紹介します。

 

まず、対象のオーケストレーションを「開始」します。すると、オーケストレーションに定義されている各オブジェクトが作成されます。

全てのオブジェクトが作成されると、下記のようにオーケストレーションが準備完了になります。

 

 

準備完了となった状態で各オブジェクトを確認。インスタンス、ネットワーク、ストレージ・ボリュームが起動状態で作成されていることが確認できます。

 

・インスタンス

 

・IPネットワーク

 

・ストレージ・ボリューム

 

次に、オーケストレーションを中断(Suspend)に変更。オーケストレーションを「一時停止」することで、中断状態になります。

中断状態にする際に、下記のようにポップアップにて、削除されるオブジェクトが

表示されます。

 

 

一時停止が完了すると、オーケストレーションのステータスが一時停止に変わります。この状態では、永続設定されているストレージ・ボリューム以外のオブジェクトは削除されています。

 

 

最後に、対象のオーケストレーションを「終了」にし、オーケストレーションを停止します。

停止する際には、一時停止するときと同様、削除対象のオブジェクトがポップアップで表示されますが、今回は永続オブジェクトであるストレージ・ボリュームも削除対象に含まれています。

 

 

オーケストレーションを停止すると、オブジェクトが全て削除されてオーケストレーション起動前の状態に戻ります。

 

終わりに

今回は、OCI-Cのオーケストレーションの説明と、実際にオーケストレーションによる複数オブジェクトの作成方法と管理方法についてご紹介しましたが、いかがでしたでしょうか。

オーケストレーションを使用することで、個別に作成するよりも格段に管理しやすくなっているはずです。

オーケストレーションは画面から簡単に設定できますので、まずは気軽に触ってみてください。

 

 

 

今回は以上となります。お読みいただきありがとうございました。