(O+P)ut

アウトプット



(O+P)ut

エンジニアのアウトプット

【Kubernetes】kubelet&kubeadmをapt-getでインストールする

スポンサーリンク

はじめに

DockerDesktopのようにオールインワンのKubernetesを利用する場合はkubectlさえ利用できれば問題ないですが、マスターノードを自前で用意する場合にはkubeadm等のコマンドが必要です。

今回はDebian系サーバに対してkubeletとkubeadmをインストールする手順のポイントであるhttps://apt.kubernetes.io/をapt-getの対象リポジトリに追加する手順を紹介します。

環境情報
  • GoogleCloudPlatform
  • Debian GNU/Linux 9.11

事前確認

デフォルトの状態では以下のようにエラーとなるので

# sudo apt-get install kubelet
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package kubelet
# sudo apt-get install kubeadm
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package kubeadm

Kubernetesのリポジトリを追加する必要があります。

リポジトリを追加する

aptでは以下のディレクトリ配下にリポジトリ情報があり

 ls -l /etc/apt/sources.list.d
total 20
-rw-r--r-- 1 root root .. backports.list
-rw-r--r-- 1 root root .. backports.list.save
-rw-r--r-- 1 root root .. google-cloud.list
-rw-r--r-- 1 root root .. google-cloud.list.save

例えばファイルの中身を確認すると以下のような情報が格納されています。

# cat /etc/apt/sources.list.d/google-cloud.list
deb http://packages.cloud.google.com/apt cloud-sdk-stretch main
deb http://packages.cloud.google.com/apt google-compute-engine-stretch-stable main
deb http://packages.cloud.google.com/apt google-cloud-packages-archive-keyring-stretch main

今回はKubernetesのモジュールを入れるために以下内容のファイルを作成します。

# echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" > /etc/apt/sources.list.d/kubernetes.list

インストールを行う

最新化を行えば

# apt-get update

冒頭で失敗した同コマンドが通ります。

# sudo apt-get install kubelet
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  conntrack ebtables kubernetes-cni socat
The following NEW packages will be installed:
  conntrack ebtables kubelet kubernetes-cni socat
0 upgraded, 5 newly installed, 0 to remove and 22 not upgraded.
Need to get 26.4 MB of archives.
After this operation, 165 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://deb.debian.org/debian stretch/main amd64 conntrack amd64 1:1.4.4+snapshot20161117-5 [32.9 kB]
...
Get:5 https://packages.cloud.google.com/apt kubernetes-xenial/main amd64 kubelet amd64 1.18.3-00 [19.4 MB]
...
Processing triggers for systemd (232-25+deb9u12) ...

確かにインストールできています。

# which kubelet
/usr/bin/kubelet

kubeadmも同様にインストールできます。

終わりに

Kubernetesを一からインストールする際に利用するコマンド群のインストール手順を紹介しました。
コマンド実行環境がGoogleCloud上であったためapt-keyを気にせずインストールできましたが環境によっては以下コマンドにてapt-keyの追加が必要の場合があるのでご注意ください。

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

以上、ご参考になれば幸いです。