February 29, 2020
No. | 内容 |
---|---|
1 | 料金・メリット・デメリットなど |
2 | EC2インスタンス作成 |
3 | これ→ サーバー設定 |
4 | ゲーム内パラメータ・Mod設定 |
この記事では作成したECインスタンスに接続するところから、サーバーの設定・インストールを行い、起動するまでを見ていきます
インスタンス一覧から右クリックして「接続」を押すとsshでのつなぎ方をざっくり教えてくれます
下記のように入力すればsshで繋げるはずです
ssh -i "<.pemファイルまでのパス>" ec2-user@ec2.***.***.***.***.ap-northeast-1.compute.amazonaws.com
Ark-Server-Toolsを導入していきます。不明点があればそちらを参考にしてください
sudo yum update
sudo yum install perl-Compress-Zlib curl lsof glibc.i686 libstdc++.i686 bzip2
steamCMDというsteam製のツールを利用するのでそれを入れてあげます
こちらに沿って導入すればいいのですが、僕はうまくいかなくて、 Manually
のやり方でやったのでそれを記載します
sudo useradd -m steam # steamユーザー作成
sudo passwd steam #steamユーザーのパスワード設定
# ここで設定したいパスワードを聞かれるので、2回入力します
# 8文字以上で、分かりやすい単語が入っていない文字列にします
su - steam # ユーザー変更
# パスワード入力
mkdir ~/steamcmd && cd ~/steamcmd
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -
exit
でec2-userに戻り下記でインスコします
curl -sL http://git.io/vtf5N | sudo bash -s steam
su - steam
でユーザー変更。以下、*.cfgを編集するときはsteamユーザーから操作するようにしてください
/etc/arkmanager/instances/main.cfg
がサーバーインスタンス毎の設定になります。こちらを変更していきましょう。
serverMap="Genesis" # 導入したいマップの文字列を入力
ark_ServerPassword="" # サーバーに入るためのパスワード
ark_SessionName="ARK Server Tools" # 表示されるサーバー名
ark_ServerAdminPassword="keyboardcat" # Adminコマンドを使うときに入力するパスワード
こちらから抜粋させていただきます。
マップ名 |
---|
TheIsland |
TheCenter |
ScorchedEarth_P |
Ragnarok |
Aberration_P |
Extinction |
Valguero_P |
Genesis |
これを間違えるとうまく起動しないので注意してください。
そしたら
arkmanager install
でサーバーデータをダウンロードします。数Gあるので気長に待ちましょう。10分くらいかかると思います
ここで下記のようなエラーが出た場合ですが
のいずれかが原因だと思います。
その場合、/etc/arkmanager/arkmanager.cfg
のファイルで、パス指定の箇所を確認・修正します
# config SteamCMD
steamcmdroot="/home/steam/steamcmd"
うまくいくと下記のようにデータをダウンロードします
Installing ARK server ... -
起動確認のため arkmanager run
でサーバーを起動します。(5分前後かかる)
下記のようなログになります。
[steam@ip-172-**-**-** ~]$ arkmanager run
Running command 'run' for instance 'main'
2020-02-29 14:34:08: start
2020-02-29 14:34:08: Running /home/steam/ARK/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland\?RCONEnabled=True\?RCONPort=32330\?SessionName=ARK\ Server\ Tools\?Port=7777\?QueryPort=27015\?ServerPassword\?ServerAdminPassword=keyboardcat\?MaxPlayers=70\?ServerPassword\?listen
2020-02-29 14:34:08: Server PID: 10217
Using binned.
4.5.1-0+UE4 7038 3077 404 10
[S_API FAIL] SteamAPI_Init() failed; SteamAPI_IsSteamRunning() failed.
Setting breakpad minidump AppID = 346110
2020-02-29 14:35:12: server is up
ここでfailed
みたいなのが出てますが仕様なので気にしなくて良いです。
5分くらいまって server is up
みたいなログがでてきたら成功です!
ログに表示されている通り、重要なサーバー設定は全て起動コマンドのオプションになっているので、うまくいかなかったときは上のログを見てポート番号など間違いがないか確認してください。
ちなみに、run
はフォアグラウンド実行で接続が切れると終了してしまうのですが、起動コマンドやエラーが表示され、デバッグしやすいのでここで実行しています。
実際に運用する際は基本的にバックグラウンドで実行される arkmanager start
コマンドになります。
server is up
もうちょっと待つとゲームのサーバー検索から見えます。
また、arkserver status
より steam://
から始まるリンクをクリックしてもサーバーへ入室が可能です。(steam側にサイレントでポップアップがでてパスワードを要求します)
ここまででやっと基本的なサーバーが立ちました。
ただ完全にデフォルトの状態なので、更に快適に遊べるように、次回Modやパラメータ変更の設定をしていきましょう
arkmanager
のあとにコマンドを指定します
run
: サーバー起動start
: サーバーをバックグラウンドで起動status
: サーバーの状態確認stop
: サーバー停止あとはgithubのページで確認してください〜
下記で確認できます。 tail -f
コマンドなどで見てみてください。
/var/log/arktools/arkserver.log
/var/log/arktools/arkmanager.log
いくつか考えられる状況を記載します。
arkmanager status
でサーバーが立ち上がっていても検索に引っかかるまで数分かかります
steam://~
のリンクから接続すると確実ですサーバーのゲームバージョンが古い
arkmanager update
で手動アップデートしてくださいMAPデータがちゃんと入っていない
main.cfg
のserverMap
の記載が正しいことを確認し、 arkmanager install
してみてくださいARK/ShooterGame/Saved/SavedArks/
にデータが入っているのでそいつをインポート / エクスポートしてあげればOKです