
この記事はFIXER Advent Calendar 2019 (https://adventar.org/calendars/4579) 13日目の記事です。前日は三浦さんの『Azure Sentinelを起動したら自分のSIEM感が再定義された件』です。
こんにちは。12月より Marketing & SalesからEnterprise Business の所属になりました、大野です。
だいぶ時間が空いてしましたが、前回「App Service(Azure) + Autonomous Database(Oracle Cloud) やってみよう」ということで、Oracle Cloud Autonomous Databaseを利用した内容を投稿しました。
今日も、Oracle Cloud関連で投稿したいと思います。
すでに、既出な情報も多いですが、今回はMicrosoft Azure と Oracle CloudをCross-Cloud接続に至るまでをご紹介します。

前回は、上記の通り、AzureのAppからOracle Cloud Autonomous DatabaseへはSSLかつクライアント資格証明を利用した通信ではあるもののインターネットをにさらされた状態ではありました。
この仕組みでシステムを提供できるケースは果たして多いのでしょうか?
エンタープライズ領域で考えた場合、この仕組みでのシステム提供はちょっと難色を示されるケースが多いのではないかと思います。
アプリケーションのレイヤーはAzureで、データベースの領域はオラクルにお任せはするものの、AzureとOracleクラウド間は専用線接続をするかたちであれば、データベースをインターネットにさらさずに済みます。
そこで、必要になるのが、AzureとOracle Cloudの専用線による相互接続になります。

今回は上記のようにAzureとOracle Cloud間を専用線(Express RouteとFast Connectの相互接続)にして、Azure App Serviceをインターネットのフロントに立てるという仕組みにしたいと思います。
これなら、データベースはインターネットにさらされていないので、納得していただけるかと思います。
実現させたい仕組みのイメージは出来たということで、早速構築したいのですが、まずどうしてもやらなければならないことがあります。それは、Express RouteをOracle Cloudに接続させてもらう機能を使えるようにする必要があります。
現在AzureからOracle Cloudへの相互接続はプレビューの機能となります。

よって、記載されている簡単なアンケートフォームから申請を行います。

申請する前のExpressRouteのプロバイダーにはOracleは存在していません。
アンケートフォームに必要事項を明記して待つこと・・・16日・・・

Oracle Cloud FastConnectが選択できるようになりました。

オラクル側はMicrosoft Azure ExpressRouteを選ぶだけです。
詳細は割愛しますが、先駆者の方々の情報を参考にして、無事AzureとOracle Cloudとの接続環境が出来ました。 ネットワークの知識が弱い私でも、きちんと手順をふんでいけば作り上げられます。
一通りのネットワークリソースを作成して、いよいよアプリ動かすぞぉ~と思ったらのですが・・・

あれ?
ここでお気づきかもしれませんが、上部の紫の帯に「このサービスまたはリソースを使用するには、有料アカウントにアップグレードする必要があります。」
がーーーーーーーーーん

リソース一覧から確認すると、同じ接続リソースはプロビジョニング中という表示になってしまいます。
そうです、Oracle Cloudの1か月フリー期間が終わってしまったことで、作ったリソースが使えなくなってしまいました。なぜか、利用できなくなるとプロビジョニング中となるみたいです。
Oracle Cloudを利用し始めて、前回のブログを書き、Azureでのプレビュー機能の申請で16日後から環境構築をして、いよいよアプリデプロイというタイミングで無料期間が終わってしまい使えなくなったということです。
やってしまいました・・・
いずれの参考サイトもPingの疎通確認レベルだったので、一歩先のアプリケーションの実行までがもうちょっとでできるところだったのですが、残念今回はここで、タイムアップです。
せっかくプレビュー申請が通って意気揚々としていたのに、そうこうしているうちにAzureのサブスクリプションも月の上限枠(Express Routeの課金により)に到達して使えなくなってしまいました。
ちょっと気持ちも、懐もゆとりが出来たらあらためて、アプリケーション実行レベルでOracle Cloudとの相互接続の状態をご紹介したいと思います。
フリープラン内で相互接続を試したい方は、Azure側を先にプレビュー申請を通してからoracle cloudを利用可能にしていくのがベターかと思います。