主节点(个人很喜欢腾讯云的主机自动命名,内网IP之类的都已经在hostname里了,不容易出错)
root@VM-0-15-debian:~# hostnamectl
Static hostname: VM-0-15-debian
Virtualization: bochs
Operating System: Debian GNU/Linux 9 (stretch)
Kernel: Linux 4.9.0-3-amd64
Architecture: x86-64
子节点
root@VM-0-17-debian:~# hostnamectl
Static hostname: VM-0-17-debian
Virtualization: bochs
Operating System: Debian GNU/Linux 9 (stretch)
Kernel: Linux 4.9.0-3-amd64
Architecture: x86-64
采用17.03.2,使用rancher提供的安装脚本
curl https://releases.rancher.com/install-docker/17.03.sh | sh
其他版本可以参考官方安装指南
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://*****.m.daocloud.ioservice docker restart
apt-get update && apt-get install -y apt-transport-https
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
echo "deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main" >/etc/apt/sources.list.d/kubernetes.list
apt-get update
apt-get install -y kubelet kubeadm kubectl
apt-mark hold kubelet kubeadm kubectl
列出kubeadm init所需镜像 (墙的原因经常抽风)
root@VM-0-15-debian:~# kubeadm config images list
k8s.gcr.io/kube-apiserver-amd64:v1.11.2
k8s.gcr.io/kube-controller-manager-amd64:v1.11.2
k8s.gcr.io/kube-scheduler-amd64:v1.11.2
k8s.gcr.io/kube-proxy-amd64:v1.11.2
k8s.gcr.io/pause:3.1
k8s.gcr.io/etcd-amd64:3.2.18
k8s.gcr.io/coredns:1.1.3
复制安装脚本gcr-mirror-install.sh,并更改对应的最新版本,然后安装
https://gitee.com/bit20041436/codes/6i238zr4g5ashenjwt7l046
KUBE_VERSION 对应kube开头的四个镜像
KUBE_PAUSE_VERSION对应pause镜像
ETCD_VERSION对应etcd-amd64
DNS_VERSION对应coredns
bash gcr-mirror-install.sh
采用Calico网络并指定k8s版本 防止访问墙外地址拉取镜像
kubeadm init --pod-network-cidr=192.168.0.0/16 --kubernetes-version=v1.11.2
注意复制初始化成功后shell输出中的内容
You can now join any number of machines by running the following on each node
as root:
kubeadm join --token <token> <master-ip>:<master-port> --discovery-token-ca-cert-hash sha256:<hash>
非root用户
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
root用户
export KUBECONFIG=/etc/kubernetes/admin.conf
本地ping一下quay.io,如果不通就用脚本拉取dockerhub镜像
https://gitee.com/bit20041436/codes/er5pmndu3jl70hzxqsy8w41
bash quay-mirror-install.sh
kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml
kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/kubernetes-datastore/calico-networking/1.7/calico.yaml
同主节点
https://gitee.com/bit20041436/codes/er5pmndu3jl70hzxqsy8w41
bash quay-mirror-install.sh
root账号下
kubeadm join --token <token> <master-ip>:<master-port> --discovery-token-ca-cert-hash
#查看集群节点
kubectl get nodes
#列出服务
kubectl get services
#列出 pods
kubectl get pods --all-namespaces
kubectl get pods -o wide
kubectl get pods --include-uninitialized
kubectl get pods --sort-by='.status.containerStatuses[0].restartCount'
#列出 deployment
kubectl get deployment my-dep
#应用manifest
kubectl create -f ./my-manifest.yaml
kubectl delete -f ./my-manifest.yaml
#获取manifests文档
kubectl explain pods,svc
#获取nodes pods信息
kubectl describe nodes my-node
kubectl describe pods my-pod
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。