OKITを利用したOCI環境の可視化

 2021.03.17  株式会社テリロジー 技術統括部

こんにちは!Y.Tです。
今回はOCIの環境をOKITを利用して可視化する方法をご紹介します。

OKITとはOCI Designer Toolkitの略で、現在の構築環境の情報を取得し可視化することや、インスタンスやストレージなど、アイコンを配置するだけで実際のOCI上へ構築することができるツールです。
OSSのツールであり、Gitで公開されています。
Gitリンク:OCI Designer Toolkit

OKITのインストール後は以下のように、現在配置されているインスタンスやストレージ、割り当てられているポリシーなどのアイコンが描画されます。コンポーネントのアイコンをクリックすると、詳細な設定値なども確認できるようになっています。

OKITを利用したOCI環境の可視化 画像

ここでは以下の手順でUbuntu16の仮想マシンにOKITをインストールし、現在の構築環境を確認していきます。

APIキーの作成

初めに、OKITをインストールする端末でOpenSSLでRSAの秘密鍵と公開鍵を作成していきます。
/.ociフォルダを作成し、秘密鍵、公開鍵を作成していきます。

$mkdir <ホームディレクトリ>/.oci $openssl genrsa -out <ホームディレクトリ>/.oci/oci_api_key.pem 2048 $openssl rsa -pubout -in <ホームディレクトリ>/.oci/oci_api_key.pem -out \      <ホームディレクトリ>/.oci/oci_api_key_public.pem

ユーザへのAPIキーの追加

次に作成した公開鍵である「oci_api_key_public.pem」をociのWebコンソールからユーザのAPIキーに追加します。
Webコンソールの「アイデンティティ」 > 「ユーザー」からAPIの実行権限がある、OKITで利用するユーザを選択し、「APIキー」 > 「APIキーの追加」をクリックします。「公開キー・ファイルの選択」をクリックし、1.APIキーの作成で作成した「oci_api_key_public.pem」を追加します。

ユーザへのAPIキーの追加 画像1

「追加」をクリックすると、「構成ファイルのプレビュー」にOKITをインストールする端末に登録するファイルの内容が表示されるため、コピーします。

ユーザへのAPIキーの追加 画像2

設定ファイルの追加

OKITをインストールする端末に設定ファイルを作成し、2.ユーザへのAPIキーを追加でコピーした内容を貼り付けます。

$sudo vi <ホームディレクトリ>/.oci/config [DEFAULT] user=(略) fingerprint=(略) tenancy=(略) region=(略) key_file=~/.oci/oci_api_key.pem

Dockerのインストール

OKITをインストールする端末にDockerを構築します。私の環境ではあらかじめインストールされていたsnapdを利用し、Dockerをインストールします。

$sudo snap install docker

※インストールされていない場合は以下のコマンドでインストールすることができます

$sudo apt -y install snapd

次に、Dockerグループを作成し、ユーザのプライマリグループをDockerグループにします。

$sudo groupadd docker $sudo usermod -g docker <ユーザ名>
Tips!

snapdとはパッケージ管理システムのSnappy内のパッケージを利用するためのツールです。
Snappyは他のパッケージに依存せず、1つのパッケージの中にすべて必要なパッケージが入っており、 様々なLinuxディストリビューションで利用することができます。

OKITのインストール

OKITはDocker Compose、Docker、Vagrantで提供されています。今回はDockerを利用して構築していきます。
初めに任意の場所にGitからOKITの構築に必要なファイルをインストールします。

$git clone --depth 1 https://github.com/oracle/oci-designer-toolkit.git

oci-designer-toolkitというフォルダが作成されているため、移動し、OKITのコンテナを構築します。

$cd oci-designer-toolkit

Dockerコンテナをビルドし、開始します。

$sudo docker build --tag okit --file ./containers/docker/Dockerfile --force-rm . $sudo docker run -d --rm -p 443:443 -p 80:80 \ --name okit \ --hostname okit \ --volume ~/okit/user/templates:/okit/templates \ okit

これで、OKITの利用ができるようになりました。

OKITでOCI上の構成確認

Dockerで開始したOKITには以下のURLでアクセスできるようになっています。
http://<OKITをインストールした端末のIPアドレス>/okit/designer

対応ブラウザ:

  • Google Chrome、Firefox、Brave、Chromiumベースのブラウザ

※IEは対応しておらず、Safariは一部対応しておりません

OKITでOCI上の構成確認 画像1

OKIT上のメニューから「Query」を選択します。以下のように設定し、「Query」をクリックします。

  • Connection Profile:DEFAULT
  • Region(s):※OCIのリージョンを選択
  • Compartment:※確認したい今パートメントを選択

OKITでOCI上の構成確認 画像2

すると、以下のように構成が確認できます。

OKITでOCI上の構成確認 画像2

可視化された構成図は画像として出力することもでき、OKIT上のメニューの「Export」 > 「Image」から、svg、png、jpeg形式でダウンロードすることができます。また、作成した構成図からコストを試算することも可能です。

また、ポリシーやインスタンス、オブジェクトストレージなどが複数ある場合、コンポーネントの上にマウスカーソルを合わせると、紐づいているコンポーネントが色付けされるようになっています。
例えば以下のように、あるインスタンスへマウスカーソルを合わせると、紐づけられているポリシーが緑色に色づいて表示されます。

OKITでOCI上の構成確認 画像3

まとめ

今回はOCI上の環境の可視化を実施していきましたが、新規にアイコンをドラッグ&ドロップして描画した構成を、OKITから直接OCIのリソースマネージャを利用し、OCI上へデプロイすることも可能です。
次回の記事ではOKITを利用し、OCI上へ新規にインスタンスを追加する方法についてご紹介したいと思います!
最後までお読みいただき、ありがとうございました。🙇


RECENT POST「OCIサービス紹介」の最新記事


OCIサービス紹介

テリロジーが提供しているOCIの4つのサービス

OCIサービス紹介

Oracle FunctionsのスクリプトをAPIGW経由で確認 Part1

OCIサービス紹介

Oracle FunctionsのスクリプトをAPIGW経由で確認 Part2

OCIサービス紹介

OCIのDNSサービス

OKITを利用したOCI環境の可視化