はじめに
Kubernetes Dockerなどのコンテナテクノロジーを管理するためのオープンソースプラットフォームです。
Dockerを使用すると、事前構成されたイメージとアプリケーションのコンテナーを作成できます。 Kubernetesは次のステップを提供し、コンテナ間の負荷を分散し、複数のシステムで複数のコンテナを実行できるようにします。
このガイドでは、Ubuntu18.04にKubernetesをインストールする方法について説明します。 。
前提条件
- Ubuntu18.04を実行している2台以上のLinuxサーバー
- sudoを使用した各システムのユーザーアカウントへのアクセス またはroot権限
- apt パッケージマネージャー、デフォルトで含まれています
- コマンドライン/ターミナルウィンドウ( Ctrl – Alt – T )
UbuntuにKubernetesをインストールする手順
Dockerをセットアップする
ステップ1:Dockerをインストールする
Kubernetesには既存のDockerインストールが必要です。 Dockerを既にインストールしている場合は、ステップ2に進んでください。 。
Kubernetesをお持ちでない場合は、次の手順でインストールしてください。
1.次のコマンドでパッケージリストを更新します:
sudo apt-get update
2.次に、次のコマンドを使用してDockerをインストールします。
sudo apt-get install docker.io
3.ノードとして機能する各サーバーでプロセスを繰り返します。
4.次のように入力して、インストール(およびバージョン)を確認します。
docker ––version
ステップ2:Dockerを起動して有効にする
1.次のように入力して、起動時に起動するようにDockerを設定します。
sudo systemctl enable docker
2. Dockerが実行されていることを確認します:
sudo systemctl status docker
Dockerが実行されていない場合に起動するには:
sudo systemctl start docker
3.他のすべてのノードで繰り返します。
Kubernetesをインストールする
ステップ3:Kubernetes署名キーを追加する
非標準のリポジトリからKubernetesをダウンロードしているため、ソフトウェアが本物であることを確認することが不可欠です。これは、署名キーを追加することによって行われます。
1.次のように入力して、署名キーを追加します。
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add
curl
というエラーが発生した場合 がインストールされていない場合は、次のコマンドでインストールしてください:
sudo apt-get install curl
2.次に、前のコマンドを繰り返して、署名キーをインストールします。サーバーノードごとに繰り返します。
ステップ4:ソフトウェアリポジトリを追加する
Kubernetesはデフォルトのリポジトリに含まれていません。それらを追加するには、次のように入力します。
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
各サーバーノードで繰り返します。
ステップ5:Kubernetesインストールツール
Kubeadm (Kubernetes Admin)は、クラスターの初期化に役立つツールです。コミュニティから提供されたベストプラクティスを使用して、セットアップを迅速に追跡します。 Kubeletは、すべてのノードで実行され、コンテナーを起動する作業パッケージです。このツールを使用すると、クラスターにコマンドラインでアクセスできます。
1.次のコマンドを使用してKubernetesツールをインストールします:
sudo apt-get install kubeadm kubelet kubectl
sudo apt-mark hold kubeadm kubelet kubectl
プロセスが完了するのを待ちます。
2.次のコマンドでインストールを確認します:
kubeadm version
3.サーバーノードごとに繰り返します。
Kubernetesのデプロイ
ステップ6:Kubernetesのデプロイを開始する
各サーバーのスワップメモリを無効にすることから始めます:
sudo swapoff –a
ステップ7:サーバーノードごとに一意のホスト名を割り当てる
マスターノードとして設定するサーバーを決定します。次に、コマンドを入力します:
sudo hostnamectl set-hostname master-node
次に、ワーカーサーバーで次のように入力して、ワーカーノードのホスト名を設定します。
sudo hostnamectl set-hostname worker01
追加のワーカーノードがある場合は、このプロセスを使用して、それぞれに一意のホスト名を設定します。
ステップ8:マスターノードでKubernetesを初期化する
マスターサーバーノードに切り替えて、次のように入力します。
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
このコマンドが終了すると、 kubeadm join
が表示されます。 最後にメッセージ。エントリ全体をメモします。これは、ワーカーノードをクラスターに参加させるために使用されます。
次に、次のように入力して、クラスタのディレクトリを作成します。
kubernetes-master:~$ mkdir -p $HOME/.kube
kubernetes-master:~$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
kubernetes-master:~$ sudo chown $(id -u):$(id -g) $HOME/.kube/config
ステップ9:ポッドネットワークをクラスターにデプロイする
ポッドネットワークは、クラスター内の異なるノード間の通信を可能にする方法です。このチュートリアルでは、flannel
を使用します 仮想ネットワーク。
次のように入力します:
sudo kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
プロセスが完了するのを待ちます。
すべてが実行され、通信していることを確認します:
kubectl get pods --all-namespaces
ステップ10:ワーカーノードをクラスターに参加させる
ステップ7に示されているように 、 kubeadm join
を入力できます 各ワーカーノードでコマンドを実行して、クラスターに接続します。
worker01
に切り替えます システムを起動し、手順7でメモしたコマンドを入力します:
kubeadm join --discovery-token abcdef.1234567890abcdef --discovery-token-ca-cert-hash sha256:1234..cdef 1.2.3.4:6443
英数字コードをマスターサーバーのコードに置き換えます。クラスター上のワーカーノードごとに繰り返します。数分待ちます。次に、ノードのステータスを確認できます。
マスターサーバーに切り替えて、次のように入力します。
kubectl get nodes
システムは、クラスターに参加したワーカーノードを表示する必要があります。