デプロイとメンテナンス / システム要件
DataFlux Func をインストールする前に、環境が以下の条件を満たしていることを必ず確認してください。
1. システム要件
DataFlux Func を実行するホストは、以下の条件を満たす必要があります:
- CPU コア数 >= 2
- メモリ容量 >= 4GB
- ディスク容量 >= 20GB
- ネットワーク帯域幅 >= 10Mbps
- オペレーティングシステムは Ubuntu 16.04 LTS / CentOS 7.2 以上、macOS、Windows はサポートされていません
- クリーンなシステム(OSインストール後、ネットワーク設定以外の操作は行っていない状態)
8088ポートを開放する(本システムはデフォルトで8088ポートを使用します。ファイアウォールやセキュリティグループなどの設定で8088へのインバウンドアクセスを許可してください)- 外部 MySQL を使用する場合、MySQL のバージョンは 5.7 以上である必要があり、
innodb_large_prefixパラメータを有効にし、データベースのエンコーディングをutf8mb4にする - 外部 Redis を使用する場合、Redis のバージョンは 5.0 以上、利用可能メモリは少なくとも 1 GB、クラスタ版ではない必要があります
一部のクラウドプラットフォームが自動インストールするプラグインに注意
一部のクラウドプラットフォームが自動インストールするプラグインは、それ自体が多くのリソースを消費する可能性があるため、システム構成を適宜引き上げてください
詳細な OS 互換性
OS 互換性の詳細な実測結果は、実測済みの OS 互換性 を参照してください
Raspberry Pi にインストールする場合は、以下の記事を参照してください:
- デプロイとメンテナンス / インストールとデプロイ / Raspberry Pi 公式システムデプロイ
- デプロイとメンテナンス / インストールとデプロイ / Raspberry Pi Ubuntu デプロイ
2. ソフトウェアの準備
本システムは Docker Stack 上で動作します。インストールパッケージには Docker のインストールパッケージが同梱されており、インストール時に自動的にインストールされます。
ユーザーは Docker を自分でインストールし、Docker Swarm を初期化してから、インストールスクリプトを実行することもできます。 インストールスクリプトは、Docker がすでにインストールされていることを検出すると、この部分の処理を自動的にスキップします。
- Docker Swarm の初期化コマンドは次のとおりです:
sudo docker swarm init
ローカルマシンに複数のネットワークインターフェースが存在する場合、上記の初期化コマンドでネットワークインターフェースを指定する必要があります
- 複数のネットワークインターフェースが存在する場合は、ユーザーが Docker を自分でインストールし、Docker Swarm を初期化することを推奨します
- Docker Swarm でネットワークインターフェースを指定する初期化コマンドは次のとおりです:
sudo docker swarm init --advertise-addr={ネットワークインターフェース名} --default-addr-pool={デフォルトアドレスプール} - ローカルマシンのネットワークインターフェースの一覧は
ifconfigまたはip addrで確認できます - デフォルトアドレスプールは、ローカルネットワークのサブネットと衝突しないように注意してください
Snap 版 Docker はサポートされていません
DataFlux Func は Snap 版 Docker 上では動作しません
自動インストールスクリプト内の docker swarm init
自動インストールスクリプトは docker swarm init を実行する際に、--advertise-addr パラメータと --default-addr-pool パラメータをそれぞれ 127.0.0.1 と 10.255.0.0/16 に指定します
| Bash | |
|---|---|
1 | |
3. 実測済みの OS 互換性
本システムの実行は Docker Swarm に依存しています。一部の古い Linux ディストリビューションは新しいバージョンの Docker をサポートしていない可能性があり、本システムをインストールできない場合があります。
「実測環境」について:
- 仮想マシン:すべて公式 ISO イメージを使用し、インストール後に直接 DataFlux Func を導入します
- Alibaba Cloud:すべて ECS パブリックイメージを使用し、ECS 起動後に直接 DataFlux Func を導入します
- Raspberry Pi:すべて公式サイトが提供する ISO イメージ(ARM 64 ビットで動作)を使用し、起動後に直接 DataFlux Func を導入します
「実測結果」について:
- 互換:ホストのインストール/作成後、インストールスクリプトを直接実行するだけでインストールが完了し、追加の操作は不要であることを示します
- 条件付き互換:ホストのインストール/作成後、インストールスクリプトを直接実行することはできず、追加の操作を行った後にインストールスクリプトを実行できることを示します
- 非互換:この環境ではインストールスクリプトを正しく実行できませんが、イメージファイルを使用してご自身で処理することはできます
テスト結果
以下に挙げる OS は、クラウドプラットフォームまたは仮想マシンで実際にインストールし、テストに合格したものです。記載されていない OS は非互換を意味するものではありません
64 ビットシステムが必要
DataFlux Func は 64 ビットシステムで実行する必要があります。公式の Raspberry Pi OS も ARM 64 ビットモードを有効にして実行する必要があります
Windows、macOS はサポートされていません
DataFlux Func は Windows、macOS をサポートしていません。仮想マシンやクラウドホストにインストールすることを選択できます
x86 アーキテクチャ
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| Ubuntu 22.04 | Alibaba Cloud | 5.1.0 5.0.5 |
||
| Ubuntu 20.04 | Alibaba Cloud | 5.0.5 |
||
| Ubuntu 18.04 | Alibaba Cloud | 5.0.5 |
||
| Ubuntu 16.04 | Alibaba Cloud | 5.0.5 |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| Ubuntu 20.04 LTS | VirtualBox | 2.x |
||
| Ubuntu 18.04 LTS | VirtualBox | 2.x |
||
| Ubuntu 16.04 LTS | VirtualBox | 2.x |
||
| Ubuntu 14.04 LTS | VirtualBox | 2.x |
Docker の新機能の要件により、新しい Docker を使用できません |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| CentOS 8.5 | Alibaba Cloud | 2.x |
||
| CentOS 8.4 | Alibaba Cloud | 2.x |
||
| CentOS 8.3 | Alibaba Cloud | 2.x |
||
| CentOS 8.2 | Alibaba Cloud | 2.x |
||
| CentOS 8.1 | Alibaba Cloud | 2.x |
||
| CentOS 8.0 | Alibaba Cloud | 2.x |
||
| CentOS 7.9 | Alibaba Cloud | 2.x |
||
| CentOS 7.8 | Alibaba Cloud | 2.x |
||
| CentOS 7.7 | Alibaba Cloud | 2.x |
||
| CentOS 7.6 | Alibaba Cloud | 2.x |
||
| CentOS 7.5 | Alibaba Cloud | 2.x |
||
| CentOS 7.4 | Alibaba Cloud | 2.x |
||
| CentOS 7.3 | Alibaba Cloud | 2.x |
||
| CentOS 7.2 | Alibaba Cloud | 2.x |
オリジナルの CentOS 7.2 イメージはバージョンが古すぎるため, overlay2 を使用できず, デフォルトでは非ユニオンファイルシステム vfs が使用され, ディスク容量を大きく消費します.ただし, Alibaba Cloud パブリックイメージの CentOS 7.2 はカーネルがアップグレードされているため, overlay2 を正常に使用できます. |
|
| CentOS 6.10 | Alibaba Cloud | 2.x |
Docker の新機能の要件により, 新しいバージョンの Docker は使用できません. |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| CentOS 7.9 | VirtualBox | 5.0.5 |
イメージは Alibaba Cloud オープンソースミラーサイト / CentOS 7.9.2009 / CentOS-7-x86_64-Minimal-2009.iso |
| OS | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|
| Debian 10.2 "buster" | Alibaba Cloud | 2.x |
|
| Debian 9.6 "stretch" | Alibaba Cloud | 2.x |
|
| Debian 8.11 "jessie" | Alibaba Cloud | 2.x |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| AlmaLinux 9.0 64 ビット | Alibaba Cloud | 2.x |
||
| AlmaLinux 8.6 64 ビット | Alibaba Cloud | 2.x |
||
| AlmaLinux 8.5 64 ビット | Alibaba Cloud | 2.x |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| Fedora 35 64 ビット | Alibaba Cloud | 2.x |
||
| Fedora 34 64 ビット | 阿里云 | 2.x |
||
| Fedora 33 64 ビット | 阿里云 | 2.x |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| OpenSUSE 15.4 64 ビット | 阿里云 | 2.x |
事前に Docker をインストールし、Docker Swarm を構成する必要があります 詳細は SUSE / Docker Open Source Engine Installation を参照してください |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| SUSE Linux Enterprise Server 15 SP3 64 ビット | 阿里云 | 2.x |
事前に Docker をインストールし、Docker Swarm を構成する必要があります 詳細は SUSE / Docker Open Source Engine Installation を参照してください |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| Rocky Linux 9.5 64 ビット | 阿里云 | 6.2.8 |
||
| Rocky Linux 8.6 64 ビット | 阿里云 | 2.x |
||
| Rocky Linux 8.5 64 ビット | Alibaba Cloud | 2.x |
ARM アーキテクチャ
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| Ubuntu 22.04 | Alibaba Cloud | 5.0.5 |
||
| Ubuntu 20.04 | Alibaba Cloud | 5.0.5 |
||
| Ubuntu 18.04 | Alibaba Cloud | 2.x |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| Ubuntu 20.04 LTS | Raspberry Pi 4B 8GB 版 |
2.x |
詳細は デプロイとメンテナンス / インストールとデプロイ / Raspberry Pi Ubuntu デプロイ を参照してください |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| CentOS 8.3 | Alibaba Cloud | 2.x |
Redis が Unsupported system page size エラーを報告し、起動できない詳細は トラブルシューティング / コンテナが正常に実行できない / Redis が現在のシステムのページサイズをサポートしていない を参照してください |
|
| CentOS 7.9 | 阿里云 | 2.x |
Redis が Unsupported system page size エラーを報告し、起動できない詳細は トラブルシューティング / コンテナが正常に実行できない / Redis が現在のシステムのページサイズをサポートしていない を参照してください |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| Debian 10.9 "buster" | 阿里云 | 2.x |
| OS | 実測環境 | 実測バージョン | 実測結果 | 備考 |
|---|---|---|---|---|
| Raspberry Pi OS (Debian 10 "buster") | Raspberry Pi 4B 8GB 版 |
2.x |
Raspberry Pi で arm64_bit モードを有効にする必要があります詳細は メンテナンスとデプロイ / インストールとデプロイ / Raspberry Pi 公式 OS デプロイ を参照してください |
4. ブラウザ互換性
本システムは Web アプリケーションであり、一部のブラウザでは互換性の問題により使用できない場合があります
| ブラウザ | 実測結果 |
|---|---|
| Chrome | |
| Safari | |
| Firefox | |
| Microsoft Edge (webkit) | |
| Opera | |
| Maxthon ブラウザ | |
| Sogou ブラウザ | |
| QQ ブラウザ | |
| 360 高速ブラウザ(高速モード、すなわち Chrome モード) | |
| 360 高速ブラウザ(互換モード、すなわち IE モード) | |
| Internet Explorer |
X. 付録
カーネルバージョンが低すぎて Overlay を使用できない
Overlay ストレージエンジンには Linux 4.0+ カーネル、または 3.10.0-514+ バージョンの RHEL/CentOS が必要です。参照:
- Docker Docs: Use the OverlayFS storage driver
- Docker Docs: Use the VFS storage driver
- Wikipedia: CentOS version 7
OpenSUSE / SUSE Linux に Docker をインストールするコマンドの抜粋
OpenSUSE / SUSE Linux に十分に精通し、以下のコードの意味を理解していることを必ず確認した上で操作してください
| Bash | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 | |