0
点赞
收藏
分享

微信扫一扫

使用kubeadm安装kubernetes(k8s) - k8s系列(一)

环境配置 - VMware

  • km - 2cpu - 4g内存 - ip - 192.168.23.39
  • node1 - 2cpu - 2G内存 - ip - 192.168.23.40
  • node1 - 2cpu - 2G内存 - ip - 192.168.23.41

安装kubernetes

  • 非特别说明都是3台机器同时操作
  • 所有操作基于官方文档说明

1.关闭防火墙

systemctl stop firewalld && systemctl disable firewalld

2.禁用交换分区

swapoff -a

vim /etc/fstab - 注释最后一行

3.增加host

echo "192.168.23.39 km" >> /etc/hosts

echo "192.168.23.40 kn1" >> /etc/hosts

echo "192.168.23.41 kn2" >> /etc/hosts

4.安装kubectl

curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"

sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl

5.设置网桥参数 - 允许 iptables 检查桥接流量

cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF

cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

sudo sysctl --system

6.安装docker - 注:centos默认yum源版本过低,无法使用

yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine

yum install -y yum-utils

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

yum install -y docker-ce docker-ce-cli containerd.io

mkdir /etc/docker

cat <<EOF | sudo tee /etc/docker/daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF

systemctl enable docker && systemctl daemon-reload && systemctl start docker

7.安装 kubeadm、kubelet 和 kubectl - 使用阿里云源

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
      http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

sudo setenforce 0

sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

sudo yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes

sudo systemctl enable --now kubelet

8.初始化kubeadm - 只在master上用 - 使用阿里云源

kubeadm config images pull --image-repository registry.aliyuncs.com/google_containers

kubeadm init --image-repository=registry.aliyuncs.com/google_containers --pod-network-cidr 10.244.0.0/16
  • 等待出现类似如下提示
    kubeadm join 192.168.23.39:6443 --token uls8na.09040heqbwbk7e7u \
    --discovery-token-ca-cert-hash sha256:e0a2baba820581f76434dfd5b68011ce2ed2e644bb50dd73cd84bdeca00bce52

9.安装 Pod 网络附加组件 - 建议kube-flannel.yml - 只在master上用

wget https://raw.githubusercontent.com/flannel-io/flannel/master/Documentation/kube-flannel.yml

kubectl apply -f kube-flannel.yml

10.node加入结束 - 只在node节点使用上用 - 8中最后提示

kubeadm join 192.168.23.39:6443 --token uls8na.09040heqbwbk7e7u --discovery-token-ca-cert-hash sha256:e0a2baba820581f76434dfd5b68011ce2ed2e644bb50dd73cd84bdeca00bce52

简单命令

kubectl get nodes
kubectl get pods --all-namespaces
kubectl logs podName -n NameSpaceName
举报

相关推荐

0 条评论