ODP(obproxy)に関連する障害は主に2種類に分けられます。一つはobproxyノード自体の障害であり、もう一つは複数のobproxyで構成されるクラスタ上層のロードバランシングの障害(一般的にはF5、LVS、SLBなどのコンポーネント)です。本記事では主にobproxy自体に起因する障害について説明します。
緊急時の対処手順
obproxy自体に起因する障害には、一般的に以下の2つのケースがあります:
メモリ不足により、プロセスが頻繁にOOMで終了する
メモリ不足の場合、ユーザーは通常obproxyのログで次のエラーを確認できます:
obproxy's memroy is out of limit's 90%。OBProxy内のproxy_mem_limitedパラメータは、OBProxyのメモリ制限を変更するために使用されます。このパラメータは、プロキシがシステムメモリを占有する最大上限であり、超過した場合にはプロセスが自動的に終了します。値の範囲は[100MB,100GB]で、変更後は再起動なしで即時反映されます。OceanBaseクラウドプラットフォームを通じてデプロイされたOBProxyの場合、デフォルトの起動構成パラメータではこの設定がすでに2GBに設定されています。この場合、obproxyの最大使用可能メモリを8GBに調整できます。
コマンドラインでインストールされたOBProxyで、OBProxyのメモリを明示的に指定していない場合、
proxy_mem_limitedのデフォルト値は800MBです。まずは2GBに調整してみてください。ALTER proxyconfig SET proxy_mem_limited = 2G;デーモンプロセス異常により、obproxyが自動的に再起動できない
このような場合、手動でobproxyを再起動することができます。