上官网 官网是一定要看的 因为有太多的坑 就是因为没仔细看官网的介绍,不想看英文 就直接 翻译了 看
https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/
https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/
建议直接用kubeadm 安装 因为二进制安装 实在 太麻烦 何必呢?
先开启端口 要不然 后面得安装会出问题。
本地创建个 sh脚本 复制下面的 直接运行脚本即可 安装成功第一步
apt-get update && apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
apt-get update
apt-get install -y kubelet kubeadm kubectl
apt-mark hold kubelet kubeadm kubectl
systemctl daemon-reload
systemctl restart kubelet
在创建个脚本 复制下面的 执行安装docker
# Install Docker CE
## Set up the repository:
### Install packages to allow apt to use a repository over HTTPS
apt-get update && apt-get install apt-transport-https ca-certificates curl software-properties-common
### Add Docker’s official GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add -
### Add Docker apt repository.
add-apt-repository
"deb [arch=amd64] https://download.docker.com/linux/ubuntu
$(lsb_release -cs)
stable"
## Install Docker CE.
apt-get update && apt-get install docker-ce=18.06.2~ce~3-0~ubuntu
# Setup daemon.
cat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
EOF
mkdir -p /etc/systemd/system/docker.service.d
# Restart docker.
systemctl daemon-reload
systemctl restart docker
这些在官网也可以找到的
然后切记执行 swapoff -a (暂时关闭 永久关闭 修改一个设置 google即可)
然后执行
kubeadm init --pod-network-cidr=10.244.0.0/16(如果安装flannel --pod是必须得参数)
这里会初始化成功 会生成一个kubectl join 示例 复制下来 在24小时内 把你集群的node节点 执行这个命令就可以加到你得集群当中
然后更改配置
export KUBECONFIG=/etc/kubernetes/admin.conf
这里有个小问题,就是export属于临时操作,你退出这个账号从新登陆 在执行kubectl get nodes 时发现报错 8080端口未开启 其实是配置环境变量的问题 这里我们要执行这个 swapoff -a 还有永久的配置环境变量
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
这个配置文件 直接拷贝到 node节点上
在生成得节点 直接 kubeadm join 即可 node 节点 和master一样 就是不用init 初始化 直接复制 master的配置文件即可
然后安装 flannel 网络管理
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/2140ac876ef134e0ed5af15c65e414cf26827915/Documentation/kube-flannel.yml
然后可以看到kubectl get nodes状态变为ready