安装

拉取git仓库

apt-get update && apt-get install -y git
git clone https://github.com/qq253498229/k8s.git
cd k8s
chmod +x -R */*.sh

安装命令行工具

sudo apt-get update && sudo apt-get install -y curl wget git

安装docker

(cd shell && ./install-docker.sh)

安装kubeadm、kubelet、kubectl

(cd shell && ./install-k8s.sh)

启动k8s

拉取google镜像

由于大部分运行需要的镜像都是google镜像,国内无法拉取,我这里使用了阿里云的镜像仓库作为中转,如果自己有梯子可以忽略这一步操作:

(cd shell && ./pull-google-images.sh)

初始化K8S集群

这里10.244.0.0/16是flannel用的,如果使用其他的请根据需要变更:

kubeadm init --kubernetes-version=v1.13.4 --pod-network-cidr=10.244.0.0/16

之后需要根据提示执行命令,需要记住slaver节点连接集群的命令,一般来讲是这样的:

mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
kubeadm join your_master_ip:6443 \
--token your_token \
--discovery-token-ca-cert-hash your_token_sha356_cert

安装pod网络附加组件(这里选择flannel,可以根据需求变更)

sysctl net.bridge.bridge-nf-call-iptables=1

docker pull registry.cn-qingdao.aliyuncs.com/wangdali/flannel:v0.11.0-amd64
docker tag registry.cn-qingdao.aliyuncs.com/wangdali/flannel:v0.11.0-amd64 quay.io/coreos/flannel:v0.11.0-amd64
docker rmi registry.cn-qingdao.aliyuncs.com/wangdali/flannel:v0.11.0-amd64

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml

允许master节点部署pod(单节点测试环境需要执行这一步,集群不需要)

k8s由于安全考虑,默认情况下禁止了master节点部署pod,所以需要手动激活,如果不想在master节点部署pod则不需要执行

kubectl taint nodes --all node-role.kubernetes.io/master-

安装ingress

(cd ingress && ./install.sh)

安装Helm

(cd helm && ./install.sh)

从节点(slaver节点)连接集群

拉取slaver节点所需镜像

(cd shell && ./pull-slaver-images.sh)

slaver节点连接集群(master节点初始化时候的命令)

kubeadm join your_master_ip:6443 \
--token your_token \
--discovery-token-ca-cert-hash your_token_sha356_cert