kubeadm対応ディストリ
dist | 対応 |
---|---|
CentOS 7 | o |
Ubuntu 16.04 | o |
Ubuntu 14.04 | x |
debian 9 | x |
debian 8 | x |
CentOS 6 | x |
CentOS 7 にインストール
- Installing kubeadm | Kubernetesの方法では以下.xml〜エラーが出る。
- 以下修正版
/etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=0
gpgkey=https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
# selinux無効
setenforce 0
# docker-engine
yum install -y docker
systemctl enable docker && systemctl start docker
# kubeadm
yum install -y kubelet kubeadm kubectl
systemctl enable kubelet && systemctl start kubelet
ansibleを使えば以下のようにかける
main.yml
- hosts: servers
user: root
tasks:
- name: Disable SELinux
selinux: state=disabled
- name: Copy repo file.
copy: src="files/kubernetes.repo" dest="/etc/yum.repos.d/kubernetes.repo"
- name: Install docker
yum: name=docker state=present
- name: Install docker
yum: name="{{ item }}" state=present
with_items:
- "docker"
- "kubelet"
- "kubeadm"
- "kubectl"
- name: Set docker service to start on boot.
service: name=docker enabled=yes
- name: Set kubelet service to start on boot.
service: name=kubelet enabled=yes
- name: upgrade all packages
yum: name=* state=latest
Ubuntu 16.04 の場合
ansibleで入れてみよう。
mkdir files
touch ./files/docker.list \
main.yml \
hosts \
run.sh
./files/docker.list
# deb https://apt.dockerproject.org/repo ubuntu-trusty main
deb https://apt.dockerproject.org/repo ubuntu-xenial main
main.yml
- hosts: server01
user: root
tasks:
- name: Add docker gpg key.
shell: "apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D"
- name: Copy docker.list file.
copy: src="files/docker.list" dest="/etc/apt/sources.list.d/docker.list"
- name: Install docker-engine.
apt: name=docker-engine state=present update_cache=yes
- name: Set docker service to start on boot.
service: name=docker enabled=yes
hosts
[server01]
11.22.33.44
run.sh
if [ ! -e /usr/sbin/ansible-playbook ];then
sudo apt install -y ansible
fi
ansible-playbook -i hosts main.yml -v
kubeadmのインストール
apt-get update && apt-get install -y apt-transport-https
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
echo "deb http://apt.kubernetes.io/ kubernetes-trusty main" > /etc/apt/sources.list.d/kubernetes.list
apt-get update
apt-get install -y kubelet kubeadm kubectl