大塚紳一郎, 2020年3月
2003年、株式会社野村総合研究所に新卒で入社。ミッションクリティカルシステムにおけるOracle Databaseの構築、運用、コンサルティングに関して15年以上の経験を持つ。毎年サンフランシスコで開催される世界最大のテクノロジーイベント「Oracle OpenWorld」を含む各種イベントでの講演多数。Autonomous DatabaseがGAされた年にOracle ACE Associateになれたことに運命を感じており、Oracleデータベース管理者の今後のロールモデルの構築に携わりたいと考え日々活動中。最新の登壇タイトルは「Boosting your career through Oracle Cloud Infrastructure 2018 Certified Architect Associate.」
こんにちは、NRIの大塚です。今回はCURRENT DATA領域の連載3回目です。
テーマとするPaaSはOracle Container Engine for Kubernetes(OKE)です。
今回は前回準備したネットワーク環境を用いてOracle Container Engine for Kubernetesをプロビジョニングします。
今回作成するのは図中赤枠の部分です
今回は以下の7ステップで構築していきます。
- Step1:Oracle Cloud管理コンソールへのログイン
- Step2:Kubernetesクラスタの作成とデプロイメントのためのポリシー構成
- Step3:Oracle Container Engine for Kubernetes管理者グループの作成
- Step4:Oracle Container Engine for Kubernetes管理者用ポリシーの作成
- Step5:Oracle Container Engine for Kubernetes管理者の作成
- Step6:Oracle Container Engine for Kubernetesワーカー・ノード用の鍵の準備
- Step7:Oracle Container Engine for Kubernetesのプロビジョニング
それでは、さっそくはじめたいと思います。
早速Oracle Cloud管理コンソールへログインしてみましょう。URLは以下です。
https://www.oracle.com/jp/cloud/sign-in.html
(注)2ステップ検証は以下の記事で実装しました。
「Keys to the Oracle Cloud第7回:【Tea break】 Oracle CloudにおけるMulti-Factor Authentication(多要素認証)の実装」
標準のログインシーケンスでは、2ステップ検証の画面には遷移しませんのでご注意ください。
上記の記事を参考に各自実装をお願いします。
これからOracle Cloud管理コンソールを活用して実装をしていきます。ハンバーガーボタンを押下するとメニューが表示されます。表示されたメニューで構築を進めて行きます。
構築開始前にリージョンと、言語の確認をしましょう。必要に応じて、下図を参考に設定を変更してください。
Container Engine for Kubernetesを使用してテナンシ内のリージョンにクラスタを作成およびデプロイするには、Container Engine for Kubernetesがテナンシ内で操作を実行できるようにポリシーを設定する必要があります。
まずはポリシー設定からはじめていきます。「ハンバーガーボタン」→「アイデンティティ」→「ポリシー」を押下してください。
(参考マニュアル)クラスタの作成とデプロイメントのためのポリシー構成
https://docs.oracle.com/cd/E97706_01/Content/ContEng/Concepts/contengpolicyconfig.htm
リスト範囲のコンパートメントが「ルート」であることを確認の上、「ポリシーの作成」を押下してください。
ポリシーの作成画面に以下のように値を入力していきます。
すぐに作成されます。
「CURRENT DATA編」ではOracle Container Engine for Kubernetes専用の管理者グループおよび管理者を作成したいと思います。そういった実装を考えた場合、Oracle Container Engine for Kubernetes管理者はテナンシ内のクラスタ関連リソースを操作する権限を持っている必要があります。その実装はユーザーが属するグループに必要ポリシーを付与することで実現します。それではさっそく実装していきたいと思います。
(参考マニュアル)グループに必要なポリシーの作成
まずOracle Container Engine for Kubernetes専用の管理者グループから作成します。
「ハンバーガーボタン」→「アイデンティティ」→「グループ」を押下してください。
「グループの作成」を押下します。
値を入力します。
すぐに作成されます。
Oracle Container Engine for Kubernetes管理者グループ用ポリシーを設定していきます。
「ハンバーガーボタン」→「アイデンティティ」→「ポリシー」を押下してください。
リスト範囲のコンパートメントが「ルート」であることを確認の上、「ポリシーの作成」を押下してください。
ポリシーの設定をします。
すぐに作成されます。
Oracle Container Engine for Kubernetes管理者を作成します。
「ハンバーガーボタン」→「アイデンティティ」→「ユーザー」を押下してください。
ユーザーの作成を押下します。
ユーザー作成のための値を入力します。
すぐに作成されます。
作成したユーザーをOracle Container Engine for Kubernetes管理者グループに所属させます。
「OKE-admin-group」を押下します。
「ユーザーをグループに追加」を押下します。
ユーザー選択欄で「OKE-admin」を選択します。
作成したユーザーをOracle Container Engine for Kubernetes管理者グループに所属させることが出来ました。
準備が出来ましたのでOracle Container Engine for Kubernetes管理者にパスワードを設定して、
Oracle Container Engine for Kubernetes管理者でログインしなおします。
「ハンバーガーボタン」→「アイデンティティ」→「ユーザー」を押下してください。
「OKE-admin」を押下してください。
「パスワードの作成/リセット」を押下します。
確認ダイアログが表示されますので「パスワードの作成/リセット」を押下します。
パスワードが表示されますので「コピー」を押下してください。
コピーが成功すると「コピー済」と表示されます。
いったんOracle Cloudの管理コンソールからサインアウトします。
「OKE-admin」として、再度ログインします。
初回ログインですので、パスワード変更画面に遷移します。新しいパスワードを設定してください。
「OKE-admin」としてOracle Cloudにログインすることができました。
いまからOracle Container Engine for Kubernetesをプロビジョニングする為の最後の準備として鍵の話をします。
Oracle Container Engine for Kubernetesをプロビジョニングするとワーカー・ノード(インスタンス)が生成されます。このインスタンスへの接続を行う際に用いる鍵ファイルを準備します。鍵ファイルの作成にはgitをご紹介したいと思います。
Windows PCをご利用のかたが多いかと思いますので、git for windowsのURLを記載します。
https://gitforwindows.org/
こちらからインストーラをダウンロードし、インストールを行いましょう(基本的に「Next」を押下していきます)。
インストールが完了したら、「Git bash」をクリックして、起動しましょう。
起動したら、コマンドが入力できる画面が表示されると思います。
(本来であれば、先のインストールと合わせて、画像イメージでご紹介したいのですが、著作権の関係上、本連載では掲載を控えさせてください。この点につきましてお詫び申し上げます。)
以下コマンドを入力してください。「生成したいファイル名」は半角英数字で入力してください。
$ ssh-keygen –b 2048 –t rsa –f 生成したいファイル名
すると、Windowsでのパスになりますが、
ローカルディスク(C:)/ユーザ/ユーザ名(操作中のユーザです各自異なります)
配下に鍵が生成されます。では、この鍵ファイルを用いてプロキシサーバインスタンスを作成したいと思います。
現在の位置は以下のpwdコマンドで確認できます。
$pwd
$ls
Oracle Container Engine for Kubernetesをプロビジョニングしていきます。
「ハンバーガーボタン」→「開発者サービス」→「コンテナ・クラスタ(OKE)」を押下してください。
リスト範囲におけるコンパートメントで「OKE」を選択してください。
「クラスタの作成」を押下します。
クラスタの作成ダイアログが表示されますので、詳細な値を入力していきます。
今度はワーカー・ノード用の設定を入力していきます
確認ダイアログが表示されますので「作成」を押下してください。
作成が開始されます(作成中と表示されます)
数分後、作成が完了しました(アクティブと表示されます)
今回は以上となります。次回は、Oracle Container Engine for Kubernetesをコントロールするサーバを作成します。読んで頂き、ありがとうございました。
※Oracle Container Engine for Kubernete 「クラスタの作成とデプロイメントのためのポリシー構成」
https://docs.oracle.com/cd/E97706_01/Content/ContEng/Concepts/contengpolicyconfig.htm
※Oracle Container Engine for Kubernetes 「グループに必要なポリシーの作成」
https://docs.oracle.com/cd/E97706_01/Content/ContEng/Concepts/contengpolicyconfig.htm#PolicyPrerequisitesGroups
※コンピュート・サービスの概要
https://docs.oracle.com/cd/E97706_01/Content/Compute/Concepts/computeoverview.htm