https://blog.csdn.net/qq_39629343/article/details/80168084
离线安装docker 19.03.5版本 Linux下离线安装Docker 相关资源下载地址: tgz rpm
# 跳过可能会报错提示containerd.io >= 1.2.2-3问题 # yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm yum localinstall containerd.io-1.2.6-3.3.fc30.x86_64.rpm # 安装 docker-ce-cli # yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/docker-ce-cli-19.03.9-3.fc30.x86_64.rpm yum localinstall docker-ce-cli-19.03.9-3.fc30.x86_64.rpm # 安装离线版 docker-ce rpm包 # yum install https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/docker-ce-19.03.9-3.fc30.x86_64.rpm yum localinstall docker-ce-19.03.9-3.el7.x86_64.rpm如果 containerd.io、docker-ce-cli、docker-ce在同一目录的话,可执行下方命令安装:
yum localinstall -y *.rpm防止在学习阶段由于防火墙造成的各种网络问题,生产环境跳过这一步
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config setenforce 0 systemctl disable firewalld systemctl stop firewall可以理解为虚拟内存,k8s使用时尽量不使用交换区,防止出现预料之外的问题
swapoff -a vi /etc/fstab #swap一行注释 #/dev/mapper/centos-swap swap swap defaults 0 0防止kubeadm报路由警告
cat <<EOF > /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 EOF sysctl --system使用本地解析主机名
cat <<"EOF">/etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.102.139 master 192.168.102.140 node1 192.168.102.141 node2 EOF # 修改主机名 hostnamectl set-hostname <your_hostname>https://www.cnblogs.com/ExMan/p/11613812.html
vi /etc/docker/daemon.json # 加入以下内容: { "exec-opts":["native.cgroupdriver=systemd"] } # 重启docker systemctl daemon-reload systemctl restart docker systemctl status dockerCentos7.7使用kubeadm快速部署K8s集群(适合新手) 使用kubeadm快速部署一套K8S集群 k8s安装及部署步骤 离线安装k8s
初始化(仅master节点):
kubeadm init \ --apiserver-advertise-address=192.168.102.137 \ --image-repository registry.aliyuncs.com/google_containers \ --kubernetes-version v1.19.2 \ --service-cidr=10.1.0.0/16 \ --pod-network-cidr=10.244.0.0/16按提示执行(仅master节点):
mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config查看nodes及pods:
kubectl get nodes kubectl get pod -n kube-systemdocker.io、gcr.io、quay.io镜像加速
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.ymlkube-flannel.yml 文件及对应镜像建议提前pull到本地
k8s删除node k8s 集群 节点状态显示notready 如何向Kubernetes中的节点添加角色?
kubeadm token create --print-join-commandk8s系列之安装k8s仪表盘(Dashboard) 注意事项:
可以提前 docker pull eipwork/kuboard:latest修改 imagePullPolicy 值为 IfNotPresent 或 Neverkubectl是用于与k8s集群交互的一个命令行工具,操作k8s基本离不开这个工具,所以该工具所支持的命令比较多。好在kubectl支持设置命令补全,使用kubectl completion -h可以查看各个平台下的设置示例。这里以Linux平台为例,演示一下如何设置这个命令补全,完成以下操作后就可以使用tap键补全命令了。
[root@master ~]# yum install bash-completion -y [root@master ~]# source /usr/share/bash-completion/bash_completion [root@master ~]# source <(kubectl completion bash) [root@master ~]# kubectl completion bash > ~/.kube/completion.bash.inc [root@master ~]# printf " # Kubectl shell completion source '$HOME/.kube/completion.bash.inc' " >> $HOME/.bash_profile [root@master ~]# source $HOME/.bash_profilehttps://cread.jd.com/read/startRead.action?bookId=30484828&readType=1 https://github.com/kubeguide/K8sDefinitiveGuide-V4-Sourcecode