LoginSignup
3
4

More than 5 years have passed since last update.

Raspberry Piでkubernetesクラスタを組んでみる②

Posted at

RaspberryPi(共通)の初期設定

ログインする

初期パスワードはpi/raspberryでログイン出来ます。

rootパスワードを設定する

通常のLinuxと同じです。

$ sudo passwd root
Enter new UNIX password: 新しいパスワード
Retype new UNIX password: もう1回

vimを最低限使えるようにする

キーボードがUSキーボードの設定になっており、
vimでこの先のネットワークの設定を行うのにカーソル移動(矢印キー)を打鍵するとABCDが入力されたりと少々難儀なのでカーソル移動くらいはできるようにしておきます。
ネットワークに繋がるようになれば別のPCからssh接続すればいいのでそんなにはいじりません。

$ sudo vi /root/.vimrc
# で、下の一行を記述してください
set nocompatible

ホスト名を変更する

ホスト名はクラスタを構成する各ノードごとで全てユニークなものにしてやらないといけません。
私の場合は以下のようにしました。(/etc/hostnameを編集)

node hostname
master raspberrypi0
worker1 raspberrypi1
worker2 raspberrypi2

ネットワークに繋がるようにする

sudo vi /etc/network/interfaces

以下の記述を追加しましょう
ちなみにこれはmasterの設定です。

auto wlan0
allow-hotplug wlan0
iface wlan0 inet dhcp
wpa-ssid SSID
wpa-psk PASSWORD

workerは以下のように設定します。

auto eth0
allow-hotplug eth0
iface eth0 inet dhcp

rebootすればネットワークに繋がると思います。

rootでsshログインできるようにする

sudo vi /etc/ssh/sshd_config

# PermitRootLogin の項目のコメントアウトを解除して設定値をyesに

Docker のインストール

ここからはrootでログインして行いました。

# 必要なパッケージのインストール
$ apt-get install apt-transport-https ca-certificates curl software-properties-common

# リポジトリの追加
$ curl -fsSL https://download.docker.com/linux/$(. /etc/os-release; echo "$ID")/gpg | sudo apt-key add -
$ echo "deb [arch=armhf] https://download.docker.com/linux/$(. /etc/os-release; echo "$ID") \
     $(lsb_release -cs) stable" | \
    sudo tee /etc/apt/sources.list.d/docker.list

# インストール
$ apt-get update
$ apt-get install docker-ce

kubeadm, kubelet, kubectlのインストール

# swapを無効に
$ dphys-swapfile swapoff
$ dphys-swapfile uninstall
$ update-rc.d dphys-swapfile remove

# リポジトリ追加
$ curl -fsSL https://packages.cloud.google.com/apt/doc/apt-key.gpg|sudo apt-key add -
$ echo "deb http://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kube.list

# インストール
$ apt-get update
$ apt-get install kubelet kubeadm kubectl
3
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
4