GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu18.04LTSにKubernetesをインストールしてデプロイする

Kubernetesとは何ですか?

Kubernetesは、無料のオープンソースコンテナ管理システムであり、ホストコンピュータのクラスタ全体でのアプリケーションコンテナのデプロイの自動化、スケーリング、操作のためのプラットフォームを提供します。 Kubernetesを使用すると、ハイブリッド、オンプレミス、パブリッククラウドのインフラストラクチャを自由に利用して、組織のデプロイタスクを実行できます。

このチュートリアルでは、UbuntuシステムにKubernetesをインストールする方法と、2ノードのUbuntuクラスターにKubernetesをデプロイする方法について説明します。

この記事に記載されているコマンドと手順は、Ubuntu18.04LTSシステムで実行されています。すべてのコマンドを実行するためにUbuntuコマンドラインであるターミナルを使用するため、システムダッシュまたはCtrl + Alt+Tショートカットのいずれかを使用して開くことができます。

Kubernetesのインストール

この記事で形成する2ノードのクラスターは、マスターノードとスレーブノードで構成されます。これらのノードには両方とも、Kubernetesがインストールされている必要があります。したがって、以下に説明する手順に従って、両方のUbuntuノードにKubernetesをインストールします。

ステップ1:両方のノードにDockerをインストールします

各ノードのターミナルでsudoとして次のコマンドを実行して、両方のノードにDockerユーティリティをインストールします。

 $ sudo apt install docker.io 

インストールを続行するために、Y/nオプションのプロンプトが表示されます。 Yを入力し、Enterキーを押して続行してください。その後、Dockerがシステムにインストールされます。次のコマンドを使用して、インストールを確認し、Dockerのバージョン番号を確認することもできます。

 $ docker --version 

ステップ2:両方のノードでDockerを有効にする

それぞれで次のコマンドを実行して、両方のノードでDockerユーティリティを有効にします。

 $ sudo systemctl enable docker 

ステップ3:両方のノードにKubernetes署名キーを追加します

Kubernetes署名キーを取得するには、次のコマンドを実行します。

 $ curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add 

システムにCurlがインストールされていない場合は、rootとして次のコマンドを使用してインストールできます。

 $ sudo apt install curl 

インストールを続行するために、Y/nオプションのプロンプトが表示されます。 Yを入力し、Enterキーを押して続行してください。これで、Curlユーティリティがシステムにインストールされます。

ステップ4:両方のノードにXenialKubernetesリポジトリを追加する

Xenial Kubernetesリポジトリを追加するには、両方のノードで次のコマンドを実行します。

 $ sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main" 

ステップ5:Kubeadmをインストールする

インストールプロセスの最後のステップは、次のコマンドを使用して両方のノードにKubeadmをインストールすることです。

 $ sudo apt install kubeadm 

インストールを続行するために、Y/nオプションのプロンプトが表示されます。 Yを入力し、Enterキーを押して続行してください。その後、Kubeadmがシステムにインストールされます。

次のコマンドを使用して、Kubeadmのバージョン番号を確認し、インストールを確認することもできます。

$kubeadmバージョン

Kubernetesのデプロイ

ステップ1:両方のノードでスワップメモリ​​を無効にする(実行中の場合)

スワップメモリ​​を使用しているシステムではKubernetesが正しく実行されないため、両方のノードでスワップメモリ​​を無効にする必要があります。スワップメモリ​​を無効にするには、両方のノードで次のコマンドを実行します

 $ sudo swapoff -a 

ステップ2:各ノードに一意のホスト名を指定する

マスターノードに一意のホスト名を付けるには、マスターノードで次のコマンドを実行します。

 $ sudo hostnamectl set-hostname master-node 

スレーブノードに一意のホスト名を付けるには、スレーブノードで次のコマンドを実行します。

 $ hostnamectl set-hostname slave-node 

ステップ3:マスターノードでKubernetesを初期化する

マスターノードでsudoとして次のコマンドを実行します。

 $ sudo kubeadm init --pod-network-cidr =10.244.0.0 / 16 

インターネット接続によっては、処理に1分以上かかる場合があります。このコマンドの出力は非常に重要です:

出力から次の情報を書き留めてください:

クラスタの使用を開始するには、通常のユーザーとして次を実行する必要があります。

 mkdir -p $ HOME / .kube 
 sudo cp -i /etc/kubernetes/admin.conf $ HOME / .kube / config 
 sudo chown $(id -u):$(id -g)$ HOME / .kube / config 

各ノードで以下を実行することにより、任意の数のマシンに参加できるようになりました

ルートとして:

 kubeadm join 192.168.100.6:6443 --token 06tl4c.oqn35jzecidg0r0m --discovery-token-ca-cert-hash sha256:c40f5fa0aba6ba311efcdb0e8cb637ae0eb8ce27b7a03d47be6d966142f2204c 

次に、クラスターの使用を開始するために、出力で提案されたコマンドを実行します。

次のコマンドを実行して、マスターノードのステータスを確認できます。

 $kubectlgetノード

マスターノードのステータスがまだ「準備ができていません」であることがわかります。これは、マスターノードにポッドがまだデプロイされていないため、ContainerNetworkingInterfaceが空であるためです。

ステップ4:マスターノードを介してポッドネットワークをデプロイする

ポッドネットワークは、ネットワークのノード間の通信媒体です。このチュートリアルでは、次のコマンドを使用して、クラスターにFlannelポッドネットワークを展開しています。

 $ sudo kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml 

ネットワークのステータスを表示するには、次のコマンドを使用します。

 $ kubectl get pods --all-namespaces 

これで、ノードのステータスを確認すると、マスターノードの準備ができていることがわかります。

 $ sudokubectlgetノード

ステップ5:クラスターを形成するためにスレーブノードをネットワークに追加します

スレーブノードで、マスターノードでKubernetesを初期化するときに生成した次のコマンドを実行します。

 $ sudo kubeadm join 192.168.100.6:6443 --token 06tl4c.oqn35jzecidg0r0m --discovery-token-ca-cert-hash sha256:c40f5fa0aba6ba311efcdb0e8cb637ae0eb8ce27b7a03d47be6d966142f2 

これで、マスターノードで次のコマンドを実行すると、マスターノードとサーバーノードの2つのノードがシステムで実行されていることが確認されます。

 $ sudokubectlgetノード

これは、2ノードクラスタがKubernetesコンテナ管理システムを介して稼働していることを示しています。

この記事では、2つのUbuntuノードへのKubernetesコンテナ管理システムのインストールについて説明しました。次に、単純な2ノードクラスターを形成し、その上にKubernetesをデプロイしました。これで、NginxサーバーやApacheコンテナなどの任意のサービスをデプロイして使用し、このクラスター化されたネットワークを利用できるようになりました。


Ubuntu
  1. Ubuntu12.04および14.04LTSにLibreoffice4.3をインストールする方法

  2. Ubuntu15.04および14.04LTSにLibreoffice4.4をインストールする方法

  3. Ubuntu 20.04 LTSにBusyboxをインストールして使用する-ステップバイステップガイド?

  1. Ubuntu16.04LTS以降にLibreOffice6.0をインストールする方法

  2. Ubuntu 18.04 LTSにKubernetes(k8s)をインストールして設定する方法

  3. Ubuntu18.04LTSにKubernetesとDockerをインストールして設定する方法

  1. Ubuntu18.04LTSにVulsVulnerabilityScannerをインストールして使用する方法

  2. Ubuntu18.04LTSにFreeRADIUSとdaloRADIUSをインストールする方法

  3. Ubuntu20.04LTSにKVMをインストールして構成する