こんにちは、エンジニアの mori です。
Mattermostの強みの一つにオンプレで利用できるところがあげられると思います。
弊社もMattermostを扱っていますが、よくある質問の一つに動かすためのスペックについて知りたいという問い合わせが寄せられます。
Mattermostのシステム要件について調べてみたいと思います。
なお、Mattermost社が提示している最小スペックのハードウェア要件をベースにまとめておりますが、ユーザの利用頻度や利用方法などによっても異なりますので、あくまで参考値としてご検討いただけますと幸いです。
サーバスペック
OS(オペレーティングシステム)
まずは、MattemostのモジュールインストールするサーバのOS(オペレーティングシステム)です。※残念ながらWindowsサーバには対応しておりません。
- Ubuntu 18.04
- Debian Buster
- CentOS 6以降 または CentOS 7以降
- RedHat Enterprise Linux 7以降
- Oracle Linux 6以降 または OracleLinux7以降
なお、データベースはMYSQLとPostgreSQLに対応しております。
CPU/メモリ
小規模から中規模までは、CPUとメモリはユーザ数に基づいて、単一のサーバでサポートできます。
2000人以上の場合はMattermostオープンソース負荷テストフレームワークを使用してシミュレーションしてみることが推奨されています。
- 小規模(ユーザ数:1-999人):1vCPU/cores、メモリ2GB
- 中規模(ユーザ数:1000-2000人): 2vCPU/cores、メモリ4GB
また、企業向けクラスタ化による冗長化やスケーリングすることもできます。ここでは語りつくせないため割愛します。詳しく知りたい方はMattemost社が提供しているドキュメントのエンタープライズ向けのスケーリングを参照ください。
ディスクサイズ(ストレージサイズ)
ストレージについては、AWSのS3の利用が推奨されています。ですが、オンプレで構築する場合はサーバのハードディスクのローカルディスクを使用することになるでしょう。
ディスクサイズの計算式で増加分を予想できますので解説していきます。
Mattemostを利用するチームの人数とそのユーザのMattemostの使い方によって、ディスク使用量は変わってきます。
ユーザあたりの1カ月の想定ストレージ使用サイズの目安になります。(扱うファイルサイズや頻度などは業務によっても様々かと思いますので、利用目的に沿って概算していただければ思います。)
- 使用率の低いチーム(1〜5 MB /ユーザー/月)
主にメッセージやリンクなどの使用したテキストメッセージを主に利用するユーザになります。ファイルのアップロードはほとんどしない想定です。 - 使用率が中程度のチーム(5〜25 MB /ユーザー/月)
テキストメッセージに加え、ドキュメントや画像の共有などでも利用します。 想定されるファイルはスクリーンショット、PDF、MicrosoftOfficeドキュメントなどになります。 - 使用率の高いチーム(25〜100 MB /ユーザー/月)
定期的に多数の大きなファイルをアップロードして利用するユーザを想定しています。 想定されるファイルはアートワークやメディアなどのサイズが大きなファイルがあげられます。
Mattermostのストレージ利用サイズは以下の計算で1年分が算出できます。
例えば、使用率の低いチーム(1〜5 MB /ユーザー/月)が50人ぐらいの規模では、「5M×12ヵ月×50人×安全係数2×使用期間5年=約30GB」という計算になります。
テキストメッセージのみをやり取りするのであれば、OSやDB領域を加味しても、50GB~100GBがあれば5年程度は運用できると想定されます。
クライアントのスペック
チャットのアプリケーションですので、利用者側のクライアントソフトウェアが必要となります。
デスクトップアプリケーション
PCにインストールするデスクトップアプリケーションのシステム要件は以下になります。
- Windows 7 、8.1、10
- MacOS 10.12以降
- Linux(UbuntuLTSリリース18.04以降)
PCブラウザ
ソフトウェアをインストールしなくても、PCのブラウザで利用することも可能です。
- chorome :v77以降
- FireFox :v68以降
- Safari :v12以降
- Edge :v44以降
※Internet Explorer(IE11)のサポート対象外です。
モバイルアプリケーション
引き続きモバイルになります。iOSはAppStore 、AndroidはGoogle Playからダウンロードできます。
- iOS : iOS11以降を搭載したiPhone5sデバイス以降
- Android : Android7以降を搭載したAndroidデバイス
モバイルブラウザ
- iOS : iOS11以降とSafari12以降またはChrome77以降
- Android : Android7以降とChrome77以降
企業などでの導入の場合、クライアントソフトウェアのインストールを制限していたり、クローズな環境でインストールが難しかったりしますが、ブラウザがあれば使えるというのは導入しやすいですね。