2022/09/01

この記事は約2分で読めます。
※当サイトではリンク先にプロモーションを含みます、詳細はプライバシーポリシーをご参照ください。

WordPressのインスタンスをt2.microからArmに変えたくて、OCIの東京リージョンにArmインスタンスをゲットしたいが案の定

Error: 500-InternalError, Out of host capacity.

Terraform構成をDLしてTrueNASのJail環境でインスタンス取れるまでぐるぐる回したいと思う。
実は以前もチャレンジしたことあるのだが、その時使ったJailはつい先日削除してしまい。。。
うろ覚えで調べながらやってみるも

Error: 404-NotAuthorizedOrNotFound, Authorization failed or requested resource not found.

確かにAPI用ユーザは新規作成したけど、グループは前使ってたのをそのまま使ってるから権限は足りてるはずなんだけど、なぜに??

色々試行錯誤した結果、テンプレートは「ユーザがコンピュート・インスタンスを起動できるようにします」でちゃんと認証通るようになった。権限が足りなかったのね。

あとはこのシェルを使って、

#!/bin/bash

cd /root/.oci

while :
do
	sleep 5
	/usr/local/bin/terraform apply -auto-approve

	if [ "$?" = "0" ]; then
	break
	fi
done

セッション切れても実行し続けるようにすればOK

root@terraform:~/.oci # nohup bash getarm.sh &

一旦セッションきって、別セッションで実行されているか確認

root@terraform:~/.oci # ps -aux | grep getarm
root   3045  0.0  0.1  14804   4228  1- SJ   09:24   0:00.77 bash getarm.sh

これでインスタンスが取れればShellはExitされて、OCI側のインスタンスゲットアラートが発報する。。。はず。

search "[テナンシーID]/_Audit" | (type='com.oraclecloud.computeapi.launchinstance.begin') and (data.response.status='200') and (data.request.action!='GET')

念の為監査ログも見てみると、アクセスが来ていることがわかる。
Out of capacityのコードが500なので、ここが200になればOK。

タイトルとURLをコピーしました