
- Oracle Cloud
- Oracle Database
Oracle Cloud VMware SolutionでのVMware HCX環境構築手順(後編)
前回の記事でOCVS)でHCXを利用するための前提となる手順の前半をお伝えしました。本記事では後続の手順であるサービスメッシュ作成・L2延伸手順を記載し、仮想マシンを移行できる状態、つまりHCX環境の構築完了までを説明します。
|
クラウドサービスを利用する一つの理由として、「構築や運用を簡単に実施する」というものがあります。
これは、クラウドであらかじめ用意されているサービス(ゲートウェイサービス,ファイアウォールサービス等)を使うことにより実現が可能ですが、これらのサービスを利用するとこれまでオンプレミスのルータや専用サーバの機能を利用した運用ができなくなることがあります。
クラウド化により運用を変えるというのも一つの手段ですが、クラウド環境でもこれまでと同様の仕組みを利用することで、運用方法や社内ノウハウを活かすことが可能です。
今回はあるお客様からの相談(プロキシサーバの利用)を例として、「Oracle Cloudでもオンプレミスと同じ構成が実現できる」という例をご紹介します。
お客様の要件と質問は以下です。
要件はOracle Cloudの基本機能では提供されていない内容であったり、お客様は既にプロキシサーバの運用ノウハウを持っていることもあり、それらを生かすにはOracle Cloudでもプロキシサーバを利用することがベストであると考えました。
そのため、事前検証としてOracle Cloudでのsquidを用いたプロキシサーバの利用可否を検証しました。
まずはパブリックサブネットとプライベートサブネット等のネットワークリソースと、それぞれのサブネットにインスタンスを構築します。
システム構成としては、パブリックサブネットに構築するインスタンスがプロキシサーバとなり、プライベートサブネットからインターネットへの通信については、全てこのプロキシサーバを通る構成です。
そのため、NAT Gatewayは構築せずプライベートサブネットに関連付けるルーティングルールとして、ターゲットをプロキシサーバ(プライベートIP)とし、宛先を0.0.0.0/0とする設定を行います。
|
なお、ルーティングルールでプライベートIPをターゲットに設定する場合、該当のIPが割り当てられているVNICで「ソース/宛先チェックのスキップ」を有効とする必要がありますのでご注意ください。
|
この場合、パブリックサブネットに構築したインスタンスからプライベートサブネットに構築したインスタンスへの接続は可能です。
しかしながら、プライベートサブネット内のインスタンスからはインターネットに接続することはできません(wgetで確認)。
■squid-srvからsquid-cli へ接続 [opc@squid-srv ~]$ ssh -i id_rsa opc@10.0.1.2 The authenticity of host '10.0.1.2 (10.0.1.2)' can't be established. ECDSA key fingerprint is SHA256:4rLq2JdhIANEqyizIkZ8b80G9uBHOK8vchZaqAxIgTQ. ECDSA key fingerprint is MD5:27:59:26:98:4b:06:90:d0:75:e4:30:a7:55:f3:f6:bc. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '10.0.1.2' (ECDSA) to the list of known hosts. ■squid-cli からインターネットへの疎通を実施(失敗) [opc@squid-cli ~]$ wget https://www.ashisuto.co.jp/ --2020-06-15 09:15:27-- https://www.ashisuto.co.jp/ Resolving www.ashisuto.co.jp (www.ashisuto.co.jp)... 202.32.38.200 Connecting to www.ashisuto.co.jp (www.ashisuto.co.jp)|202.32.38.200|:443... → 接続ができず応答待ちとなる
そのため、インターネットへの接続を実施するためのプロキシサーバを構築します。
プロキシサーバにyumコマンドを用いてsquidをインストールします。
[opc@squid-srv ~]$ sudo yum install squid -y (略) Installed: squid.x86_64 7:3.5.20-15.el7_8.1 Dependency Installed: libecap.x86_64 0:1.0.0-1.el7 libtool-ltdl.x86_64 0:2.4.2-22.el7_3 perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7 perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7 perl-DBI.x86_64 0:1.627-4.el7 perl-Data-Dumper.x86_64 0:2.145-3.el7 perl-Digest.noarch 0:1.17-245.el7 perl-Digest-MD5.x86_64 0:2.52-3.el7 perl-IO-Compress.noarch 0:2.061-2.el7 perl-Net-Daemon.noarch 0:0.48-5.el7 perl-PlRPC.noarch 0:0.2020-14.el7 squid-migration-script.x86_64 7:3.5.20-15.el7_8.1 Complete!
続いて、squidの設定を編集します(VCN内のCIDRからの通信を許可)
[opc@squid-srv ~]$ sudo vi /etc/squid/squid.conf ■以下の内容を追記 #Allow VCN acl our_network src 10.0.0.0/16 ★VCNのCIDRを記載 # Allow Network ACL Allow/Deny Section# http_access allow our_network
最後に、squidの実行とOS上でのfirewall設定を行います。
■squidの起動 [opc@squid-srv ~]$ sudo systemctl start squid [opc@squid-srv ~]$ sudo systemctl status squid ● squid.service - Squid caching proxy Loaded: loaded (/usr/lib/systemd/system/squid.service; disabled; vendor preset: disabled) Active: active (running) since Mon 2020-06-15 08:01:26 GMT; 5s ago Process: 9321 ExecStart=/usr/sbin/squid $SQUID_OPTS -f $SQUID_CONF (code=exited, status=0/SUCCESS) Process: 9315 ExecStartPre=/usr/libexec/squid/cache_swap.sh (code=exited, status=0/SUCCESS) Main PID: 9323 (squid) CGroup: /system.slice/squid.service tq9323 /usr/sbin/squid -f /etc/squid/squid.conf tq9325 (squid-1) -f /etc/squid/squid.conf mq9326 (logfile-daemon) /var/log/squid/access.log Jun 15 08:01:26 squid-srv systemd[1]: Starting Squid caching proxy... Jun 15 08:01:26 squid-srv squid[9323]: Squid Parent: will start 1 kids Jun 15 08:01:26 squid-srv squid[9323]: Squid Parent: (squid-1) process 9325 started Jun 15 08:01:26 squid-srv systemd[1]: Started Squid caching proxy. ■firewallルールの編集 [opc@squid-srv ~]$ sudo firewall-cmd --permanent --zone=public --add-forward-port=port=80:proto=tcp:toport=3128:toaddr=10.0.0.2 success [opc@squid-srv ~]$ sudo firewall-cmd --permanent --zone=public --add-port=3128/tcp success [opc@squid-srv ~]$ sudo firewall-cmd --permanent --add-masquerade success [opc@squid-srv ~]$ sudo firewall-cmd --complete-reload success
以上でプロキシサーバの設定は完了です。続いて、クライアントサーバの設定を実施します。
クライアントサーバの/etc/profileにプロキシサーバに関する設定を記載します。
先程wgetコマンドを実行した際に443ポートが利用されていたため、今回はHTTPSを用いた通信のみを許可します。
[opc@squid-cli ~]$ sudo vi /etc/profile ■以下の内容を追記 MY_PROXY_SRV="http://10.0.0.2:3128/" HTTPS_PROXY=$MY_PROXY_SRV https_proxy=$MY_PROXY_SRV export HTTPS_PROXY https_proxy ■設定の反映 [opc@squid-cli ~]$ source /etc/profile
以上でプロキシサーバ側、クライアント側共に設定が完了です。先程実行したときには失敗したwgetコマンドを再度実行してみます。
■squid-cli からインターネットへの疎通を実施
[opc@squid-cli ~]$ wget https://www.ashisuto.co.jp/
--2020-06-15 09:17:36-- https://www.ashisuto.co.jp/
Connecting to 10.0.0.2:3128... connected.
Proxy request sent, awaiting response... 200 OK
Length: 34848 (34K) [text/html]
Saving to: ‘index.html’
100%[===============================================================>] 34,848 --.-K/s in 0.007s
2020-06-15 09:17:36 (4.50 MB/s) - ‘index.html’ saved [34848/34848]
プロキシサーバを経由した接続が行われ、wgetコマンドが成功したことが無事に確認できました。
また、プロキシサーバのsquidログ(/var/log/squid/access.log)を見ることで、通信のログを確認できます。
[root@squid-srv squid]# cat /var/log/squid/access.log 1592212656.092 35 10.0.1.2 TCP_TUNNEL/200 39164 CONNECT www.ashisuto.co.jp:443 - HIER_DIRECT/202.32.38.200 -
今回はOracle Cloudにsquidを用いたプロキシサーバを構築し、正常に利用できることを確認しました。
ネットワークの設定周りのノウハウが必要になりますが、このようにオンプレミスなどで培ってきた運用を生かした構成をOracle Cloudで採用することが可能です。
一方で、上記した構成の場合プロキシサーバが単一障害点となってしまいますので、冗長化や監視機能の利用が必須となります。
※Oracle Cloudで用意されているゲートウェイサービスを利用する場合、冗長化等はOracle Cloud側で実施されていますので、考慮する必要がありません。
このように、クラウドサービスを利用する場合とオンプレミスの仕組みを生かす場合の両方にメリット/デメリットがあります。そのため、クラウド化を成功に導くためにも「正しくシステム要件を洗い出しを実施した上で、どの仕組みを採用するのか」をご検討下さい。
![]() |
---|
2015年にアシストに入社後、Oracle DatabaseやOracle Cloudを中心としたフィールド技術を担当。
導入支援だけではなく、最新機能の技術検証も積極的に実施。社内外のイベントにて発表も行っている。...show more
■本記事の内容について
本記事に示した定義及び条件は変更される場合があります。あらかじめご了承ください。
■商標に関して
・Oracle®、Java、MySQL及びNetSuiteは、Oracle、その子会社及び関連会社の米国及びその他の国における登録商標です。
・Amazon Web Services、AWS、Powered by AWS ロゴ、[およびかかる資料で使用されるその他の AWS 商標] は、Amazon.com, Inc. またはその関連会社の商標です。
文中の社名、商品名等は各社の商標または登録商標である場合があります。
前回の記事でOCVS)でHCXを利用するための前提となる手順の前半をお伝えしました。本記事では後続の手順であるサービスメッシュ作成・L2延伸手順を記載し、仮想マシンを移行できる状態、つまりHCX環境の構築完了までを説明します。
Oracle Databaseの利用において安定稼働を実現するためには『バックアップや監視をどう実施していくのか?』という点の検討は欠かせません。今回は、これらのドキュメントを読み解きながらOracle Database@AWSにおけるバックアップ/監視にフォーカスして情報をお届けいたします。
本記事では、OCVS同士で通信ができるようにファイアウォールやルーティングなどのネットワークを設定し、HCXで移行元と移行先を接続するサイトペアリングまでの手順を記載します。