|
コンテナ化されたデプロイメント、特にDockerテクノロジーを用いたデプロイメントは、現代のソフトウェアデプロイメントの標準となっています。`run`などのシンプルなコマンドでコンテナを直接起動したり、docker-composeやKubernetes (k8s)などのオーケストレーションツールを使用してプロセスを簡素化したりできます。 Kubernetesは、Googleが設計・開発し、現在はCloud Native Computing Foundation(CNCF)がメンテナンスを行っているオープンソースのコンテナオーケストレーションプラットフォームです。コンテナ化されたアプリケーションの導入、スケーリング、管理、自動化を簡素化し、ユーザーがアプリケーションをより効率的に構築、配信、実行できるようにすることを目指しています。Kubernetesは強力なツールですが、その複雑さゆえに一部のユーザーにとって扱いにくい場合があります。 続いて、今回の記事の主題である「KubeSphere」を紹介しましょう。 KubeSphereの紹介KubeSphereはKubernetesの拡張機能と強化機能として捉えることができ、Kubernetesの利用を簡素化・最適化するための機能とソリューションを提供します。KubeSphereは、DevOps、マルチテナント管理、サービスメッシュ、ストレージ、ログ監視など、豊富なツールとサービスを提供しており、ユーザーがクラウドネイティブアプリケーションを簡単に構築、デプロイ、管理できるよう支援します。 KubeSphereは、Kubernetes上に構築された、より包括的なクラウドネイティブ・フルスタック・ソリューションです。Kubernetesの機能をさらに簡素化・強化し、より幅広いサポートとサービスを提供します。 以下は KubeSphere 公式 Web サイトからの定義です。
KubeSphere の詳細については、公式 Web サイト (KubeSphere 公式 Web サイト) をご覧ください。 インストールの準備KubeSphere を初めて使用し、コンテナ プラットフォームをすぐに使い始めたいユーザーにとっては、オールインワン インストール モードが最適です。このモードでは、構成なしで KubeSphere と Kubernetes を迅速に展開できます。 環境整備
ノード要件1. ノードは SSH 経由で接続できる必要があります。2. ノード上で `sudo /cur1 /openss1` コマンドを使用できます。 DockerをインストールするDocker をインストールした後、次のコマンドを実行して設定する必要があります。 次に、systemctl restart docker を実行して Docker を再起動し、設定を有効にします。 依存関係をインストールするKubekeyは、Go言語で開発された全く新しいインストールツールで、従来のAnsibleベースのインストーラーに代わるものです。KubeKeyは柔軟なインストールオプションを提供し、KubeSphereとKubernetesを個別に、または両方を同時にインストールできるため、便利で効率的です。 KubeKeyはKubernetesとKubeSphereを一緒にインストールできます。必要な依存関係はKubernetesのバージョンによって異なる場合があります。 関連する依存関係をインストールするには、次のコマンドを実行します。 ネットワークとDNSの要件`/etc/resolv.conf` 内の DNS アドレスが有効であることを確認してください。有効でない場合、クラスター内で DNS の問題が発生する可能性があります。`cat /etc/resolv.conf` コマンドを使用して確認してください。 また、`nslookup www.baidu.com` コマンドを使用してテストすることもできます。次の画像が表示されれば、すべてが正常であることを意味します。 ファイアウォールをオフにします。 まず、`firewall-cmd --state` コマンドを使用してファイアウォールの状態を確認します。ファイアウォールが動作している場合は、次のコマンドで無効にします。 SELinux が無効になっているかどうかを確認するには、コマンド `sestatus` を入力します。 上の画像は有効化された状態を示しています。設定ファイルを編集します: `vi /etc/selinux/config` 変更を行った後、変更を有効にするためにサーバーを再起動します。 kubekeyをダウンロードKubernetesとkubesphereのインストールにはkubekeyツールを使用するため、まずkubekeyをインストールしてください。GitHubとGoogleにアクセスできるかどうかに関わらず、以下のコマンドを実行してリージョンを切り替えると、多くの手間を省くことができます。 GitHub リリース ページから KubeKey をダウンロードするか、次のコマンドを直接使用します。 実行が成功すると、下の画像に示すように、現在のディレクトリに緑色の「kk」ディレクトリが表示されます。 kk ディレクトリに十分な権限がない場合は、次のコマンドを使用して権限を付与する必要があります。 インストールルート ディレクトリに `./kk` と入力すると、さまざまなインストール方法でよく使用されるコマンドと手順が表示されます。 次のコマンドは、Kubernetesとkubesphereの両方を同時にインストールします。インストール前に環境チェックが実行されます。 インストール中: kubesphere の最終的なインストールには長い時間がかかります。 問題は、成功メッセージが表示されずに長時間待たされたことです。確認したところ、CentOS システムバージョンの依存関係と KubeKey の競合が原因である可能性があることがわかりました。私は CentOS Linux リリース 7.4.1708 (Core) を使用していましたが、**CentOS 7.9 の使用が推奨されています**。 新しい仮想マシンを作成し、Parallelsを使用してMacにCentOS 7.9をインストールしました。インストール中に、以下の問題が発生しました。
これは、次のように設定することで解決できます。 CentOS 7.9をインストールした後、上記の手順に従って再インストールしました。今回はインストールが成功し、インストール成功メッセージにkubesphereのアクセスアドレス、ユーザー名、パスワードが表示されました。 ログイン後、画面は次のようになります。 仮想マシンの構成は、少なくとも4コアと8GBのRAMが必要です。当初は2コア(デフォルト)しか割り当てていなかったため、監視システムの一部のノードが実行後に正常に起動しませんでした。4コアに調整した後、すべて正常に起動しました。 KubeSphereは一般的なコマンドワークロードを作成するステートフル レプリカ セットをワークロードに追加し、基本情報を入力します。 コンテナを構成するには、まずコンテナを選択し(「mysql」を直接入力して検索できます)、次にインストールする必要があるデータベースのバージョンを選択します。 タイムゾーンやルートパスワードなどの環境変数を設定します。 ストレージのマウントを構成します。 マウント構成ファイル: 使用する前にサービスを作成する必要があります。ステートフルレプリカセットを作成すると、デフォルトでサービスが作成されます。 デフォルトでは、アクセスはクラスター内に限られます。コンテナのコンソールでDNS名を使用してログインできます。 外部アクセスが必要な場合は、サービスを作成し、指定されたワークロードを選択する必要があります。 次の図に示すように、ステートフル レプリカ セットを見つけて指定します。 サービス名とポートを設定します。 アクセス モードを設定します: 外部アクセスの場合、サービスの作成後に外部アクセス ポートが生成されることに注意してください。 クライアント ツールを使用して接続します。 |