Oracle Analytics Cloud：Load Balancer経由でプライベート・サブネット内のOACに接続

# はじめに

プライベート・サブネットに作成されたOracle Analytics Cloud (OAC)に対して、プライベート・エンドポイントを介してインターネット側からOACへのアクセスします。今回はLoad Balancerを使用してOACにアクセスする方法を実施します。

構成イメージはこちらです。
Private Access Channelを使用したAnalytics Cloud とADWの連携ついては[こちら](https://qiita.com/yushibat/items/716924c05c59e5107267)の記事で実施しています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/5f3b213c-2e0e-6c00-a631-8c0a31d9642a.png)

## 1. ネットワークの構成

#### - VCNの作成
以下の設定項目で**VCN**を作成します。
名前：VCN_OAC（任意）
IPv4 CIDR ブロック：10.0.0.0/16（任意）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/133a9a8b-1108-163e-4fa4-ac16ab1f5d7a.png)

#### - インターネット・ゲートウェイの作成
作成したVCN内に**インターネット・ゲートウェイ**を作成します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/35222540-c869-1b36-d45e-b819fa729e17.png)

#### - ルート表の作成

まず、Load Balancerを配置する**パブリック・サブネット**に紐づける**ルート表**を作成します。

名前：RT-LB-Public-Subnet（任意）
ルート・ルール
ターゲット・タイプ：インターネット・ゲートウェイ
宛先CIDRブロック：0.0.0.0/0
コンパートメント内のターゲット・インターネット・ゲートウェイ：InternetGW（先程作成したもの）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/75d2fd99-7aac-63c4-6579-1340cabf72e8.png)

続いて、OACを作成する**プライベート・サブネット**に紐づける**ルート表**を作成します。

名前：RT-OAC-Private-Subnet（任意）
ルート・ルール：なし

#### - セキュリティ・リストの作成

まず、Load Balancerを配置する**パブリック・サブネット**に紐づける**セキュリティ・リスト**を作成します。
名前：SL-LB-Public-Subnet

イングレス・ルール：
    ステートレス：選択しない
    ソース・タイプ：CIDR
    ソースCIDR：0.0.0.0/0
    IPプロトコル：TCP
    ソース・ポート範囲：入力しない（All）
    宛先ポート範囲：443

エグレス・ルール：
    ステートレス：チェックをオフ
    宛先タイプ：CIDR
    宛先CIDR：0.0.0.0/0
    IPプロトコル：すべてのプロトコル

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/aed52d67-f49c-9c7c-d228-015370b93226.png)

続いて、Oracle Analytics Cloud（OAC）を配置する**プライベート・サブネット**に紐づける**セキュリティ・リスト**を作成します。

名前：SL-OAC-Private-Subnet

イングレス・ルール：
    ステートレス：選択しない
    ソース・タイプ：CIDR
    ソースCIDR：10.0.1.0/24（
    IPプロトコル：TCP
    ソース・ポート範囲：入力しない（All）
    宛先ポート範囲：443

エグレス・ルール：
    ステートレス：チェックをオフ
    宛先タイプ：CIDR
    宛先CIDR：0.0.0.0/0
    IPプロトコル：すべてのプロトコル

#### - サブネットの作成

まず、Load Balancerを配置する**パブリック・サブネット**を作成します。

名前：LB-Public-Subnet
サブネット・タイプ：リージョナル
IPv4 CIDR Block：10.0.1.0/24
ルート表：RT-LB-Public-Subnet
サブネット・アクセス：パブリック・サブネット
このSUBNETでDNSホスト名：チェックを入れる
セキュリティ・リスト：SL-LB-Public-Subnet

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/d699f594-ec55-42db-c6fc-c47465872f78.png)

続いてOracle Analytics Cloud（OAC）を配置する**プライベート・サブネット**を作成します。

名前：OAC-Private-Subnet
サブネット・タイプ：リージョナル
IPv4 CIDR Block：10.0.2.0/24
ルート表：RT-OAC-Private-Subnet
サブネット・アクセス：プライベート・サブネット
このSUBNETでDNSホスト名：チェックを入れる
セキュリティ・リスト：SL-OAC-Private-Subnet

パブリック・サブネット、プライベート・サブネット、それぞれが作成されたら、**ネットワークの構成**は以上です。

## 2. OACの構築

[こちら](https://qiita.com/yushibat/items/716924c05c59e5107267#1-oac%E3%81%AE%E6%A7%8B%E7%AF%89)を参考に、**OACの構築**を行います。

>[1. OACの構築](https://qiita.com/yushibat/items/716924c05c59e5107267#1-oac%E3%81%AE%E6%A7%8B%E7%AF%89)

※今回は、アナリティクス・インスタンスのネットワーク・アクセスのアクセス・タイプは「**プライベート**」で作成し、[1.](https://qiita.com/yushibat/items/923b3998d3a72cdd4937#1-%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%81%AE%E6%A7%8B%E6%88%90)で作成したVCNとサブネット（VCN: VCN_OAC、サブネット: OAC-Private-Subnet）を指定します。 

※10分程度で作成できました。

## 3. ADWとの連携

[こちら](https://qiita.com/yushibat/items/716924c05c59e5107267#2-adb%E3%81%AE%E6%8E%A5%E7%B6%9A%E5%AE%9A%E7%BE%A9%E7%A2%BA%E8%AA%8D)を参考にPrivate Access Channelを使用してADWと接続します。

>[2. ADBの接続定義確認](https://qiita.com/yushibat/items/716924c05c59e5107267#2-adb%E3%81%AE%E6%8E%A5%E7%B6%9A%E5%AE%9A%E7%BE%A9%E7%A2%BA%E8%AA%8D)
>[3. Private Access Channel (PAC)の構成](https://qiita.com/yushibat/items/716924c05c59e5107267#3-private-access-channelpac%E3%81%AE%E6%A7%8B%E6%88%90)
>[4. 接続の作成](https://qiita.com/yushibat/items/716924c05c59e5107267#4-%E6%8E%A5%E7%B6%9A%E3%81%AE%E4%BD%9C%E6%88%90)

※**Private Access Channel**の構成数十分（20分弱）で完了しました。

## 4. ロード・バランサーの作成

#### - ロードバランサーの作成

**パブリック・サブネット**内に、**ロード・バランサー**を作成します。
    ロード・バランサ名：LB-OAC
    可視性タイプ：パブリック
    パブリックIPアドレスの割当て：エフェメラルIPアドレス
    帯域幅：任意（ここでは最小：10 最大:10）

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/90dc1368-743e-0e6c-1aa1-d560bd45df84.png)

**ネットワーキングの選択**
    仮想クラウド・ネットワーク：VCN_OAC
    サブネット：LB-Public-Subnet
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/5549c374-8046-d81c-2afc-9fe35c796b24.png)

バックエンド・サーバーの選択：ここでは追加しません
**ヘルス・チェック・ポリシーの指定**
    プロトコル：TCP
    ポート：443
バックエンドセット
    バックエンド・セット名：BS-OAC
    セキュリティ・リスト：バックエンド・サーバーの追加後にセキュリティ・リスト・ルールを手動で構成します

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/a39c7a4a-473e-c1d9-fbeb-a6cd59208665.png)

**リスナー**
    リスナー名：listener-BS-OAC
    リスナーで処理するトラフィックのタイプを指定します：TCP
    リスナーでイングレス・トラフィックをモニターするポートを指定します：443
    SSLの使用：有効化しない

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/2dd117ea-7b73-12bb-b7ae-ec58f8e5f8c5.png)

必要に応じて、ロギングを有効化します。

ロード・バランサ作成後、作成したロード・バランサ「LB-OAC」がアクティブになります。（※1分程度で作成できました。）
バックエンドはこの後登録するので、現段階では警告が出ていますが問題ありません。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/4265d8b3-0641-5b6b-92e0-3a188d4a716a.png)


## 5. バックエンドの登録

#### - OACのプライベート・エンドポイントの確認

まず、**アナリティクス・インスタンス**の詳細画面で**プライベート・エンドポイントのIPアドレス**を確認しておきます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/af3827fe-9681-88c8-6a59-102f827e957d.png)

#### - バックエンドの追加

先程作成したバックエンド・セット「BS-OAC」を選択して、**バックエンドの追加**をします。

バックエンド・タイプ：IPアドレス
    IPアドレス：OACの詳細画面で確認したIPアドレス
    ポート：443
    重み：1

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/754d560f-b7e5-9426-c0dd-81c9ea2a4531.png)

少し時間をおいてバックエンドに追加されると、バックエンドのヘルスが「**OK**」になります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/5bd9ebe5-44e9-42dc-361d-cb5c17d9dd46.png)

あわせてバックエンド・セットの全体的なヘルスも「**OK**」になっていることを確認します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/7e15e7e9-1012-fe50-2c7b-130ea8af4ae8.png)

## 6. OACコンソールへの接続

クライアントマシンでOACのホスト名が正しく解決されるようhostsファイルにエントリーを追加します。
Windowsの場合は、C:\Windows\System32\drivers\etc\hostsを**管理者権限**で開き、以下のような行を追加します。
ロードバランサのパブリックIP Analyticd Cloudインスタンスのホスト名

```:書式
<ロードバランサのパブリックIP> <Analyticd Cloudインスタンスのホスト名>
```

```:例
138.XX.XX.XX oac-idqcucnenh88-ki.analytic/s.ocp.oraclecloud.com
```

作成したアナリティクス・インスタンスの「インスタンスの詳細」画面にあるURLから、アナリティクス・インスタンスにアクセスしてみます。

**接続できました！**

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3963468/337bf7d3-b519-9940-3270-88c9bc74a4e8.png)