OceanBaseデータベースは分散クラスタ製品であり、本番環境では少なくとも3台のマシンが必要です。学習環境では単一マシン版をデプロイできます。OceanBaseデータベースのデプロイは従来のデータベースと多くの共通点がありますが、オペレーティングシステムのハードウェアやソフトウェア設定などについて、いくつかのベストプラクティスを推奨しています。これらは、OceanBaseデータベースが高性能で安定して稼働するための基盤となります。
ソフトウェアリソースについて
次の表は、異なるOSバージョンに対応するインストールパッケージを示しています。
オペレーティングシステム |
インストールパッケージのダウンロードURL |
|---|---|
| Alibaba Cloud Linux 2、CentOS 7、RedHat 7、Ubuntu 16.X、Debian 9.X | el7 ダウンロード |
| Alibaba Cloud Linux 3、CentOS 8、RedHat 8、Debian 10 、Anolis OS 8.X | el8 ダウンロード |
サーバー構成要件
obdを使用したOceanBaseクラスタのデプロイ
サーバーが満たすべき最低利用可能構成要件は、次の表のとおりです。
項目 |
説明 |
|---|---|
| デプロイ製品 | OceanBaseクラスタとobd |
| サーバー数 |
|
| テスト開発の最低構成 |
|
| 本番環境の最低構成 |
|
| ディスク構成 | SSDストレージを使用し、最低20GBが必要です。
説明ディスクでは、ログディスクはメモリの3倍以上が必要で、データディスクは対象データ量の保存に耐えられる容量が必要です。 |
| ファイルシステム | ext4またはxfs。データが16TBを超える場合は、xfsのみサポートされます。 |
OCPを使用したOceanBaseクラスタのデプロイ
サーバーが満たすべき最低利用可能構成要件は、次の表のとおりです。
デプロイ製品 |
サーバー数 |
テスト・開発環境の最低構成 |
本番環境の最低構成 |
ディスク構成 |
|---|---|---|---|---|
| OCP および MetaDB | 1台 | CPU:16コア メモリ:32 GB ディスク:1.5 TB ストレージ 説明16C32G の構成では OCP の安定性を保証できません。検証用途にのみご利用ください。 |
CPU:32コア メモリ:128 GB ディスク:1.5 TB、10ギガビット NIC |
SSD ストレージを使用します。 |
| OceanBase クラスタ |
|
|
|
SSD ストレージを使用し、最低20GBが必要です。
説明ディスクでは、ログディスクはメモリの3倍以上が必要であり、データディスクは対象データ量の保存に耐えられる容量が必要です。 |
| (オプション)ODP | OBServerノードサーバーと共用可能 | CPU:4コア メモリ:8 GB ディスク:200 GB |
CPU:4コア メモリ:8 GB ディスク:200 GB |
N/A |
ソフトウェア環境要件
オペレーティングシステム
OCPオペレーティングシステム
OCPは下表に示すオペレーティングシステムにデプロイできます。お使いのマシンのOSを確認する方法については、以下を参照してください。
OS |
サポートバージョン |
サーバータイプ |
|---|---|---|
| RHEL (および互換性のあるRockyLinux、CentOSなど) | 7.2以降 | x86_64/ARM aarch64 |
| Anolis (および互換性のあるAlibaba Cloud Linux、Kylin V10、Unity Operating System UOS、China Mobile BC-Linux、NingSi OS、Neusoft UFIDAなど) | 8.4以降 | x86_64/ARM aarch64 |
| Debian (および互換性のあるUbuntuなど) | 11以降 | x86_64/ARM aarch64 |
| openSUSE | 12 SP3以降 | x86_64/ARM aarch64 |
OceanBaseデータベースのOS
OceanBaseデータベースは、下表に示すLinux OSにインストールできます。お使いのマシンのOSを確認する方法については、以下を参照してください。
Linux OS |
バージョン |
サーバーアーキテクチャ |
|---|---|---|
| 龙蜥 AnolisOS | 8.x | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
| Alibaba Cloud Linux | 2、3 | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
| CentOS / Red Hat Enterprise Linux | 7.x、8.x | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
| Rocky Linux | 9 | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
| KylinOS | V10 | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
| 統信 UOS | V20 | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
| 中科方德NFSChina | 4.0以降 | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
| 浪潮InspurKOS | 5.8 | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
| SUSE / OpenSUSE | 15.X以降 | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
| Debian | 9.x以降 | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
| Ubuntu | 16.X以降 | x86_64 (海光を含む)、ARM_64 (鯤鵬、飛騰を含む) |
説明
OSにはネットワークとソフトウェアマネージャー(yumまたはzypperリポジトリ)が設定されている必要があります。
OceanBaseデータベースでは、OSが4.19以上であることが必要です。
uname -rコマンドを実行してカーネル情報を確認できます。
オペレーティングシステムの確認
以下のコマンドを実行して、オペレーティングシステム情報を確認します。
cat /etc/os-release
実行結果は次のとおりです。
NAME="Anolis OS"
VERSION="8.2"
ID="anolis"
ID_LIKE="rhel fedora centos"
VERSION_ID="8.2"
PLATFORM_ID="platform:an8"
PRETTY_NAME="Anolis OS 8.2"
ANSI_COLOR="0;31"
HOME_URL="https://openanolis.cn/"
以下のコマンドを実行して、オペレーティングシステム情報を確認します。
cat /etc/redhat-release
実行結果は次のとおりです。
Red Hat Enterprise Linux Server release 7.2 (Maipo)
以下のコマンドを実行して、オペレーティングシステム情報を確認します。
cat /etc/redhat-release
戻り値は次のとおりです。
CentOS Linux release 7.2.1511 (Core)
以下のコマンドを実行して、オペレーティングシステムの情報を確認します。
cat /etc/os-release
実行結果は次のとおりです。
NAME="Ubuntu"
VERSION="20.04.2 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.2 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
以下のコマンドを実行して、オペレーティングシステムの情報を確認します。
cat /etc/os-release
実行結果は次のとおりです。
PRETTY_NAME="Debian GNU/Linux 9 (stretch)"
NAME="Debian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
VERSION_CODENAME=stretch
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
サーバーBIOSの設定
説明
サーバーによってBIOSの変更方法は異なります。具体的な操作手順については、サーバーのマニュアルを参照してください。
BIOSでオフにする必要があるオプション
Cstate
Pstate
EIST
Power saving
BIOSで設定する必要があるオプション
Automatic Power on After Power Loss: Always on
Intel Virtualization Technology:有効
Hyper-threading:有効
Hardware prefetcher:有効
VT-d:有効
SR-IOV:有効
Turbo Mode:有効
Energy performance:最大パフォーマンスを有効にする
透過的巨大ページの無効化
説明
マシンが再起動した場合でも設定を持続させるために、rc.localまたはsystemdの設定ファイルに以下のコマンドを追加することを推奨します。
Red Hat OS RHEL 9以前のバージョンでは、以下のコマンドを実行して、透過的巨大ページを手動で無効にする必要があります。
echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled
Red Hat OS RHEL 9バージョンまたはCentOS OSでは、以下のコマンドを実行して、透過的巨大ページを手動で無効にする必要があります。
echo never > /sys/kernel/mm/transparent_hugepage/enabled
ハードウェア要件
CPU
OceanBaseデータベースをデプロイするマシンがx86アーキテクチャの場合、デプロイ時にはマシンのCPUがAVXをサポートしている必要があります。
以下のコマンドを実行し、CPUがAVXをサポートしているか確認します。
lscpu | grep Flags | grep avx
クエリ結果にavxフィールドがない場合、現在のマシンのCPUはAVXをサポートしていないため、別のマシンに交換する必要があります。クエリ結果にavxフィールドが含まれている場合、現在のマシンのCPUはAVXをサポートしています。
メモリ
以下のコマンドを実行し、メモリを確認します:
free -g
戻り値は次のとおりです:
total used free shared buff/cache available
Mem: 174 38 6 0 129 123
Swap: 0 0 0
ここでは、freeのMem値が上記のサーバー構成要件で定められた要件を満たす十分な値であることを保証する必要があります。要件を満たさない場合は、キャッシュをクリーンアップするか、サーバーを交換してください。
以下のコマンドを実行して、キャッシュをクリーンアップできます:
sudo sysctl -w vm.drop_caches=3
#または
sudo echo 3 > /proc/sys/vm/drop_caches
NIC設定
10ギガビットNICを2枚使用する構成を推奨します:
bondモードの名前をbond0とし、バインディングモードはmode1またはmode4を選択できますが、mode4を推奨します。mode4モードを使用する場合、スイッチで802.3adプロトコルを設定する必要があります。