Ubuntu Server に Docker なしで Kubernetes をインストールするにはどうすればいいですか?

Ubuntu Server に Docker なしで Kubernetes をインストールするにはどうすればいいですか?

[51CTO.com クイック翻訳] Kubernetes は Docker のサポートを廃止しました。そうです、このコンテナ オーケストレーション ツールの学習に費やしたすべての努力が変わりつつあります。 Kubernetes の使用方法が異なります。

このコンテナ管理ツールのインストールについてお話します。以前と同じ方法、つまり Docker をランタイム環境としてインストールする方法で Kubernetes をデプロイすることは絶対にできません。これを踏まえて、あなたは何をすべきでしょうか?見せてあげましょう。

要約すると、Docker を使用せずに Ubuntu Server 20.04 に Kubernetes をインストールします。

あなたは何が必要ですか?

  • sudo権限を持つユーザー
  • Ubuntu Server 20.04 のインスタンス 1 つ (コントローラーとして機能します。ノードとして機能するには追加のインスタンスが必要になりますが、インストールはすべてのマシンで同じであるため、コントローラーでのみデモンストレーションを行います)

containerd ランタイム環境をインストールするにはどうすればいいですか?

最初に行う必要があるのは、Docker に代わる containerd ランタイム環境をインストールすることです。 Ubuntu Server インスタンスにログインし、次のコマンドで apt が更新されていることを確認します。

  1. sudo apt-getアップデート 

これが完了したら、次のコマンドでアップグレードを実行する必要があります。

  1. sudo apt-getアップグレード -y

カーネルをアップグレードする場合は、サーバーを再起動する必要があります (Live Patch がインストールされ、実行されている場合を除く)。

次のコマンドを使用して containerd をインストールします。

  1. sudo apt-get コンテナをインストール -y

次のコマンドを使用して、containerd を構成し、サービスを開始します。

  1. sudo mkdir -p /etc/containerd
  2. sudo su -
  3. containerd 設定のデフォルト/etc/containerd/config.toml

Kubernetes をインストールするにはどうすればいいですか?

次にKubernetesをインストールします。まず、次のコマンドを使用してリポジトリの GPG キーを追加する必要があります。

  1. curl -s https://packages.cloud.google.com/apt/doc/apt-key .gpg | sudo apt -キー 追加 

次のコマンドで Kubernetes リポジトリを追加します。

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

次のコマンドを使用して、必要なすべての Kubernetes コンポーネントをインストールできます。

  1. sudo apt-get install kubeadm kubelet kubectl -y

containerd によって引き起こされるいくつかの問題を解決するにはどうすればよいですか?

ここが少しややこしいところです。 Kubernetes 開発者は、順調に進むはずだと言うでしょうが、少なくとも今のところはそうではありません。 Docker を使用すると、多くの低レベルのタスクについて心配する必要がなくなります。 containerd に移行した後、手動で構成を変更する必要があります。

最初の変更は、/etc/sysctl.conf に行を追加することです。次のコマンドを使用してファイルを開きます。

  1. sudo ナノ /etc/sysctl.conf

ファイルを開いたら、一番下に次の内容を追加します。

  1. net.bridge.bridge-nf-call-iptables = 1

ファイルを保存して閉じます。

次に、次のコマンドを実行します。

  1. sudo -s
  2. sudo エコー'1' > /proc/sys/net/ipv4/ip_forward
  3. 出口

次のコマンドで設定を再ロードします。

  1. sudo sysctl --system  

また、次のコマンドを使用して、いくつかの必要なモジュールをロードする必要があります。

  1. sudo modprobeオーバーレイ
  2. sudo modprobe br_netfilter

上記を完了すると、最終的に Kubernetes を初期化できるようになります。

インストールを完了するにはどうすればいいですか?

/etc/hosts 内のすべてのノードをマップする必要があります。マッピングが次の形式であることを確認します。

IPアドレス ホスト名

次のステップでは、次のコマンドを使用してコントローラーのホスト名を設定します (/etc/hosts で使用したホスト名と一致していることを確認してください)。

  1. sudo hostnamectl set -hostname ホスト名

ここで、HOSTNAME は使用するホスト名です。

fstab ファイルを開いて編集し、次のコマンドを使用して順列を無効にします。

  1. sudo ナノ /etc/fstab

そのファイルで、/swap.img で始まるエントリをコメント アウトし (つまり、行の先頭に # 文字を追加し)、行が #/swap.img で始まるようにします。

ファイルを保存して閉じます。

次のコマンドで置換を無効にします。

  1. sudo スワップオフ -a

次のコマンドで必要なコンテナをプルします。

  1. sudo kubeadm config イメージをプルする

コントローラーで、次のコマンドを使用して Kubernetes を初期化します。

  1. sudo kubeadm init --pod-network-cidr=IPADDRESS/24  

ここで、IPADDRESS はコントローラーの IP アドレスです。

最終的には、このコマンドをノード上で実行して、クラスターに接続できるようになります。コマンドをコピーします。

クラスターにノードを追加する前に、クラスター上のいくつかの点に注意する必要があります。

クラスター上で、次のコマンドを使用してクラスター ディレクトリを作成します。

  1. mkdir -p $HOME/.kube

次のコマンドを使用して、構成ファイルをこのディレクトリにコピーします。

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

次のコマンドを使用して、構成ファイルに適切な権限を付与します。

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

次のコマンドを使用して、ポッド ネットワーク (ここでは weave-net を使用します) をクラスターにデプロイします。

  1. kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"  

これで、各ノードで join コマンドを実行してクラスターを完了できます。

このプロセスは以前ほど単純ではありません。将来的には、Kubernetes クラスターのデプロイが、Docker が使用されていた過去と同じくらい簡単になることを期待しています。それまでは、このコンテナ オーケストレーション ツールを独自のハードウェアでホストすることを選択した場合は、上記の手順を完了してください。

元のタイトル: Docker なしで Ubuntu Server に Kubernetes をインストールする方法、著者: Jack Wallen

[51CTOによる翻訳。パートナーサイトに転載する場合は、元の翻訳者と出典を51CTO.comとして明記してください。

<<:  Java はさまざまなロックを提供していますが、なぜ分散ロックが必要なのでしょうか?

>>:  2021 年の Kubernetes に関する 5 つの予測

推薦する

Host4Biz: 主にポーランド、香港などの複数のデータセンターで無制限トラフィックの VPS とサーバーを販売しています。

2010年に設立されたポーランドのホスティングプロバイダーであるHost4Biz sp. z ooを...

クラウドネイティブアプリケーションをマスターするには、これらの10のポイントをマスターしてください

[[436589]]簡単に言えば、クラウド ネイティブとは、クラウドで生まれ、クラウドで実行されるす...

マイクロサービス アーキテクチャ - 最も包括的な知識ポイントを備えたメッセージ キュー Kafka ダイアグラム

MQ (メッセージ キュー) は、非同期 RPC として理解できるプロセス間通信の方法の 1 つです...

2019 年グローバル モバイル広告中間データ レポート!

2019年に入り、世界のモバイル広告業界の状況は不安定で、悲観的な見通しを予測する人もいれば、それを...

人気イベントを活用してプロモーションを実現する方法について簡単に説明します

最近、主要メディアで最もよく取り上げられるニュースは劉翔に関するものだ。8月7日、ロンドンオリンピッ...

アリババがパブリックDNSサービスを開始 タオバオショッピング向けドメイン名AliDNS

eName.cnは6月6日、今年初めにDNS障害により多くのTaobaoユーザーが正常に閲覧や注文が...

これら4つのポイントをマスターすれば、キーワードの選択に悩む必要はありません

キーワードの選択は、SEO 担当者をテストする重要な要素です。キーワードの難易度、キーワードのレイア...

ミンスグループ:スマートエンタープライズを構築するためのデジタルエンパワーメント

自動車メーカーは、電動化、インテリジェンス、ネットワーク化、シェアリングという新たな4つのトレンドに...

直通列車キーワードの品質スコアを向上させるための簡単な説明

私は 1980 年代生まれの電子商取引の人間で、電子商取引の学位を取得しています。1 年以上にわたり...

チーター・モバイルは今夜ニューヨーク証券取引所に上場される。最高発行価格は1450万ドル、時価総額は20億ドル。

iposcoopウェブサイトのスクリーンショット5月8日、米国の金融ウェブサイトiposcoopによ...

世界中の 800 人以上の貢献者が協力して OpenStack バージョン 23 をリリース – Wallaby

OpenStack コミュニティは Wallaby の 23 番目のバージョンを正式にリリースしまし...

画像ウェブサイトの簡単な最適化テクニック

2012年に引き継いだウェブサイト最適化のクライアントから、ウェブサイトの画像コンテンツが徐々に大部...

タオバオの利益追求型小規模販売業者、生活空間の圧迫に直面

アリババグループの今後のIPOを前に、タオバオは再び論争の中心に立っている。 B2C 業界の成熟と競...

セキュリティ分野でクラウドコンピューティングができること、できないこと

今日の IT 時代では、セキュリティ問題についてあまり気にしないユーザーもいます。確かに、セキュリテ...