ドキュメント

高可用性 Kubernetes 展開

約2分で読めます · このページを GitHub で編集

← ShimoDocs Suite デプロイメント文書

1. 適用シナリオ

Tip

K8s クラスターデプロイメントは本番環境に適しています。単一マシンデプロイメントと比較して、クラスターデプロイメントは長期運用、スケーリング、高可用性のシナリオにより適しています。

  • 本番環境では、次の使用を推奨します 3 master + N worker.
  • 最低でも3台のサーバーを用意し、すべてマスターとして設定します。ワーカーは初めはマスターノードを再利用し、後でスケールに応じてワーカーを増やします。

2. デプロイ前の準備

2.1 以下の情報を準備

情報 説明
ネットワーク環境 オンライン / オフライン パブリックネットワークアクセスが可能な場合はオンラインを選択、内部ネットワークまたは切断環境の場合はオフラインを選択
INSTALL_NODE_IP <INSTALL_NODE_IP> 1台のマシンをインストールノードとして選択し、ウェブページを起動
業務 NODE_IP <Node1IP>, <Node2IP>, <Node3IP> 最低3台のサーバー
実行ユーザー root インストールコマンドは次のユーザーで実行 root
アクセスプロトコル HTTP / HTTPS HTTPS 本番環境では次を推奨
ACCESS_DOMAIN <ACCESS_DOMAIN> ユーザーがアクセスするためのアドレス ShimoDocs Suite
データディレクトリ /data すべてのノードで一貫性を保つことを推奨します
インストールツール mdp-installer-${Arch} 提供元インストーラー ShimoDocs, ${Arch} 異なるチップアーキテクチャを区別します。その値はx86アーキテクチャの場合はamd64、armアーキテクチャの場合はarm64にできます。
製品インストールパッケージ ShimoDocs Suite インストールパッケージ 実際に提供されたファイル名を使用してください
オフラインイメージパッケージ *.tar.gz オフラインインストール時のみ必要です
外部ミドルウェア はい / いいえ 外部ミドルウェアがある場合は、事前にアドレス、ポート、アカウントを準備してください PASSWORD 事前に

2.2 最小サーバ要件

項目 要件
サーバ台数 3台以上
推奨役割 3 master + N worker
CPU ノードごとに 16コア以上
ノードごとのメモリ 32GB以上
システムディスク ルート / パーティション100GB以上
データディスク 別マウント /data、使用可能容量300GB以上
オフラインインストール インストールノードのデータディスクに追加で100GB以上を確保することを推奨します

注意:

  • パーティションしないでください /root, /var、または /tmp 別々に
  • データをシステムディスクに置かず、すべてに置いてください /data.
  • すべてのノードの時間は同期されている必要があります。
  • インストールノードは他のノードにアクセスできる必要があります SSH.

各サーバで実行可能:

lscpu
free -g
df -h
timedatectl status

インストールノードから他のノードにアクセスできることを確認してください:

ssh root@<NODE2IP>
ssh root@<NODE3IP>

ログインに失敗した場合は、まず SSH, PASSWORD、ファイアウォール、またはセキュリティグループの設定を確認してからインストールを続行してください。

3. インストールツールとインストールパッケージをアップロードする

Tip

  • コマンド内のファイル名は、実際の状況に応じて必ず修正してください。例えば、x86アーキテクチャ環境でのインストーラパッケージ名は mdp-installer-amd64 です。
  • 実際の状況に応じて適切なアップロード方法を選択してください。本記事では scp コマンドラインを例に使用しますが、他のグラフィカルツールでもアップロード可能です。 SSH ツールもアップロードに使用できます。

ローカルコンピュータで次のコマンドを実行して、インストーラをインストールノードに転送します。

scp mdp-installer-amd64 root@<INSTALL_NODE_IP>:/root/

オフラインインストールでもオフラインイメージパッケージのアップロードは必要です。

scp smbase_image-amd64.tar.gz offline_app_image.tar.gz root@<INSTALL_NODE_IP>:/root/

インストールノードにログインします。

ssh root@<INSTALL_NODE_IP>

インストーラに実行権限を付与します。

chmod +x /root/mdp-installer-amd64

インストーラのウェブページを起動します。

nohup /root/mdp-installer-amd64 server --port 18080 &

ブラウザアクセス:

http://<INSTALL_NODE_IP>:18080

4. ウェブページによるインストール

4.1 製品インストールパッケージのアップロード

  1. 開く http://<INSTALL_NODE_IP>:18080.
  2. アップロードする ShimoDocs Suite インストールパッケージ。
  3. アップロードが完了したら、クリックします。 Continue.

4.2 設定 ACCESS_DOMAIN

入力 ShimoDocs Suite アクセスアドレス:

構成項目 記入方法
ACCESS_DOMAIN / IP <ACCESS_DOMAIN>

4.3 基本構成の確認

構成項目 記入方法
NODE_IP マスター / ワーカーを入力 NODE_IPを1つずつ入力
SSH ポート 通常 22
SSH PASSWORD root ユーザー PASSWORD
ノードタイプ master, worker、インストールノード
データディレクトリ /data

操作手順:

  1. 追加 INSTALL_NODE_IP。
  2. 各マスター/ワーカーノードのIPアドレスを追加します。
  3. 各サーバーにノードの役割を割り当てます。
  4. インストールノードから各ノードへの接続性をテストします。
  5. データカタログおよびコンテナネットワークセグメントを入力します。

構成中に確認すべきポイント:

  • アクセスプロトコルおよび ACCESS_DOMAIN が正しく入力されていること。
  • ポッド CIDR およびサービス CIDR は既存のネットワーク、オフィスネットワーク、 VPN、または IDC ネットワークセグメントと競合しません。
  • データディレクトリは /data または実際に計画されているデータディスクのディレクトリを使用します。
  • オンライン/オフラインのインストール方法は現在のネットワーク環境と一致しています。
  • オフラインインストールでは、オフラインのベースイメージパッケージとアプリケーションイメージパッケージをアップロードする必要があります。デフォルトではオンラインインストールであり、クラスタがパブリックネットワークにアクセスできることを確認する必要があります。

4.4 初期展開

構成が完了したら、[初期展開] をクリックします。ページにはこの展開の概要が表示されます。特に注意する点は次の通りです:

  • 製品パッケージのバージョン。
  • デプロイ NODE_IP。
  • SSH ユーザーとポート。
  • ACCESS_DOMAIN およびプロトコル。
  • データディレクトリ。
  • オンラインまたはオフラインのインストールモード。
  • ミドルウェアの選択。

エラーがないことを確認したうえで続行します。

4.5 システム環境の確認

インストーラーはサーバー環境を自動的にチェックします。

検査が合格した後、展開を続行します。失敗が発生した場合は、ページの指示に従って対応し、その後再度検査してください。一般的な対応方法には次のものがあります:

  • ディスク容量不足:空き容量を整理するか、データディスクを拡張します。
  • ポート使用不可:ポートを解放するか、ポート使用を調整します。
  • SSH 接続に失敗しました:アカウント、 PASSWORD、秘密鍵、ポート、およびセキュリティグループを確認してください。
  • 時刻同期例外:サーバー時刻を設定 NTP または校正してください。
  • 基本コマンドが不足しています:システムのディストリビューションに従って不足しているコマンドをインストールしてください。

4.6 デプロイメント開始

環境チェックを通過した後、[デプロイメント開始] をクリックします。

デプロイメントプロセス中に各コンポーネントの実行ログを確認できます。インストール中は次の点を確認してください:

  • インストーラプロセスが実行中であること。
  • ブラウザがネットワーク経由でインストールノードと通信できること。
  • サーバーが再起動されないこと。
  • インストールパッケージ、オフラインイメージパッケージ、またはデータディレクトリを移動または削除しないこと。

4.7 インストール完了まで待機

インストールプロセスにはある程度の時間がかかり、正確な時間はサーバーの性能、ネットワーク環境、イメージのダウンロード速度に依存します。

ページにすべてのタスクが正常に実行され、失敗したコンポーネントがないと表示された場合、デプロイメントが完了したことを示します。

4.8 インストール結果の確認

インストール完了後、インストーラはデプロイメント完了ページとアクセス情報を表示します。ビジネスシステムおよび操作プラットフォームにアクセスを続行する前に、ページに失敗タスクがないことをまず確認してください。 MDP 操作プラットフォーム。

ビジネスアドレスにアクセス:

http://<ACCESS_DOMAIN>/

もし HTTPS インストール中に設定した場合、次にアクセスしてください:

https://<ACCESS_DOMAIN>/

デフォルトアカウントまたは管理者アカウントでログインした後、初期の PASSWORD 設定をすぐに変更してください。

アクセス MDP 操作プラットフォーム:

http://<ACCESS_DOMAIN>/mdp/

管理者を変更する必要がある場合は、展開ノードで次のコマンドを実行して、管理者パスワードを変更またはリセットできます。 MDP 管理者 PASSWORD次のコマンドを実行して修正またはリセット可能です PASSWORD. {password} を新しい複雑で強力なパスワードに置き換えてください PASSWORD 実際のセキュリティ要件に従ってください。

kubectl exec -it $(kubectl get pods -l app=mdp -o jsonpath='{.items[0].metadata.name}') -- reset-admin-password {password}

5. インストール後の受け入れ

5.1 ノードステータスの確認 K8s ノードステータス

展開ノードで実行してください:

kubectl get node

ノードのステータスは次の状態である必要があります Ready.

サービスの確認を続けます:

kubectl get pod -A

通常の状態は次の通りです:

  • Running: サービスが稼働中です。
  • Completed: タスクの実行が完了しました。

次のような状態が発生した場合 CrashLoopBackOff, ImagePullBackOff, Error, Pending対応するPodのログを最初に確認して対処してください。

5.2 アクセスエントリの確認

アクセス ShimoDocs Suite ブラウザ経由のエントリ:

http://<ACCESS_DOMAIN>/

もし HTTPS が設定されている場合、次にアクセスしてください:

https://<ACCESS_DOMAIN>/

ログインページが正常に開けることを確認してください。

5.3 管理バックエンドとライセンスの確認

次の項目を確認してください:

  • 管理バックエンドにアクセス可能であること。
  • 管理者がログインできること。
  • ライセンスページを開けること。
  • マシン情報を確認できること。
  • ライセンスを認証プロセスに従って申請または更新できること。

5.4 業務機能の確認

テストアカウントまたは管理者が作成したアカウントでログイン後、少なくとも次を確認してください:

  • 文書、スプレッドシート、スライドを作成できること。
  • 文書を編集、保存、再読み込みでき、内容が保持されること。
  • 複数ユーザーでの共同編集が可能であること。
  • ファイルのインポートおよびエクスポートが正常であること。
  • 検索、チームスペース、連絡先などの主要機能が利用可能であること。

デフォルトのテストアカウントで初回ログイン後、すぐに PASSWORD を更新してください。 アカウント PASSWORD はデプロイおよび配信アカウントです PASSWORD!

ACCOUNT:[email protected]
PASSWORD:xxxxxxx

5.5 インストーラーの停止

デプロイが完了して受け入れられた後、インストーラーのWebサービスを停止できます インストールWebページを停止する: インストーラーを停止するコマンド:

ps -ef | grep mdp-installer | grep -v grep
kill <PID>

インストーラーがバックグラウンドで起動されている場合 nohup、ログを確認することもできます:

tail -f /root/nohup.out

6. 一般的な問題の対処

6.1 ブラウザでインストーラーページを開けない

次の点を確認してください:

  • インストーラープロセスがまだ実行中かどうか。
  • ポート 18080 がファイアウォールまたはセキュリティグループによってブロックされているかどうか。
  • ブラウザからアクセスされているIPが INSTALL_NODE_IP。

サーバーで実行できます:

ps -ef | grep mdp-installer | grep -v grep
ss -lntp | grep 18080

6.2 環境チェックに失敗した

ページの指示に従って各項目を対応してください。対応後、インストーラーページに戻り、環境チェックを再実行します。

優先チェック:

  • かどうか CPU、メモリ、およびディスクが要件を満たしています。
  • かどうか /data は独立したデータディスクです。
  • サーバー時間が同期されているかどうか。
  • かどうか SSH ユーザーはデプロイ権限を持っています。

6.3 オフラインインストールイメージの取得に失敗しました

確認手順:

  • オフラインイメージパッケージがデプロイノードにアップロードされているか。
  • ベースオフラインイメージパッケージおよび製品オフラインイメージパッケージが完全かどうか。
  • イメージパッケージのバージョンが製品インストールパッケージと一致しているか。
  • プライベートイメージリポジトリのアドレス、アカウント、ならびに PASSWORD が正しく入力されていること。

6.4 Pod が長時間異常な状態にある場合

まず、異常な Pod を確認します:

kubectl get pod -A

ログを再確認します:

kubectl logs -n <namespace> <pod-name>

ログに基づいて、イメージ、構成、リソース、または依存関係の問題を対処します。

7. インストール後の資料の保管

展開後、次回の保守、アップグレード、トラブルシューティングを容易にするため、以下の資料を保管することを推奨します:

  • INSTALL_NODE_IP、 ACCESS_DOMAINおよびアクセスプロトコル。
  • インストーラーのファイル名とバージョン。
  • 製品インストールパッケージのファイル名とバージョン。
  • オフラインイメージパッケージのファイル名とバージョン。
  • ウェブページの主要構成スクリーンショット。
  • kubectl get node チェック結果。
  • kubectl get pod -A チェック結果。
  • ライセンス認証記録。
  • 業務機能受け入れ記録。
  • 導入中に発生した問題とその対応結果。