grasys blog
grasysブログ

GCPでマストドンを構築する書籍を書きました!

dokuma

こんにちは! 今回は技術ネタじゃなくて書籍の執筆活動をしたので、執筆活動の経験と宣伝をしますw

書籍を執筆することになった経緯

弊社代表が突然(いつも突然ですが。。。)

「マストドンの本誰か書かない?」

と言ってきたので、そろそろ本でも描くか!という軽いノリでマストドンの構築から執筆までを引き受けることになりました。

マストドン初心者だけどGCPでシステム作るのは得意だぜ!

マストドンはオープンソースでGitHubのProduction-guilde.mdを読めば、誰でも構成できる状態となっています。 とりあえずスケールできる構成にしたかったので、フロントにLBを置いてDBとRedisわけて〜みたいな感じで構成図を書いて作りました。

メディアファイルの扱いがめんどい

ユーザのトゥートでアップロードされるメディアファイルの扱いがちょっと面倒(なぜならまだマストドンがGCSに対応してないから!)で、CloudCDN使ったりinotifywait使ったりしてGCSにあげたりしてみたんだけどうまくいかなかった。 結局メディアファイルは分散ファイルシステム使って配信するのがバランス良さそうだな〜ということで解決したんですけどね。

Redisの分散

マストドンってトゥートとかmail送信とかをsidekiqっていうRubyの非同期プロセッサに渡して処理しているんですけど、バックエンドにはRedisを使っています。 残念ながらまだマストドンはRedisの分散のことまで考えていないみたい(コンフィグみただけだけどw)。なのでまだうまいこと分散できないシステムになりました。

DB PostgreSQLなの!?

まじかよ、確かにPostgreSQLも立派なソリューションだけど、なんでなんだ!MySQLじゃダメなのか! そんなことを思いながら渋々マスタ/スレーブレプリケーション構成を作るために頑張った俺かわいい。

おまけ: Amazon予約ページでカテゴリ1位に!

2017/04/26 16:00の時点で1位になったので記念撮影しましたw

ではみなさん、楽しいマストドンライフを!


株式会社grasys(グラシス)は、技術が好きで一緒に夢中になれる仲間を募集しています。

grasysは、大規模・高負荷・高集積・高密度なシステムを多く扱っているITインフラの会社です。Google Cloud、Amazon Web Services (AWS)、Microsoft Azureの最先端技術を活用してクラウドインフラやデータ分析基盤など、ITシステムの重要な基盤を設計・構築し、改善を続けながら運用しています。

お客様の課題解決をしながら技術を広げたい方、攻めのインフラ技術を習得したい方、とことん技術を追求したい方にとって素晴らしい環境が、grasysにはあります。
お気軽にご連絡ください。

株式会社grasys | 採用情報