Keys to the Oracle Cloud
第10回:【CURRENT DATA編】
PaaSレイヤの実装①(Oracle Container Engine for Kubernetes)

大塚紳一郎, 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認定ITアーキテクト
  • Oracle ACE Associate
  • Oracle MASTER Platinum10g,11g,12c(Platinum of the year 2016 in Japan)
  • Oracle MASTER Cloud Oracle Database Cloud Service
  • Oracle MASTER Cloud Oracle Java Cloud Service
  • Oracle Cloud Infrastructure 2018 Certified Architect Associate
  • Oracle Database Cloud Service 2019 Operations Certified Associate
  • Oracle Autonomous Database Cloud 2019 Certified Specialist
o-aceassociate-otsuka-250px
o-acessociate-rgb-250px
  • これからの内容はOracle Cloud Infrastructure (以下OCI)のサービスを前提としたものです。
  • 検証時点(2019年3月末)のOCIのサービス内容に基づいて記載しているため、内容が一部異なる場合があります。
  • 最新の情報については公式Webサイト(https://www.oracle.com/jp/cloud/)をご確認頂きたく思います。
  • 本連載は私個人の理解に基づいており、事実と異なる可能性があることをご了承いただきたく思います。

こんにちは、NRIの大塚です。今回はCURRENT DATA領域の連載3回目です。

otsuka-key2oraclecloud9-img-01

 

テーマとするPaaSはOracle Container Engine for Kubernetes(OKE)です。
今回は前回準備したネットワーク環境を用いてOracle Container Engine for Kubernetesをプロビジョニングします。

 

今回作成するのは図中赤枠の部分です

otsuka-key2oraclecloud10-img-01

 

今回は以下の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のプロビジョニング

それでは、さっそくはじめたいと思います。

 

1.Oracle Cloud管理コンソールへのログイン

早速Oracle Cloud管理コンソールへログインしてみましょう。URLは以下です。
https://www.oracle.com/jp/cloud/sign-in.html

otsuka-key2oraclecloud9-img-04

 

(注)2ステップ検証は以下の記事で実装しました。
Keys to the Oracle Cloud第7回:【Tea break】 Oracle CloudにおけるMulti-Factor Authentication(多要素認証)の実装
標準のログインシーケンスでは、2ステップ検証の画面には遷移しませんのでご注意ください。
上記の記事を参考に各自実装をお願いします。

これからOracle Cloud管理コンソールを活用して実装をしていきます。ハンバーガーボタンを押下するとメニューが表示されます。表示されたメニューで構築を進めて行きます。
構築開始前にリージョンと、言語の確認をしましょう。必要に応じて、下図を参考に設定を変更してください。

otsuka-key2oraclecloud10-img-02

 

2.Kubernetesクラスタの作成とデプロイメントのためのポリシー構成

Container Engine for Kubernetesを使用してテナンシ内のリージョンにクラスタを作成およびデプロイするには、Container Engine for Kubernetesがテナンシ内で操作を実行できるようにポリシーを設定する必要があります。
まずはポリシー設定からはじめていきます。「ハンバーガーボタン」→「アイデンティティ」→「ポリシー」を押下してください。
(参考マニュアル)クラスタの作成とデプロイメントのためのポリシー構成
https://docs.oracle.com/cd/E97706_01/Content/ContEng/Concepts/contengpolicyconfig.htm

otsuka-key2oraclecloud10-img-03

リスト範囲のコンパートメントが「ルート」であることを確認の上、「ポリシーの作成」を押下してください。

otsuka-key2oraclecloud10-img-04

ポリシーの作成画面に以下のように値を入力していきます。

otsuka-key2oraclecloud10-img-05

すぐに作成されます。

otsuka-key2oraclecloud10-img-06

 

3.Oracle Container Engine for Kubernetes管理者グループの作成

「CURRENT DATA編」ではOracle Container Engine for Kubernetes専用の管理者グループおよび管理者を作成したいと思います。そういった実装を考えた場合、Oracle Container Engine for Kubernetes管理者はテナンシ内のクラスタ関連リソースを操作する権限を持っている必要があります。その実装はユーザーが属するグループに必要ポリシーを付与することで実現します。それではさっそく実装していきたいと思います。

(参考マニュアル)グループに必要なポリシーの作成


まずOracle Container Engine for Kubernetes専用の管理者グループから作成します。
「ハンバーガーボタン」→「アイデンティティ」→「グループ」を押下してください。

otsuka-key2oraclecloud10-img-07

「グループの作成」を押下します。

otsuka-key2oraclecloud10-img-08

値を入力します。

otsuka-key2oraclecloud10-img-09

すぐに作成されます。

otsuka-key2oraclecloud10-img-10

 

4.Oracle Container Engine for Kubernetes管理者グループ用ポリシーの作成

Oracle Container Engine for Kubernetes管理者グループ用ポリシーを設定していきます。
「ハンバーガーボタン」→「アイデンティティ」→「ポリシー」を押下してください。

otsuka-key2oraclecloud10-img-11

リスト範囲のコンパートメントが「ルート」であることを確認の上、「ポリシーの作成」を押下してください。

otsuka-key2oraclecloud10-img-12

ポリシーの設定をします。

otsuka-key2oraclecloud10-img-13

すぐに作成されます。

otsuka-key2oraclecloud10-img-14

 

5.Oracle Container Engine for Kubernetes管理者の作成

Oracle Container Engine for Kubernetes管理者を作成します。
「ハンバーガーボタン」→「アイデンティティ」→「ユーザー」を押下してください。

otsuka-key2oraclecloud10-img-15

ユーザーの作成を押下します。

otsuka-key2oraclecloud10-img-16

ユーザー作成のための値を入力します。

otsuka-key2oraclecloud10-img-17

すぐに作成されます。

otsuka-key2oraclecloud10-img-18

作成したユーザーをOracle Container Engine for Kubernetes管理者グループに所属させます。

otsuka-key2oraclecloud10-img-19

「OKE-admin-group」を押下します。

otsuka-key2oraclecloud10-img-20

「ユーザーをグループに追加」を押下します。

otsuka-key2oraclecloud10-img-21

ユーザー選択欄で「OKE-admin」を選択します。

otsuka-key2oraclecloud10-img-22

作成したユーザーをOracle Container Engine for Kubernetes管理者グループに所属させることが出来ました。

otsuka-key2oraclecloud10-img-23

準備が出来ましたのでOracle Container Engine for Kubernetes管理者にパスワードを設定して、 Oracle Container Engine for Kubernetes管理者でログインしなおします。

「ハンバーガーボタン」→「アイデンティティ」→「ユーザー」を押下してください。

otsuka-key2oraclecloud10-img-24

「OKE-admin」を押下してください。

otsuka-key2oraclecloud10-img-25

「パスワードの作成/リセット」を押下します。

otsuka-key2oraclecloud10-img-26

確認ダイアログが表示されますので「パスワードの作成/リセット」を押下します。

otsuka-key2oraclecloud10-img-27

パスワードが表示されますので「コピー」を押下してください。

otsuka-key2oraclecloud10-img-28

コピーが成功すると「コピー済」と表示されます。

otsuka-key2oraclecloud10-img-29

いったんOracle Cloudの管理コンソールからサインアウトします。

otsuka-key2oraclecloud10-img-30

「OKE-admin」として、再度ログインします。

otsuka-key2oraclecloud10-img-31

初回ログインですので、パスワード変更画面に遷移します。新しいパスワードを設定してください。

otsuka-key2oraclecloud10-img-32

「OKE-admin」としてOracle Cloudにログインすることができました。

otsuka-key2oraclecloud10-img-33

 

6.Oracle Container Engine for Kubernetesワーカー・ノード用の鍵の準備

いまから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

 

7.Oracle Container Engine for Kubernetesのプロビジョニング

Oracle Container Engine for Kubernetesをプロビジョニングしていきます。
「ハンバーガーボタン」→「開発者サービス」→「コンテナ・クラスタ(OKE)」を押下してください。

otsuka-key2oraclecloud10-img-34

リスト範囲におけるコンパートメントで「OKE」を選択してください。

otsuka-key2oraclecloud10-img-35

「クラスタの作成」を押下します。

otsuka-key2oraclecloud10-img-36

クラスタの作成ダイアログが表示されますので、詳細な値を入力していきます。

otsuka-key2oraclecloud10-img-37

今度はワーカー・ノード用の設定を入力していきます

otsuka-key2oraclecloud10-img-38

確認ダイアログが表示されますので「作成」を押下してください。

otsuka-key2oraclecloud10-img-39

作成が開始されます(作成中と表示されます)

otsuka-key2oraclecloud10-img-40

数分後、作成が完了しました(アクティブと表示されます)

otsuka-key2oraclecloud10-img-41

今回は以上となります。次回は、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


Keys to the Oracle Cloud indexページ▶▶