はじめに
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 -
以上、ご参考になれば幸いです。