总结:核心概念搭建思维导图集群单机单机版关闭前附加配置报错准备多节点更改主机名请手动重启系统安装切换源镜像加速器添加私有仓库在此指定版本
k8s核心概念思维导图
集群搭建
b>
单节点
https://my.oschina.net/u/731542/blog/2966427(单机版) 注:1 init前配置主机并禁用swap 关闭swapoff -a && sysctl -pkubeadm init - -kubernetes - version=1.12.3 --pod-network-cidr=10.244.0.0 /162 错误报告:[ERROR KubeletVersion]:Kubelet 版本高于控制平面版本。 yum [ k4]y 删除 kubeletyum -y kubelet-1.12.3 安装 kubeadm-1.12.3
多节点
https://www.kubernetes。组织。 cn/4387. html
init_mini_k8s.sh
#!/bin/bash##准备#如果要更改主机名,请手动重启#hostnamectl set-hostname k8s - master#禁用swap#swapoff -a && sysctl -p#重新启动系统#reboot##安装dockerium -y installpolicycoreutils-python*wget http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.68-1.el7.noarch.rpmrpm -ivh 容器- selinux-2.68-1.el7.noarch.rpmyum install -y libltdl.so*yum install -y pigz*wget https://mirrors.aliyun.com/docker-ce/linux /centos/7/x86_64/stable/Packages/docker-ce-18.03.1.ce-1.el7.centos.x86_64.rpmrpm -ivh docker-ce-18.03。 1.ce-1.el7.centos.x86_64.rpm## k8s yum 切换源 touch /etc/yum.repos.d/kubernetes.repocat >> /etc/yum.repos.d/kubernetes.repo < < EOF[kuberneten]name=Kubernetesbaseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64enabled=1gpgcheck=0repo_gpgcheck=0gpgkey=http://mirrors.aliyun.com / kubernetes/yum/doc/yum-key.gpg http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpgEOFyum makecachesysctl net.bridge.bridge-nf-call-iptables=1# 添加镜像加速私有仓库 mkdir -p /etc/dockertee /etc/docker /daemon. json <<-"EOF"{ "registry-mirrors": ["https://9cpn8tt6.mirror.aliyuncs.com"], "insecure-registries":["10.9.2.62 :5000" ] }EOF# 在此指定版本。 如果没有,就会报错。 yum -y install kubelet-1.12.3 kubeadm-1.12.3 kubectl kubernetes-cni-0.6.0kubectl versionsystemctl 启用 docker && systemctl start dockersystemctl 启用 kubelet && systemctl kubeletkubeadm 配置镜像 启动 docker pull docker .io/mirrorgooglecontainers/kube-apiserver-amd64:v1.12.3docker 标记 docker.io/mirrorgooglecontainers/kube-apiserver-amd64:v1 .12.3 k8s。 gcr.io/kube-apiserver:v1.12.3docker 拉 docker.io/mirrorgooglecontainers/kube-controller-manager-amd64:v1.12。3docker标签docker.io/mirrorgooglecontainers/kube-controller-manager-amd64:v1.12.3 k8s.gcr.io/kube-controller-manager:v1.12.3docker拉docker.io/ Mirrorgooglecontainers/kube-scheduler-amd64:v1.12.3docker 标签 docker.io/mirrorgooglecontainers/kube-scheduler-amd64:v1.12.3 k8s.gcr.io/kube-scheduler:v1。 12.3docker 拉 docker.io/mirrorgooglecontainers/kube-proxy-amd64:v1.12.3docker 标记 docker.io/mirrorgooglecontainers/kube-proxy-amd64:v1.12.3 k8s.gcr.io/kube -代理:v1.12.3docker拉docker.io/mirrorgooglecontainers/pause-amd64:3.1docker标签docker.io/mirrorgooglecontainers/pause-amd64:3.1 k8s.gcr.io/pause:3.1docker拉docker .io/mirrorgooglecontainers/etcd-amd64:3.2.24docker 标记 docker.io/mirrorgooglecontainers/etcd-amd64:3.2.24 k8s.gcr。io/etcd:3.2.24docker pull docker.io/coredns/coredns:1.2.2docker tag docker.io/coredns/coredns:1.2.2 k8s.gcr.io/coredns:1.2.2docker imagekubeadm 配置镜像 listkubeadm init [k4 ] -kubernetes-version=1.12.3 --pod-network-cidr=10.244.0.0/16if [!-d "$HOME/.kube" ]; mkdir -p $HOME/.kubefiif [ !-f "$HOME/.kube/config" ]; 然后 rm -f $HOME/.kube/configfisudo cp -i /etc /kubernetes/ admin .conf $HOME/.kube/configsudo chown $(id -u):$(id -g ) $HOME/.kube/config# all-in-onekubectl 污点节点 - [ k4]所有节点-role.kubernetes.io/master-# 安装CNI网络插件 Docker pull quay.io/coreos/flannel:v0.10.0-amd64 mkdir [k4 ]p /etc/cni/ net .d/tee /etc/cni/net.d/10-flannel.conf <<[ k4]"EOF"{"name":"cbr0","type":"flannel","delegate": {“isDefaultGateway”:true}}EOFmkdir /usr/share/oci-umount/oci-umount.d -pmkdir /run/flannel/kubectl 应用 -f https://raw.githubusercontent.com/coreos/flannel/ v0.9.1/Documentation/kube-flannel.ymlkubectl get pods -n kube-systemkubectl get Nodes# 安装 Weavescopekubectl apply -f "https://cloud.weave.works/k8s/scope. yaml?k8s-version=$(kubectl 版本 | Base64 | tr -d "")&k8s-service-type=NodePort"kubectl -n Weave 获取 Service Weave-scope [k4 ] ]app
开始使用
创建并显示集群
kubectl get Nodes -o Wide # 显示集群节点信息 kubectl cluster[k4 ]info # 显示集群信息 显示集群信息
部署应用
kubectl run my-ngx -[k4 ]image=nginx:latest [k4 ]-port=80 # 部署应用 old: kubectl run -i --ttyload-generator --image=busybox /bin/ shnew: kubectl run [k4 ] ]-g生成器 = run-pod/v1 -i --ttyload-生成器 --image=busybox /bin/sh
发布应用
kubectl公共部署 my-ngx --type="NodePort" --port=80 # 发布应用 kubectl get services/my[k4 ] ngx # 显示my-ngx服务 kubectl description services/my-ngx # 显示详细信息 curl 10.9.2.42:19999 #curl NodeIP:NodePort
部署与收缩
kubectlscaledeployment/my-ngx --replicas=2 # 展开 kubectl get pods -o Widekubectlscaledeployment/my-ngx -[ k4]replicas =1 #缩小规模
回滚更新
kubectl set imagedeployment/my-ngx my-ngx=nginx: 1.9 # 滚动更新 kubectl rollout undodeployment/ my-ngx # 回滚
删除
kubectl get pods # 显示 podskubectl getdeployment # 显示部署服务 显示 kubectl 删除 pod my -ngx[ k4]59497d7745-qzwqz # 删除 podskubectl returnedeployment my-ngx # 删除部署
显示错误消息
journalctl [ k4]f -u kubelet
参考
<>https://www.kubernetes.org.cn/4387.html # 安装集群
评论前必须登录!
注册