Keys to the Oracle Cloud
第9回:【CURRENT DATA編】
Oracle CloudのスタートアップおよびIaaSレイヤの実装①(ネットワーク)

大塚紳一郎, 2020年2月


著者紹介

大塚 紳一郎(おおつか しんいちろう)

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/index.html)をご確認頂きたく思います。
  • 本連載は私個人の理解に基づいており、事実と異なる可能性があることをご了承いただきたく思います。

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

otsuka-key2oraclecloud9-img-01

 

テーマとするPaaSはOracle Container Engine for Kubernetes(以降OKE)です。今回からOracle Cloudの実装方法を紹介していきます。今回はOKEを構築するための準備を行いたいと思います。ネットワーク環境整備などOracle Cloud Infrastructureでの準備作業を行います。

 

Oracle Cloudのスタートアップ

1.Oracle Cloudでの実装を始める前に
Oracle Cloudの操作は管理コンソールを用いて行います。ログインに際してテナント名を取得する必要があります。テナント名とは、OCIを契約したり、無料トライアルを申し込んだ際に払いだされる一意のIDのことです。
Oracle Cloud 管理コンソールへのSign up準備方法を3つ紹介します。

無料トライアルでのOracle Cloudサービスの使用

担当の営業さんやOracle Digitalに相談。
Oracle Digitalはフリーダイヤルによる電話での相談窓口※やWebフォームによる窓口、そしてチャットによる相談を行うことができ、オラクルの製品やクラウドサービス導入に関して丁寧な支援が受けられます。

※0120-155-096
受付時間 月~金 9:00-12:00 / 13:00-17:00(祝日および年末年始休業日を除く)

Oracle Cloudの公式Webサイトからの契約

2.Oracle Cloud管理コンソールへのSign up
筆者は前述の②にて準備をしました。申し込みを行い、準備が完了するとメールが届きます(下図参照)そのメールにある「マイ・サービスのアクティブ化」を押下し、Oracle Cloud管理コンソールSign upへの準備を進めていきます。
otsuka-key2oraclecloud9-img-02

テナント名(クラウド・アカウント名) 新規の名称を命名します
デフォルトのデータ・リージョン名 筆者は北アメリカを選択。Ashburnにて今回の連載の実装を行います
最新の提供リージョンの情報は以下を参照してください
https://www.oracle.com/cloud/data-regions.html
テナント管理者の登録 電子メールアドレス、名、姓を登録します

前述の管理者宛に以下のような電子メールが届き、準備は完了です。

otsuka-key2oraclecloud9-img-03

早速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-key2oraclecloud9-img-05

 

Oracle Cloud Infrastructureでの準備作業

それでは、いよいよ実装に入っていきます。今回作成するのは図中赤枠(COMPARTMENT OKE)のネットワークまわりです。Oracle Container Engine for Kubernetesはプロビジョニング時にネットワークまで自動構築してくれる「クイック作成」と、構築済ネットワークを利用する「カスタム作成」の2種類の構築方法が選択できます。
本連載では後者の「カスタム作成」を前提にしたいと思います。


otsuka-key2oraclecloud9-img-06

実装手順は以下の8ステップとなります。

  • Step1:コンパートメントの作成
  • Step2:仮想クラウド・ネットワーク(VCN)の作成
  • Step3:ロードバランサ用のセキュリティ・リストの作成
  • Step4:ワーカー・ノード用のセキュリティ・リストの作成
  • Step5:インターネット・ゲートウェイの作成
  • Step6:ルート表の作成
  • Step7:ロードバランサ用サブネットの作成
  • Step8:ワーカー・ノード用サブネットの作成

少し長くなりますが、頑張って作っていきましょう。
それでは、さっそく始めたいと思います。

 

1.コンパートメントの作成
 まずは、これから作成するクラウド・リソースを格納していくコンパートメントを作成する必要があります。
 皆さんは現在Oracle Cloudの管理コンソールにログインしていると思います。ハンバーガーボタンを押下し、その後「アイデンティティ」→「コンパートメント」の順に押下して作成画面を表示します。
 もし日本語になっていない場合は、下図のように日本語を設定してください。

otsuka-key2oraclecloud9-img-07

「コンパートメントの作成」を押下して、作成を開始しましょう。

otsuka-key2oraclecloud9-img-08

コンパートメント作成画面にて、さっそく値を入力していきましょう。

otsuka-key2oraclecloud9-img-09

「コンパートメントの作成」ボタンを押下すると、すぐに作成されます。
これから作成するクラウド・リソースは、すべて「OKE」コンパートメントに関連付けていきます。

otsuka-key2oraclecloud9-img-10

 

2.仮想クラウド・ネットワーク(VCN)の作成
 次にVCNを作成したいと思います。
VCNの作成は「ハンバーガーボタン」→「ネットワーキング」→「仮想クラウド・ネットワーク」の順で押下して作成画面を表示します。

otsuka-key2oraclecloud9-img-11

コンパートメントで「OKE」を選択し、その後「仮想クラウド・ネットワークの作成」を押下します。

otsuka-key2oraclecloud9-img-12

VCN作成画面にて、さっそく値を入力していきましょう。

otsuka-key2oraclecloud9

「仮想クラウド・ネットワークの作成」を押下すると、すぐに作成されます。

otsuka-key2oraclecloud9-img-14

3.ロードバランサ用のセキュリティ・リストの作成
インターネットからロードバランサに届くトラフィックは、インターネット・ゲートウェイ経由で通信します。その為、以下のようにセキュリティ・リストを設定します。

~イングレス:インターネット・ゲートウェイからのトラフィック制御ルール~

ステートレス チェックします(ON)
ソースタイプ CIDR
ソースCIDR 0.0.0.0/0
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 All

 

~エグレス:インターネット・ゲートウェイへのトラフィック制御ルール~

ステートレス チェックします(ON)
宛先タイプ CIDR
宛先CIDR 0.0.0.0/0
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 All

それでは実装していきましょう。
「セキュリティ・リスト」を押下してください。

otsuka-key2oraclecloud9-img-15

「セキュリティ・リストの作成」を押下してください。


otsuka-key2oraclecloud9-img-16

下図のような入力画面が起動します。
まず入力の仕方を説明します。


otsuka-key2oraclecloud9-img-17

実際に入力すると下図のようになります。


otsuka-key2oraclecloud9-img-18

すぐに作成されます。


otsuka-key2oraclecloud9-img-19

4.ワーカー・ノード用のセキュリティ・リストの作成
それでは続いてワーカー・ノード用のセキュリティ・リストを作成したいと思います。
マニュアル「ワーカー・ノード、サブネット、セキュリティ・リストの構成」を参考に設定します。
https://docs.oracle.com/cd/E97706_01/Content/ContEng/Concepts/contengnetworkconfig.htm

ロードバランサ用のセキュリティ・リストの作成の設定方法を参考に、以下のルールを実装してください。
・作成するセキュリティ・リストの名前:workers
~イングレス:インターネット・ゲートウェイからのトラフィック制御ルール~

セキュリティ・ルール①

ステートレス チェックします(ON)
ソースタイプ CIDR
ソースCIDR AD1のSubnetに付与するCIDR
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 All

セキュリティ・ルール②

ステートレス チェックします(ON)
ソースタイプ CIDR
ソースCIDR AD2のSubnetに付与するCIDR
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 All

セキュリティ・ルール③

ステートレス チェックします(ON)
ソースタイプ CIDR
ソースCIDR AD3のSubnetに付与するCIDR
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 All

セキュリティ・ルール④(OKEからWorker Nodeを管理するための通信)

ステートレス チェックしない(OFF)
ソースタイプ CIDR
ソースCIDR 130.35.0.0/16
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 22

セキュリティ・ルール⑤(OKEからWorker Nodeを管理するための通信)

ステートレス チェックしない(OFF)
ソースタイプ CIDR
ソースCIDR 134.70.0.0/17
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 22

セキュリティ・ルール⑥(OKEからWorker Nodeを管理するための通信)

ステートレス チェックしない(OFF)
ソースタイプ CIDR
ソースCIDR 138.1.0.0/16
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 22

セキュリティ・ルール⑦(OKEからWorker Nodeを管理するための通信)

ステートレス チェックしない(OFF)
ソースタイプ CIDR
ソースCIDR 140.91.0.0/17
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 22

セキュリティ・ルール⑧(OKEからWorker Nodeを管理するための通信)

ステートレス チェックしない(OFF)
ソースタイプ CIDR
ソースCIDR 147.154.0.0/16
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 22

セキュリティ・ルール⑨(OKEからWorker Nodeを管理するための通信)

ステートレス チェックしない(OFF)
ソースタイプ CIDR
ソースCIDR 192.29.0.0/16
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 22

セキュリティ・ルール⑩(デフォルトNodePortの範囲が30000~32767のワーカー・ノードへのインバウンド・トラフィック)

ステートレス チェックしない(OFF)
ソースタイプ CIDR
ソースCIDR 0.0.0.0/0
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 30000-32767

~エグレス:インターネット・ゲートウェイへのトラフィック制御ルール~
セキュリティ・ルール①

ステートレス チェックします(ON)
ソースタイプ CIDR
ソースCIDR AD1のSubnetに付与するCIDR
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 All

セキュリティ・ルール②

ステートレス チェックします(ON)
ソースタイプ CIDR
ソースCIDR AD1のSubnetに付与するCIDR
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 All

セキュリティ・ルール③

ステートレス チェックします(ON)
ソースタイプ CIDR
ソースCIDR AD3のSubnetに付与するCIDR
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 All

セキュリティ・ルール④(Internetへのトラフィック)

ステートレス チェックしない(OFF)
ソースタイプ CIDR
ソースCIDR 0.0.0.0/0
IPプロトコル TCP
ソース・ポート範囲 All
宛先ポート範囲 All

実装すると下図のようになります。

otsuka-key2oraclecloud9-img-20

イングレス・ルールが一覧化されます。次に「エグレス・ルール」を押下してください。


otsuka-key2oraclecloud9-img-21

今度は「エグレス・ルール」が一覧化されます。


otsuka-key2oraclecloud9-img-22

次はインターネット・ゲートウェイを作成していきます。

 

5.インターネット・ゲートウェイの作成

インターネットからロードバランサに届くトラフィックは、インターネット・ゲートウェイ経由で通信します。そのためのインターネット・ゲートウェイを作成します。


otsuka-key2oraclecloud9-img-23

次に「インターネット・ゲートウェイの作成」を押下します。


otsuka-key2oraclecloud9-img-24

それでは値を入力していきましょう。


otsuka-key2oraclecloud9-img-25

「インターネット・ゲートウェイの作成」を押下すると、すぐに作成されます。


otsuka-key2oraclecloud9-img-26

6.ルート表の作成

次に、作成したインターネット・ゲートウェイをVCNに接続します。 「ルート表」を押下してください。


otsuka-key2oraclecloud9-img-27

「ルート表の作成」を押下してください。


otsuka-key2oraclecloud9-img-28

値を入力していきます。


otsuka-key2oraclecloud9-img-29

「追加のルート・ルール」を入力していきます。


otsuka-key2oraclecloud9-img-30

以下のように、すぐに作成されます。


otsuka-key2oraclecloud9-img-31

次はサブネットを作成します。「サブネット」を押下してください。


otsuka-key2oraclecloud9-img-32

「サブネットの作成」を押下します。


otsuka-key2oraclecloud9-img-33

7.ロードバランサ用サブネットの作成

下表の内容で2つのサブネットを作成します(AD1にひとつ、AD2にひとつ。計2つ)

名前 LB-1 LB-2
サブネット・タイプ 可用性ドメイン固有 可用性ドメイン固有
可用性ドメイン cEop:US-ASHBURN-AD-1 cEop:US-ASHBURN-AD-2
CIDRブロック 例 XX.X.11.0/XX 例 XX.X.12.0/XX
ルート表 OKE-routetable OKE-routetable
サブネットアクセス パブリック・サブネット パブリック・サブネット
DNS解決 ON ON
DNSラベル 自動生成される値を利用 自動生成される値を利用
DNSドメイン名 自動生成される値を利用 自動生成される値を利用
DHCPオプション Default DHCP Options for OKE Default DHCP Options for OKE
セキュリティ・リスト loadbalancers loadbalancers
タグ 利用しない(入力しない) 利用しない(入力しない)

サブネット「LB-1」の入力画面を以下に記載します。

otsuka-key2oraclecloud9-img-34

こちらはサブネット「LB-2」の入力画面です。


otsuka-key2oraclecloud9-img-35

以下のように作成されました。

otsuka-key2oraclecloud9-img-36

8.ワーカー・ノード用サブネットの作成

下表の内容で3つのサブネットを作成します(AD1にひとつ、AD2にひとつ、AD3にひとつ。計3つ)

名前 WORKER-1 WORKER-2 WORKER-3
サブネット・タイプ cEop:US-ASHBURN-AD-1 cEop:US-ASHBURN-AD-2 cEop:US-ASHBURN-AD-3
可用性ドメイン 例 XX.X.21.0/XX 例 XX.X.22.0/XX 例 XX.X.23.0/XX
CIDRブロック 例 XX.X.11.0/XX 例 XX.X.12.0/XX
ルート表 OKE-routetable OKE-routetable OKE-routetable
サブネットアクセス パブリック・サブネット パブリック・サブネット パブリック・サブネット
DNS解決 ON ON ON
DNSラベル 自動生成される値を利用 自動生成される値を利用 自動生成される値を利用
DNSドメイン名 自動生成される値を利用 自動生成される値を利用 自動生成される値を利用
DHCPオプション Default DHCP Options for OKE Default DHCP Options for OKE Default DHCP Options for OKE
セキュリティ・リスト workers workers workers
タグ 利用しない(入力しない) 利用しない(入力しない) 利用しない(入力しない)

サブネット「WORKER-1」の入力画面を以下に記載します。

otsuka-key2oraclecloud9-img-37

こちらはサブネット「WORKER-2」の入力画面です。


otsuka-key2oraclecloud9-img-38

2019年10月にOracle Container Engine for Kubernetesはリージョナル・サブネットに対応しました。
サブネット・タイプ:リージョナルも選択可能です。
こちらで最後になります。サブネット「WORKER-3」の入力画面です。

otsuka-key2oraclecloud9-img-39

以下のようになっていれば、完成です。

otsuka-key2oraclecloud9-img-40

今回は以上となります。次回は、このネットワーク上にOracle Container Engine for Kubernetesをプロビジョニングしていきます。読んで頂き、ありがとうございました。


※コンパートメントに関するマニュアル
https://docs.oracle.com/cd/E97706_01/Content/Identity/Tasks/managingcompartments.htm


※仮想クラウド・ネットワークに関するマニュアル
https://docs.oracle.com/cd/E97706_01/Content/Network/Concepts/overview.htm


※セキュリティ・リストに関するマニュアル
https://docs.oracle.com/cd/E97706_01/Content/Network/Concepts/securitylists.htm


※インターネット・ゲートウェイに関するマニュアル
https://docs.oracle.com/cd/E97706_01/Content/Network/Tasks/managingIGs.htm


※サブネットに関するマニュアル
https://docs.oracle.com/cd/E97706_01/Content/Network/Tasks/managingVCNs.htm


※Oracle Container Engine for Kubernetes 「ワーカー・ノード、サブネット、セキュリティ・リストの構成」
https://docs.oracle.com/cd/E97706_01/Content/ContEng/Concepts/contengnetworkconfig.htm


Keys to the Oracle Cloud indexページ▶▶