ねら~ITエンジニア雑記

やきうのお兄ちゃんが綴るOracle Databaseメインのブログ

Oracle Cloud の Load Balancer で Private Compute に置いた 静的HTML を ロードバランスしながら表示してみる。

こちらの記事は Oracle Cloud Infrastructure Advent Calendar 2019 Day 16 の記事となります。

Oracle Cloud Infrastructure Advent Calendar 2019
https://adventar.org/calendars/4516

表題の通り、OCI の Load Balancer で Private Compute に置いた 静的HTML を ロードバランスしてみるやで。
彡(゚)(゚)

1. 構成図

下記のような構成を組みます。
AdventC_000.jpg

ポイントは以下の通りです。

・Public Subnet に Load Balancer と 踏み台Compute を配置
・Private Subnet に Compute を 2つ配置
・Public Subnet に Internet Gateway を アタッチ
・Private Subnet に NAT Gateway と Service Gateway(※) をアタッチ
 ※本記事の構成だけであればSGWは不要ですが、後日に繋ぎます。

2. ネットワーク・リソースの構成

構成図通りに VCN, Route Table, Security List, Gateway, Subnet を作成します。下記の記事を参照すると非常に捗ります。彡(゚)(゚)

Oracle Cloudが永遠に無料らしいので開発環境を作ってみたかった (ネットワーク編)
https://qiita.com/mokkan/items/ffb5bae17edce8e563be

下記スクショはPublic/Privateそれぞれのセキュリティ・リストとルート表彡(゚)(゚)

AdventC_007.jpg
AdventC_008.jpg
AdventC_009.jpg
AdventC_010.jpg

3. Computeインスタンス作成&sshログイン

Computeインスタンスを粛々と作成します。下記記事が参考になります。

【OCI】oracle cloud -仮想マシン(Compute)作成編-【初心者向け】
https://qiita.com/manaki079/items/0ded6b4e25c2f57b3657

踏み台を経由した Private Compute の sshログイン には下記記事のやり方を参考にしています。

Pageantを使用した踏み台サーバー経由のssh
https://qiita.com/untitle_23/items/7af5e6b1d29f95c13f36

4. Private Compute に Apache(httpd)インストール 及び OS firewall の 80番ポート開放

下記記事を参考にさせて頂きました。(`・ω・)ゞ

CentOS7.2 httpdの設定
https://qiita.com/salt_field/items/3e255c3356006a1e020f

sudo su -  
yum install httpd  
systemctl start httpd  
firewall-cmd --add-service=http --zone=public --permanent  
firewall-cmd --reload  

5. 静的HTML の配置

Private Compute の /var/www/html に index.html を配置します。BODY部分は変えておくとロードバランス時の区別が付きます彡(゚)(゚)

<!DOCTYPE html>  
<HTML>  
<HEAD>  
    <title>LB test</title>  
</HEAD>  
<BODY>  
    Hello, host2.  
</BODY>  
</HTML>  

6. Load Balancer, Backend Set, LB Listener の作成

Load Balancer, Backend Set, LB Listener を作成します。スクショぺたぺた彡(゚)(゚)
AdventC_001.jpg
AdventC_002.jpg
AdventC_003.jpg
AdventC_004.jpg

7. Load Balancer へのアクセス(静的HTML表示)

Load Balancer の Public IP を ブラウザの URL に指定してアクセスします。
http://\<LBのPublic IP>/index.html へのアクセスで、ロードバランスできてる!彡(^)(^)
AdventC_006.jpg
AdventC_005.jpg

8. まとめ

当初は Always Free で この記事書こうとしてたのですが、Always Free だと Private Computeにsshはできるものの、NAT Gateway が作れなくてyumが出来なくてですね……彡(-)(-)
とまれ、Load Balancer の基本的な動きは確認できました。LBのSSL(https)設定とか、Autonomous Database接続する簡易アプリとか、続きを書くかも?彡(゚)(゚)