Oracle CloundのAlways Freeインスタンスが死んだ


Oracleさんから「Production Event Notification: Oracle Cloud Infrastructure Compute – Terminated Instance for Tenant:~」というお手紙が3通来た。

障害でインスタンスを止めた。データは失われてないから新しくインスタンス作ってね。

え・・・?

というわけでログインして確認。

ない・・・

ブートボリュームは?

ちゃんとあった。

お知らせは何かあるかな?と確認

書いてある内容はメールとだいたい一緒。

しかたがないので作り直し。ブートボリュームで作り直すボリュームを選択し、「インスタンスの作成」を選択。

ん?可用性ドメインが「ロード中」のまま動かないのですが・・・

詳細を開くとあるので大丈夫かな?sshキーも指定して「作成」

無事作成完了です。

教訓としては常用するのであればパブリックIPアドレスは予約済みで取得しておかないとダメというところですね。

あと、出先でもインスタンス再作成ができるよう、sshキーのメモをどこかに用意しておかないと・・・

ESXiで使用できるUPS連動シャットダウンソフトの情報


ESXi 6.7からvMAというVMware提供の仮想アプライアンスが使えなくなった。
LinuxベースなのだがvCenter/ESXiをCLIから操作するためのツールが導入済みなので、UPS連動シャットダウンする際によく使われていた。

ESXi6.7以降は動かなくなってしまったので、代替を探す必要がある。

Schneider Electric (APC) PowerChute Network Shutdown

APC PowerChute Network Shutdownに関する情報は「PowerChute Network Shutdownプロダクトセンター | よくあるお問い合わせ」と「PowerChuteシリーズ 対応OS表」を起点に捜索する。

PowerChute Network Shutdown v4.3 for Virtualization 対応OS表」はシャットダウン用仮想アプライアンスイメージが提供されているのでそれを使う。
PowerChute Network Shutdown v4.2 for Virtualization 対応OS表」はシャットダウン用仮想アプライアンスか、vMAにPowerShuteインストールか、を選択できる。

PowerChute Network Shutdown v4.0以降のバージョンでVMware環境を保護する場合のPowerChuteインストール先について

PowerChute Network Shutdown v4.1 v4.2 電源障害時のシャットダウンプロセス(VMWare仮想環境) – 構成例2
PowerChute Network Shutdown v4.1 v4.2 電源障害時のシャットダウンプロセス(VMWare仮想環境) – 構成例3

VMware HA利用時やvSAN利用時は、VMware側がユーザ操作なしに停止することを全く考慮していないため、ESXiサーバのみの環境ではうまくシャットダウンを行うことができない。

別に物理のWindowsサーバを用意し、そこからシャットダウン命令を送る必要がある。また、復電後の起動についてはもっと考えられていないため、その処理も自前でどうにかする必要がある。

PowerChute Network Shutdown for Virtualization v4.x VMware HA環境でのサポート構成」(VMware HA環境では仮想マシン停止をサポートしていない)

20180222_VxRailccトラブルシューティングセミナーvSAN環境におけるUPS構成とシャットダウンシュナイダー出口様

HPE Power Protector

HPEブランドで販売されているUPSは、HPE Power Protector(HPEPP)を使用してシャットダウンを行う。

ソフトのダウンロードは「HPE swdepot Power Protector UPS Management Software」から行える。

ESXi 6.7以降の対応について「アドバイザリ: HPE Power Protector – VMware vSphere Management Assistantのサポートが終了したため、VMware ESXi 6.7 (またはそれ以降) を実行しているHPEサーバーでHPE Power Protectorが正しく機能しない」「Advisory: HPE Power Protector – HPE Power Protector Does Not Function Correctly On HPE Servers Running VMware ESXi 6.7 (Or Later) Due to The Discontinued Support For VMware vSphere Management Assistant」に記載している。

vMA使えないから、無料で使えるdebian使って仮想マシン作って、それにHPEPPを入れろ、ということになる。

EATON Intelligent Power Protector (IPP)とIntelligent Power Manager(IPM)

日本代理店ダイトロンの製品ページ「Intellignent Power Protector」「Intelligent Power Manager

メーカページ「Eaton Intelligent Power Manager

連動シャットダウンについてはWindows仮想マシンにIPMを入れる方向性のようだ

IPM SilverかIPM Goldを使うとVMware HAとvSANを含んだシャットダウンにも対応。

VMware HAはWindows仮想マシンにIPMを入れることで対応可能。復電も対応→「シャットダウン for vCSA on vSphere HA by IPM 1.62

vSANはvSANを使っていないESXi上にvCSAとWindows仮想マシン+IPMを置くことで対応可能。復電も対応→「シャットダウン for VMware vSAN 6.6.1 by IPM 1.60

Oracle Cloud上にWindows Server 2016インスタンスを作ったら記号が入らずパスワード入力ができなかった件


Oracle Cloudの登録特典でもらえる30日有効の33000円分のクレジットがまだまだ余ってるので、Windows Server 2016インスタンスを作ってみた。

画像

初期パスワードはシステム側で自動生成される・・・と

画像

ありますね。

初回ログインはコンソール画面から行う必要があるので、上記の画面をスクロールして「リソース」の「コンソール接続」から「コンソール接続の作成」を選択

sshの公開鍵を指定して・・・

コンソール接続が「アクティブ」となったら、右側のメニューから「VNCを使用して接続」を選択

「プラットフォーム:WINDOWS」を選択して、文字列を「コピー」

Windows上でPowerShellを開いて、コピーしたものを貼り付けて実行

で・・・VNC Viewerを起動して「localhost:5900」に接続を実行すると下記の様にログイン画面が出てくる。

画像

で・・・ココで問題が発生。

パスワードを入力しようとしても 「:→;」「@→2」「^→6」「`→~」「=→+」 という感じで期待通りの入力が行えない。

Windows 10の日本語キーボード環境で「;キー」と「:キー」のどちらを押しても「;」が入力される事態。UltraVNCにあるSend Custom Keyを使用して「85」「86」を送っても、同じく「;」が入力されてしまう。

UltraVNCには「Japanese keyboard」という設定項目があるのでそれを設定しても状況は変わらず。

画像

UltraVNC
RealVNC
TigerVNC
この3つを試したところ、TigerVNCでは、Windows上のキーボード認識がUSキーボードになってるけど、実際につながっているのは日本語キーボード、という場合に相当する動きをしてくれた。

この動きであれば、日本語キーボードを英語配列だと思い込んで操作することによってなんとか記号を入力することができる(一部入力できないものもあるが、UltraVNC/RealVNCよりはずっとマシ)

TigerVNC Viewerでログインに成功し、デバイスマネージャー(Device Manager)から「Standard PS/2 Keyboard」を「Japanese PS/2 Keyboard (106/109 key)」に変更することで、日本語キーボードであっても期待通りに入力出来る環境を用意することができた。

(下記の画像はWindows Server 2012R2のだけど、Windows Server 2016もほぼ同じ)

「Standard PS/2 Keyboard」の「Properies」を開き、「Driver」タブを選択する。

「Update Driver」を選択し、下記では「Browse my computer from driver software」を選択

下記は「Let me pick from a list of device drivers on my computer」を選択

「Show compatible hardware」に入っているチェックを外す

チェックを外すと下記の様に選択肢がたくさん現れる。

下記の様に「(standard keyboards)」内の「Japanese PS/2 Keyboard (106/109 Key)」を選択し、「Next」

警告は「Yes」

変更完了

再起動して、変更を反映させます。

また、コントロールパネルの「Language」にて

「Add an input method」を選択し、リストから「QWERY Japanese」を選択し、「Add」

「Save」します。

Save実行とともに時計の横に「ENG US」が表示されますので、それをクリックすると「ENG JA」が選択できます。

これにより日本語キーボードをつかって正常に入力することが可能となります。

なお、この設定を行ってもUltraVNC,UltraVNC(Japanese Keyboard設定あり),RealVNCでは相変わらずな動作をして記号や日本語変換が行えませんでした。

Oracle Cloudでは使用状況レポートを有効にしないとVM内にアクセスエラーログがたまりまくるので注意


東京リージョンでOracle Cloud Always Freeインスタンスを作れないので、US West(Phoenix)リージョンでアカウントを作り直してOracle Linux 7インスタンスを作ってみたところ /var/log/oracle-cloud-agent/agent.log にスクリプトの実行エラーが毎秒出ている。

画像

作り直し前の方ではagent.logは正常なのに何故?と思ったら、Oracle Cloudコンソールの「アカウント管理」の「使用状況レポート」が未設定なためだった。

画像

上記にある様に「アイデンティティ」の「ポリシー」にて「ポリシーの作成」をクリックし、上記ページに書かれている「ステートメント1」「ステートメント2」を下記画面の「ポリシーステートメント」に貼り付ければOK。(名前と説明は適当につける)

なお、ステートメント2にある「<group>」は「Administrators」に置き換える必要がある。(「アイデンティティ」の「グループ」に登録済みのグループ名に置き換える)

この設定を行ったあと、agent.logへエラーを吐き出していたインスタンス上で「 systemctrl restart oracle-cloud-agent.service 」を実行することでエラーは収まりました。

画像

Oracle CloudのAlways Freeインスタンスを作る際に誤って有料インスタンスを作ってしまいがちな件


他のよくある質問とその答え
・Always Freeインスタンスが作れない件→「Tokyoで作れないのは仕様
・ホームリージョンの変更できるの→「アカウント作成後の変更は不可能
・作ったOracle Linuxインスタンスにsshログインできない件→「インスタンス名に日本語入れてるから」)

Oracle CloudでAlways Freeインスタンスを作成する際、誤って有料のインスタンスを作ってしまうことがある。

例えば、下記の画面だとAlways Freeインスタンスではない。

どこを見ればそれがわかるのか?

上記の「シェイプとタイプ」のところに「常に無料の対象(Always Free対象)」という記載があるかどうかです。

「Always Free対象」である場合は、下記の様に「VM.Standard.E2.1.Micro(仮想マシン)」であることと、その横に「Alwasy Free対象」があります。

Always Free対象の表示が無いので変更するかと「シェイプ、ネットワークおよびストレージオプションの表示」を選択してみましょう。

次の罠が登場です。

「インスタンスタイプ」のところの「仮想マシン」は「Always Free対象」と書かれていますが、「インスタンスのシェイプ」には「Always Free対象」の表記がありません。

正しく「Always Free対象」が選択されている場合は、下記の様にインスタンスのシェイプでもAlways Free対象と表記されています。

Always Free対象となっていない場合は、「シェイプの変更」から変更しましょう。

・・・ないですか?

それは、いまいるリージョンがホームリージョンではないからですね。

右上にあるリージョン切り替えから「ホームリージョン」とかかれたものを選択しましょう。すると下記の様に「Always Free対象」が現れるはずです。

・・・え?

「Japan East(Tokyo)」リージョンだと「Out of host capacity」で作成できないから他のリージョンに変更したい?

残念ながらホームリージョンでしかAlways Free対象とならず、またホームリージョンの変更は不可能とのことです。 (ネタ元 Freedom to Build – Announcing Oracle Cloud Free Tier with New Always Free Services and Always Free Oracle Autonomous Database)

画像

諦めてアカウントを作り直すか、運良く東京に空きができたタイミングで作成できることを期待してインスタンス作成を繰り返してみてください。