AWSで爆速でMinecraft Plugin鯖を建てる方法！

# AWSとは

Amazon Web Servicesとは、Amazon.comにより提供されているクラウドコンピューティングサービスです。
ここではAWSのEC2というサービスを使ってMinecraftのサーバーを爆速で建てたいと思います！

## 必要なもの
* クレジットカードまたはデビットカード

## 費用
* 起動時間によって課金されるので、数時間だけ立ち上げたい、数日だけ立ち上げたいってときにもってこいです。
* 小さいインスタンスであれば1ヶ月数百円程度です

# AWSに登録

https://aws.amazon.com/jp/
ここからサインアップしてください。

# EC2の設定

EC2の画面まで進んでください

![スクリーンショット 2016-12-07 20.31.36.png](https://qiita-image-store.s3.amazonaws.com/0/152986/fdb46f03-4e2e-de32-ddb1-9e7f44626e99.png)

左上のサービスをクリック→EC2をクリック

## 東京に設定

左上を押して東京に設定しましょう

![スクリーンショット 2016-12-07 22.14.59.png](https://qiita-image-store.s3.amazonaws.com/0/152986/047a1660-ca9f-ffa2-62b1-a16e674f20d6.png)


## キーペアの作成

左のメニューのキーペアをクリックし、キーペアを作成してください。
名前は「minecraft」にしておきましょう。

![スクリーンショット 2016-12-07 22.06.24.png](https://qiita-image-store.s3.amazonaws.com/0/152986/2e14a8e6-5c9d-6268-eccc-8b4a4a73d786.png)

秘密鍵がダウンロードされるので、大切に保管しましょう。

## インスタンスの作成

ここからインスタンスを作成します。

![スクリーンショット 2016-12-07 22.07.49.png](https://qiita-image-store.s3.amazonaws.com/0/152986/79185a5a-1e6e-cc73-f98e-cfdf9dfdcc3e.png)

### OS

Amazon Linuxを選択

![スクリーンショット 2016-12-07 22.09.08.png](https://qiita-image-store.s3.amazonaws.com/0/152986/6efc26d8-1855-5543-fc4e-ad360e25ad72.png)

### サイズ

t2.microを選択し、次の手順へ進む
![スクリーンショット 2016-12-07 22.09.56.png](https://qiita-image-store.s3.amazonaws.com/0/152986/9f986ef2-aae3-e30c-e77b-ec69af560a64.png)

### インスタンスの詳細の設定
自動割り当てパブリックIPを有効化
次の手順へ

### ストレージの追加
そのままで次の手順へ

### Add Tags
値に「minecraft」
次の手順へ

![スクリーンショット 2016-12-07 22.14.07.png](https://qiita-image-store.s3.amazonaws.com/0/152986/f61d2e16-5587-7065-e754-40429d83bf00.png)

### セキュリティグループの設定

新しいセキュリティグループを作成する
で以下のように設定します。

SSHログインできるように　ポート22は自分のパソコンからログインできるようにIPを設定しましょう。
マイIPを選択すると勝手に追加してくれます。

minecraftはポート25565をつかうので、25565を設定し、全てのユーザーからログインできるように0.0.0.0/0と設定しましょう。
限定したユーザーだけログインさせたい場合はここでIPで制限できます。

![スクリーンショット 2016-12-07 22.16.38.png](https://qiita-image-store.s3.amazonaws.com/0/152986/7c3bdc7e-9a10-9c34-9cc7-9550d8a847b9.png)

入力したら確認ボタンをおす。

### インスタンス作成の確認

ここで最終確認画面が出ます。
作成を押すと、作成が始まります

### 注意点

インスタンスが作成されると課金が開始します。
必要が無くなったらインスタンスの削除を行ってください。

## ログイン

少し時間がたつとインスタンスが作成されています。
EC2左メニューのインスタンスを押して確認してみましょう。
インスタンスをクリックするとパブリックIPが分かるようになっています。

ログインの方法は環境によって違いますが、sshの設定は以下のように行ってください

```
Host minecraft
HostName パブリックIP
User ec2-user
IdentityFile ダウンロードした秘密鍵のパス
```

成功すると以下のような画面が表示されます

```

       __|  __|_  )
       _|  (     /   Amazon Linux AMI
      ___|\___|___|

https://aws.amazon.com/amazon-linux-ami/2016.09-release-notes/
```

# minecraftのインストール

前提ファイルのダウンロード

```
sudo yum -y install screen
```

spigotのディレクトリを作成し、移動します

```
mkdir ~/minecraft_spigot
cd ~/minecraft_spigot
```

spigotのビルドツールをダウンロードします
2016/12/7現在 1.11がダウンロードされます。

```
wget https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar
```

spigotをビルドします

```
java -jar BuildTools.jar
```

起動にはeulaのファイルが必要なため作成します

```
vi eula.txt
```

```eula.txt
eula=true
```

## サーバーの起動

ダウンロードしたspigotを起動します。
するとマインクラフトサーバーが立ち上がります

```
java -Xmx1024M -jar spigot-1.11.jar nogui &
```

# サーバーにはいる

minecraftのマルチプレイでパブリックIPを指定してログインします。
ログインできると成功です！

![2016-12-07_22.43.29.png](https://qiita-image-store.s3.amazonaws.com/0/152986/85c83e8e-6908-984f-cd93-076a383e7c9e.png)

# 利用料金について

左上の、自分のアカウント名をクリック→請求ダッシュボードで、請求金額を見ることができます

小さいインスタンスであれば月千円以内に収まる程度だと思います。

心配なときはこちらのツールで計算できます
[Amazon Web Services Simple Monthly Calculator](http://calculator.s3.amazonaws.com/index.html?lng=ja_JP)


# 参考
* [Spigot と ScriptCraftプラグイン でマインクラフトなサーバを動かしてみた – はなたんのブログ](http://www.tdtsh.com/blog/archives/3482)
* [Minecraft サーバーを Amazon EC2 上に構築 - Qiita](http://qiita.com/EugeneAshizawa/items/d88f4d2778e738efe2eb)