SAITOUの書きなぐりメモ

さいとーの趣味と生活を垂れ流しています。

例のお金で月1万のサーバーを借りて10カ月ゲームサーバー立てる 2日目

何日明けての2日目なんだって話なのですか、2回目なので2日目です。

さいとーです。

 

例の企画ですが、あんまりまとまった話ではないですが

まとめるまでに忘れそうなので、ぶつ切りでも定期的に話を上げる方向にしないと行けなっかった。

いや、2日目の話は実際のサーバー構築の話を書こうと思ったのですが、

再起動かけたら起動しなくなった件が解決せず、どうすっかーと思ってました。

 

改めて、検索に引っかかるようにするためにもおさらいです。

NTTのVPSサービス「Indigo」を使って

恐竜サバイバルゲー「ARK」のサーバーを必要に応じて立てる。

そんな企画を進行中です。

 

で、その再起動出来なくなった際の設定等がこちら。

 

ssh設定
sshのコンフィグ修正
vi /etc/ssh/sshd_config


# SELinuxに22222登録
# semanage port -a -t ssh_port_t -p tcp 22222


SELinux無効化
setenforce 0


vi /etc/selinux/config
SELINUX=disabled

 


vi /etc/sysctl.conf
fs.file-max=100000


時間設定
cp -p /etc/localtime /etc/localtime.org
ln -sf /usr/share/zoneinfo/Asia/Tokyo /etc/local


yum install gdb


yum install glibc.i686 libstdc++.i686 -y


ユーザー追加
useradd steamman


パスワード変更
password ****


ディレクトリ作成
mkdir steam


steamcmdダウンロード
curl -sqL "http://media.steampowered.com/installer/steamcmd_linux.tar.gz" | tar zxvf -


ark install
/home/steamman/steam/steamcmd.sh +login anonymous +force_install_dir /home/steamman/steam/ARK/ +app_update 376030 +quit

 


サービス登録
vi /etc/systemd/system/ark.service


内容は下記
[Unit]
Description=ARK


[Service]
ExecStart=/home/steamman/steam/ARK/ShooterGame/Binaries/Linux/ShooterGameServer TheIsland?listen?SessionName=nankasuru.net?ServerAdminPassword=**** -server -log
ExecStop=/bin/kill ${MAINPID}
Restart=always
Type=forking
User=steamman
Group=steamman


[Install]
WantedBy=multi-user.target


登録確認
systemctl list-unit-files --type=service | grep hello
systemctl daemon-reload
systemctl enable ark.service

 

多分、サービス登録が良くなかった。

カッコつけて自動で起動させれるようにしようとして失敗してる。

キックするだけのシェルスクリプトにして、後は裏で動かしとくみたいな。

そんなんじゃないとダメな気がする。
 

細かい検証はできてないけど、今の進捗として

・都度サーバーを立てる場合、ゲームサーバー立ち上げまで30分くらいかかる

  →ほぼ、steamからサーバープログラムを落とす時間、

   スナップショットはAMIみたいにインスタンス消しても残るものなら

   最新を毎朝取りに行って、遊ぶときに起動くらいまでにさせれば短縮は出来る。

   それか、最低スペックのサーバーで常時最新のサーバープログラムをダウンロードしてさせといて、

   インスタンス起動時のインストールの際に、そこからコピーするようにする。

   コピーで動くかわかんないけども、、、、

 

・Indigo  APIのラッパーみたいな謎クラス作成

  ちっとも進んでない。

  まだそんなに考える事ないから手を動かすだけのフェーズ。

  最終的に対話形式でインスタンス立てれたり、

  今、どれだけのインスタンスが動いてて今月の料金いくらかとか

  そこまで出来ればなんか使い物になりそう。

  特に後者、これはIndigoはVPSサービスだけで課金まわりはもう一つ上のNTTのサービスだから

  そっちのAPIがあればそれを使う方が正確だけども、予測をやらそうとしたら

  APIだけじゃ無理で(多分)、インスタンスの利用状況を自分で把握しないといけない。

  今回、やろうとしてるのが、インスタンスを使う時だけ用意するスタイルなので

  利用率高いインスタンスは立てっぱなしの方がいいとか、

  判断させれたら、、、、

 

とりあえず、そんな感じかな。

 

あ、あと前に立ててたARKのサーバーデータを

新しく建てたサーバーで読ませたら

島は再現出来たけどキャラデータが復元出来んかった。

一定期間接続なかったらキャラデータ消すとかないよね??

 

 

 

例のお金で月1万のサーバーを借りて10カ月ゲームサーバー立てる 1日目

会社から帰ってくる途中で思いついたネタです。

 

どうも、さいとーです。

 

久々にブログ書くのと、初めてこういう企画(?)をやるので

ちょっと自己紹介します。

 

プログラマーとして10年ほどおまんま食べてます。

一番長かった経歴はwebの自社サービスを7年くらいやってました。

出身はゲームの専門学校だったのですが、いろいろあって

今に至ります。

個人としては、、、ろくに活動できてませんでした。

 

雑ですがこんな感じで~

 

で、今回の企画は、例のアレでなんかやるか。と、

そういうところから始まっています。

 

0日目

このネタを思いついて酒を片手にどこの鯖が安いか調査。

速攻で、NTTのVPSサービス「Indigo」を発見

f:id:SAITOU:20200429215635p:plain

で、価格がこんな感じです。

何度見ても安く見える。お手頃ってか安い。

しかも今回のネタに必要なスペックと値段が近い。

まぁ、でもおそらくメモリ32GBまではいらないと思う、、、

あ、想定しているゲームはARKです。

f:id:SAITOU:20200429220106j:plain

 

恐竜サバイバル!

このゲームめっちゃサーバー側もメモリ食うので今使ってるさくらのVPS 2Gでは

まともなゲームになっていませんでした。

(遊んでくれた皆さん本当にありがとう、そして、ごめん!)

そんなわけで、すでにサーバーは止めてしまいました。

 

でも、やっぱりできないってなったらやれる方法考えますよね?

それで、今回はゲーム専用サーバーを借りて

そこで運営してやろうと、そういわけです。

 

可能であればどうにかサーバー代を何かで稼ぎたい。

そこで、思いついたのが広告を見てもらった人のIPを許可して

サーバーにつなげられるようにする仕組み。

 

ゲームやりたいときにサイトの広告を見てもらって

それをもとに鯖を動かす。

運営費が少し入るかもしれない仕組みです。

(開発費、要するに僕の人件費はこれだけで稼げないと思う)

もろもろ説明の図は今後書きます。

今はないです。ごめんなさい!

 

こんな感じで0日目を終えました。

 

 

1日目(タイトルなのにこんなにしたなんかい)

 

早速「Indigo」に登録。

Google アカウントが使えましたが、

電話番号とかカードの情報とかは入力せないけませんでした。

(当然か、、、)

 

ぽちぽちしたら、管理画面までは入れました。

インスタンスをぱっとみで建てれずどうしたらいいんだ、、、

と、なっていたらどうやら管理画面が2段階あるみたいで、

まずは「webARENA」というページで

サービスの中の「Indigo」を選択する。

こんな感じで進めば、なんとなく見たことのあるインターフェースがお目見え。

おー、シンプル。

VPSサービスであるようなロードバランサーとか

いろいろ取っ払った感じです。

僕はサーバー構築をメインの仕事でやったことがないので

インフラ周りは自宅サーバーとかちょっとAWS触ったとか程度。

なので詳しくはわからないですが、他と価格を抑えるために

何か削ってる感じです。

たしか、さくらは無料で5世代くらいスナップショット取れた気がしますが

Indigoでは有料です。

だいたい立ててるサーバーの3分の1くらいの料金がかかります。

(ストレージ容量によって時間当たりの課金)

 

それはさておき、気になったのは一番下の「API鍵の管理」

これは何ができるんだ?と調べてみたら、

どうやら公開されてるAPIを使ってインスタンスや、ファイアーウォールの

設定を変更できる便利機能。

これはまさに今回やろうとしていることにピッタリなものでした。

管理画面に入るまでこんなものがあるなんて思ってませんでした。

(今日の朝、とりあえずアカウントだけ作ればいいやってなってました)

ちなみに、このページからAPIの仕様に関するページへのリンクはない。

ので、ググり倒して見つけました。

https://indigo.arena.ne.jp/userapi/

 

なぜか、ドメイン見ても日本っぽいのに

全部英語で書かれてる素敵仕様です。

Google翻訳とにらめっこしながら

culrをたたいてAPIの仕組みを理解しようとしてました。

で、最終的にどうなったかっていうと

PHPでコードを書き始めました。

githubにもとりあえず上げました。

https://github.com/saitou310/indigo

 

うん、もう少し名前考えた方がよかったよね。

まだ、公開できるレベルの物ではないですが

とりあえずソースの保管のために作りました。

 

なんかもっと技術的な面(?)の話を書こうと思ってたのですが

それはそれで書いた方がググってここに来た方は読みやすい気がしたので

今後はそうする予定です。

この、タイトルのシリーズは日記みたいな話を書いて

その日記内でどういう問題があったか?みたいなのの詳細は

別の記事ってスタイルで行こうかな、、、

書きながら考えてるのでめっちゃめちゃですが、

とりあえず、続けていくことを目標にやっていきます。

7年半くらい勤めた会社を辞めました

人生で一番、属した期間の長い組織を離れる事となりました。

 

なんか、何も考えずにかいたらえらく暗い感じなったので一旦消しましたw
とりあえず、病むほど仕事に必死になったらダメだと思いました。
勤めてる間、いろいろと原因調査のために病院をめぐり、
最終的に一番行きたくはなかった心療内科の方に定期的に受診せざるを得ない状態になりました。
まぁ、それが原因でなくても受診しておいた方が生きやすかったのかもしれませんが、、、

ただ僕はずっと当時付き合ってた彼女に「お前は鬱なんかじゃない、本物の鬱患者なんか見たこともないくせに」みたいなことを言われて、自分はそうじゃないんだ
と、思い込む事と、その言葉が嘘にならないようにするために、自分が鬱にならないように必死でもいました。

結局は人の言うことを真に受けすぎてしんどくなっていってしまいました。

 

 

うーん、やっぱ暗くなるなぁ、、、、w

やっぱり根にはそういう黒い部分があってしまうのだろうか、、、w
あまりそうは思いたくないが、、、、w

黒い部分だけがその会社にあったわけではない。
というか、自分がダメダメすぎてついていけない事にしんどくなっていた。

 

んー、、、、とりあえず、次の会社でも頑張ります!w

JR西日本早めに運休情報流してた

明日、8/15日は台風直撃予定だけど

電車が動くか動かないかは社会人的には気になるところ、、、

http://trafficinfo.westjr.co.jp/kinki.html

 

前日のお昼に出してくれたのは会社側的にもバタバタ明日どうするーとか

考えなくていいから結構いいタイミングかと。

 

【始発から終日運転見合わせの可能性がある線区】
○関西線(加茂駅~亀山駅間)
湖西線近江舞子駅近江塩津駅間)

【午後から終日運転見合わせの可能性がある線区】
JR神戸線大阪駅~姫路駅間)
赤穂線相生駅播州赤穂駅間)
阪和線天王寺駅和歌山駅間)
関西空港線日根野駅関西空港駅間)
加古川線加古川駅~谷川駅間)
姫新線(姫路駅~上月駅間)

 

 

てかすでに風がけっこう吹いてる、、、w

セブン&アイの共通アカウント 7iDの再登録に関する落とし穴

めっちゃ引っかかりました。

他サイトIDでログインしていたのですが、うまくパスワードの再設定が出来ず、

原因が「7iDを登録できていない」出来ていない事だと気づくのに

時間がかかりました。

 

そもそも、パスワードを設定していないのに再設定とは何なのか、、、

いろいろとヤバいぞセブンアンドアイ!

 

同じようになんかひっかかった方の助けになれば幸いです。

(私はgoogleアカウントでログインしていました)

f:id:SAITOU:20190731100005j:plain

「会員サービス(マイページ)」をクリック

f:id:SAITOU:20190731100010j:plain

「ログイン情報(メールアドレス・7iD・パスワード)」をクリック

f:id:SAITOU:20190731100017j:plain

「7iD」の「変更」をクリック

f:id:SAITOU:20190731100024j:plain

このページで今のメールアドレスか好きなIDを入れるか選択できるので登録。

 

これで、パスワードが再設定できるはずです!

 

Surface Dock自体のファームウェアアップデート

今朝、Amazonプライムビデオで逆襲のシャア見た後からメインの4KディスプレイにPCの画面が映らなくなってなんでなかな~って思ってた。

 

f:id:SAITOU:20190331180342j:image

 

で、「サーフェスドック ディスプレイ 認識しない」とググってみたら

速攻で解決策としてドック自体のアップデートに関するページをMicrosoftのサイトから見つけ出しました。

 

自分の頭にsurface Dock自体のアップデートなんてものがあると思ってなくて、完全な見落としでしたわぁw

 

その後は、アップデートのやり方を日本語で解説しているページを見つけ出して参考にしてアップデート。

Surfaceドックのファームウェアを更新する方法 – Microsoft Surface Dock Updaterでアップデート

https://usedoor.jp/howto/digital/surface/dock-firmware-koushin-update/

 

ちょっとだけ手順と違う状態になったものの基本的には画面に出てくる内容通り、ドックをsurface本体からつけたり離したりしてるだけでアップデートできました。

それによってめでたくディスプレイも映るようになり万事解決しますた!!

 

平成終わるやん

もう、平成もう1ヶ月くらいしかないですよ。

僕は昭和最後の年に生まれたので年号3つまたぐ事になるのですが、

って、書きましたがよく考えたら自分より年上のひとらは皆んなそうなるんかw

めっちゃ数多いなw

 

いや、そんな話がしたかったわけではなく、

ブログの更新頻度からも御察しの通りなんにも続かず手につかず

といった状況が続いておりますが、いい加減に何かちゃんと続けられないといけないと

危機感をすごく感じています。

3、4年カメコ活動は続けて来たような来てないような、、、

というか、土日しか活動してるすることがまずないのでそれは続けた事になるのか?という。w

 

何度も何度もブログ再開するとか言ってるけどちっとも続いてませんしね。

今度こそ続けたい、、、

昔みたいにいろんな事にワクワクしなくなってしまった。

しんどさがすごい優先してしまって、新しい技術とかサービスとか見つけても

面白がれるゆとりがなくなったんだと思う。

原因はひとつじゃないと思うけど、Evernoteに日記つけてたのを全部

この書きなぐりメモに書こうかなーと思ってます。

なんか、そういうのって今はTumblrの方が流行ってそうだけどPCからも見れるようにしたいし

はてなブログはなんやかんや気に入ってるし。

 

「技術にワクワクを」

どうにか取り戻したい、そんなおっさんのブログでした。