カテゴリー
その他 社内SE

OCI:無料枠 2台目VM (VM.Standard.E2.1.Micro)をローカルネットワークに接続する

開発用にさくらインターネットの一番安いVPSプラン(512M)を使っていたのだが、メモリが少なすぎてubuntu 22.04にアップグレードできない。仕方ないのでOracle cloudの無料枠でVM.Standard.E2.1.Microを立ち上げてそちらに移行することにした。が、実際に移行してみるととても重い。

■ UnixBenchの結果 
 さくら 512M => 1674.1
 OCI VM.Standard.E2.1.Micro => 504

1/3の性能しかない・・・。さくらは1CPU/メモリ512MB、OCIは2CPU/メモリ1GBなのに、1/3の性能しかない・・・。CPUの処理速度、メモリアクセス速度、ディスクアクセス速度、全てがさくらより遅い。

しかたないので、無料枠で2台目を立ち上げ、そこにDBを移動することにした。各VMに2枚目のNICを追加して、そこにローカルネットワークを構築するイメージでいたのだが、どうもOCIは違うらしい。

考えても仕方ないので、1台目と同じようにインスタンスを作成し、 Networkingの設定の場所で
 => 1台目で使ったものと同じVNICを選択
 => Assign a public IPv4 addressをチェック
 => Show advanced optionsを選択
 => Private IP addressに適当なIPアドレスを指定(10.0.0.20など)
としたところ、1台目のVMから10.0.0.20宛てで接続可能であった。(ちょっと不思議だが、割り当てたpublic IPからも接続可能である。)

ただし、2台間で特定の通信をするにはIngress ruleにルールを追加する必要があった。今回はmariaDB(mysql)だったので、sorceに10.0.0.0/16を指定して、宛先Port3306で登録したところ通信できるようになった。

ちなみに、それでも重かったため、1台目のサーバで以下を行ったところ、大分使える範囲まで落ち着いた。

・swapの追加 (OCIのubuntuのイメージにはswapがない。)
・nginxやopnelitespeedのワーカー数を増やす。(処理が遅いので少ないワーカーではさばけなくなる。)
・ 使ってないサービスの停止

残念ながら、無料は無料です・・・。