Ubuntuとその派生物にKubernetesをインストールして、XNUMXつのノードを作成するにはどうすればよいですか?

Kubernetes Ubuntu

Kubernetesは 無料のオープンソースコンテナ管理システム それが提供する ホストコンピューターのグループ全体でアプリケーションコンテナーの展開、スケーリング、および操作を自動化するためのプラットフォーム。

Kubernetesを使用すると、オンプレミス、パブリック、ハイブリッドのクラウドインフラストラクチャを自由に活用して、組織のデプロイタスクを実行できます。

Ubuntuおよび派生物へのKubernetesのインストール

実際のインストールでは、 この記事で形成するXNUMXノードクラスターを使用します。これは、マスターノードとスレーブノードで構成されます。

両方のノードにKubernetesをインストールする必要があります。 最初に行うことは、両方にdockerをインストールすることです。これには、次のコマンドを実行する必要があります。

sudo apt install docker.io

Dockerがインストールされていることを確認するには、 両方のノードで次のコマンドを実行できます。

docker --version

現在 両方のノードでDockerを有効にすることに進みましょう。

sudo systemctl enable docker

次のステップは、両方のノードにKubernetesキーを追加することです。これは、次のコマンドで行います。

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

次のステップは、次のリポジトリを両方のシステムに追加することです。

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

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

sudo apt install kubeadm

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

kubeadm version

Kubernetesのデプロイ

ここで、システムにKubernetesデプロイメントを実装するには、両方のノードでスワップメモリ​​(実行中の場合)を無効にする必要があります

両方のノードでスワップメモリ​​を無効にする必要がありますKubernetesは、スワップメモリ​​を使用するシステムでは正しく機能しないためです。

これを行うには、次を実行します。

sudo swapoff -a

次のステップは マスターノードで次のコマンドを実行して、一意のホスト名を指定します。

sudo hostnamectl set-hostname master-node

スレーブノードの場合は、次のように入力する必要があります。

sudo hostnamectl set-hostname slave-node

これを今やったv次のコマンドを使用して、マスターノードの初期化に進みましょう。

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

インターネット接続によっては、処理にXNUMX分以上かかる場合があります。 このコマンドの出力は非常に重要であるため、IP、トークンなどが含まれているため、出力に情報を書き留めておく必要があります。

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

mkdir -p $HOME/.kube

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

sudo chown $(id -u):$(id -g) $HOME/.kube/config

現在 rootユーザーとして各ノードで以下を実行することにより、任意の数のマシンに参加できます。

kubeadm join tuip --token tutoken --discovery-token-ca-cert-hash sha256:tuhash

tutoken、tuip、およびハッシュの情報を、少し前に書き留めると言われた情報に置き換える場所。

ノードのリストを取得する

マスターノードのステータスがまだ準備できていないことがわかります。 これは、マスターノードにポッドがまだデプロイされていないため、コンテナネットワークインターフェイスが空であるためです。

リストを表示するには、実行するだけです。

kubectl get nodes

マスターノードを介したポッドネットワークの展開

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

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

ネットワークのステータスを知るには、次のように入力します。:

kubectl get pods --all-namespaces

sudo kubectl get nodes

これが完了したら、マスターノードと同じように情報を補完する必要があるのと同じ方法で、スレーブノードをネットワークに追加してクラスターを形成します。

sudo kubeadm join tuip --token tutoken --discovery-token-ca-cert-hash sha256:tuhash

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

sudo kubectl get nodes

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


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:MiguelÁngelGatón
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。