EC2のいいところは簡単にアップグレード、ダウングレードができます。
強いて言えばアチラコチラのページを開かないと行けないのが辛いかなぁ
インスタンス
EC2のインスタンスの画面より変更できます。
何かあったら困るのでマシンを止めておきます
インスタンス画面より対象のインスタンスを右クリックしてインストールの設定→インスタンスタイプの変更をクリック
t2.smallをt2.microに変更しました。
EBS
ついでにEBSの容量も減らします。
予めdf -hコマンドを使い、どれだけ使ってるか確認した方がいいと思います。
ちなみに1.2G使っていました(8%)
modとかspigotを使うとかを考えてもそこまで大きなサイズにはなりそうにないので8Gぐらいにしておきましょう(最小値)
EC2の左メニューのボリュームより変更はできません(拡張のみ)
どうやらインスタンス新たに作ってブート領域付きのEBSを作り、作業用インスタンスをさらに立ち上げ、先程のEBSをフォーマット、コピー、スナップショットをとり、AMIを作成、AMIからインスタンスの作り直し…
わかりずらっΣ(゚Д゚)ナゲンダヨォ
マイクラサーバーを動かしていたインスタンスはアップデートをして、実行しただけ、つまり殆ど使ってない
つ・ま・り
作り直してもセーブデータさえ持っていけばいいんじゃねとなりました(ち>ω<ぇ)ヤッテヤロウゥ
インスタンスの作り直しだー
さっきインスタンスタイプを変更しましたが、あれ意味無くなったねw
なのでインスタンを作り直します。
AmazonLinux、t2.micro、8G
で作り直し~
作り終わったらyum updateとかで最新にしておきます
元のEC2のEBSをデタッチ(アンマウント)して新しいEC2にアタッチして新しいEC2からコピーする方法がありそうですが、よくわからないので、圧縮してからS3にアップロード後、新しいEC2にコピーしようと思います。
ファイルを圧縮
Minecraft Serverのファイルは複数あるのでディレクトリを1つのファイルにして、そのファイルを圧縮します。(mcというディレクトリ内にファイル群があります)
tar -cf mc.tar mc/
gzip mc.tar
ls
mc mc.tar.gz
とりまファイルはできました
S3のバケットを作る
S3に保存するためのフォルダを作ります
どうもS3のコンソールが新しくなっているようですね
バケットを作成するをクリック
各種設定します。
バケット名は他のバケットと被らないようにします(ドメイン名とか入れるといいかも)。リージョンはEC2と同じでいいかな
プロパティ設定は特に無いと思うので次へ
アクセス権とかは一時的に置くだけなので公開しないように設定します。
確認してOKならバケットを作成
EC2からS3にアップロード
先にEC2からS3にアクセするためのキーをEC2に与えてそこからアップロードする感じです
aws configure
AWSアクセスキーIDとAWSsecretアクセスキー、リージョンコード、フォーマットの情報が必要です
アクセスキーとシークレットアクセスキーはIAMから作れますが、適当にやったため再現ができません(しっかり調べないと)
ユーザーを作成して、権限を与えるとそれぞれのキーが貰えます。
リージョンコードはオレゴンはus-west-2です
出力フォーマットはなんとなくjsonにしておきました
S3にアクセス
lsコマンドを実行してみましょう
aws s3 ls s3://「バケット名」
と打つとバケット内のデータを見れます(初めはありませんが)
S3にアップロード
cpでコピーします
aws s3 cp mc.tar.gz s3://「バケット名」/mc.tar.gz
やっとアップロードできたぁ…
S3からダウンロード
新しいEC2に先程アップロードしたファイルをダウンロードします
もちろんaws configureコマンドを先に済ましておいてください
aws s3 cp s3://「バケット名」/mc.tar.gz mc.tar.gz
ファイルの展開
tar -xf mc.tar.gz
ls
mc mc.tar.gz
これで新しいEC2インスタンで動かせるようになり、実質EBSのサイズダウンができました
コレで少しでも消費が減ればいいですが…
ちなみに元々あったEC2及びEBSは削除しました(存在するだけで課金されるので)
参考:
Linuxサーバ間でAWS S3へのアップロードやダウンロードを行う方法 – Check!Site
Amazon S3へのデータのアップロード – AWS EMR
コメント