012.Kubernetes二进制部署worker节点Flannel
一 部署flannel
1.1 安装flannel
1.2 分发flannel
1 [root@k8smaster01 ~]# cd /opt/k8s/work
2 [root@k8smaster01 work]# source /opt/k8s/bin/environment.sh
3 [root@k8smaster01 work]# for node_ip in ${NODE_IPS[@]}
4 do
5 echo ">>> ${node_ip}"
6 scp flannel/{flanneld,mk-docker-opts.sh} root@${node_ip}:/opt/k8s/bin/
7 ssh root@${node_ip} "chmod +x /opt/k8s/bin/*"
8 done
1.3 创建flannel证书和密钥
1.4 分发证书和私钥
1 [root@k8smaster01 ~]# cd /opt/k8s/work
2 [root@k8smaster01 work]# source /opt/k8s/bin/environment.sh
3 [root@k8smaster01 work]# for node_ip in ${NODE_IPS[@]}
4 do
5 echo ">>> ${node_ip}"
6 ssh root@${node_ip} "mkdir -p /etc/flanneld/cert"
7 scp flanneld*.pem root@${node_ip}:/etc/flanneld/cert
8 done
1.5 创建flanneld的systemd
1.6 分发flannel systemd
1 [root@k8smaster01 ~]# cd /opt/k8s/work
2 [root@k8smaster01 work]# source /opt/k8s/bin/environment.sh
3 [root@k8smaster01 work]# for node_ip in ${NODE_IPS[@]}
4 do
5 echo ">>> ${node_ip}"
6 scp flanneld.service root@${node_ip}:/etc/systemd/system/
7 done
二 启动并验证
2.1 启动flannel
1 [root@k8smaster01 ~]# source /opt/k8s/bin/environment.sh
2 [root@k8smaster01 ~]# for node_ip in ${NODE_IPS[@]}
3 do
4 echo ">>> ${node_ip}"
5 ssh root@${node_ip} "systemctl daemon-reload && systemctl enable flanneld && systemctl restart flanneld"
6 done
2.2 检查flannel启动
1 [root@k8smaster01 ~]# source /opt/k8s/bin/environment.sh
2 [root@k8smaster01 ~]# for node_ip in ${NODE_IPS[@]}
3 do
4 echo ">>> ${node_ip}"
5 ssh root@${node_ip} "systemctl status flanneld|grep Active"
6 done

2.3 检查pod网段信息
1 [root@k8smaster01 ~]# source /opt/k8s/bin/environment.sh
2 [root@k8smaster01 ~]# etcdctl \
3 --endpoints=${ETCD_ENDPOINTS} \
4 --ca-file=/etc/kubernetes/cert/ca.pem \
5 --cert-file=/etc/flanneld/cert/flanneld.pem \
6 --key-file=/etc/flanneld/cert/flanneld-key.pem \
7 get ${FLANNEL_ETCD_PREFIX}/config #查看集群 Pod 网段(/16)

1 [root@k8smaster01 ~]# source /opt/k8s/bin/environment.sh
2 [root@k8smaster01 ~]# etcdctl \
3 --endpoints=${ETCD_ENDPOINTS} \
4 --ca-file=/etc/kubernetes/cert/ca.pem \
5 --cert-file=/etc/flanneld/cert/flanneld.pem \
6 --key-file=/etc/flanneld/cert/flanneld-key.pem \
7 ls ${FLANNEL_ETCD_PREFIX}/subnets #查看已分配的 Pod 子网段列表(/24)
8 [root@k8smaster01 ~]# etcdctl \
9 --endpoints=${ETCD_ENDPOINTS} \
10 --ca-file=/etc/kubernetes/cert/ca.pem \
11 --cert-file=/etc/flanneld/cert/flanneld.pem \
12 --key-file=/etc/flanneld/cert/flanneld-key.pem \
13 get ${FLANNEL_ETCD_PREFIX}/subnets/172.30.8.0-21 #查看某一 Pod 网段对应的节点 IP 和 flannel 接口地址

2.4 检查flannel网络信息
1 [root@k8snode02 ~]# ip addr show

2.5 验证各节点flannel
1 [root@k8smaster01 ~]# source /opt/k8s/bin/environment.sh
2 [root@k8smaster01 ~]# for all_ip in ${ALL_IPS[@]}
3 do
4 echo ">>> ${all_ip}"
5 ssh ${all_ip} "/usr/sbin/ip addr show flannel.1|grep -w inet"
6 done

1 [root@k8smaster01 ~]# source /opt/k8s/bin/environment.sh
2 [root@k8smaster01 ~]# for all_ip in ${ALL_IPS[@]}
3 do
4 echo ">>> ${all_ip}"
5 ssh ${all_ip} "ping -c 1 172.30.8.0"
6 ssh ${all_ip} "ping -c 1 172.30.32.0"
7 ssh ${all_ip} "ping -c 1 172.30.128.0"
8 ssh ${all_ip} "ping -c 1 172.30.208.0"
9 ssh ${all_ip} "ping -c 1 172.30.216.0"
10 done

012.Kubernetes二进制部署worker节点Flannel的更多相关文章
- 013.Kubernetes二进制部署worker节点Nginx实现高可用
一 Nginx代理实现kube-apiserver高可用 1.1 Nginx实现高可用 基于 nginx 代理的 kube-apiserver 高可用方案. 控制节点的 kube-controller ...
- 015.Kubernetes二进制部署所有节点kubelet
一 部署 kubelet kubelet 运行在每个 worker 节点上,接收 kube-apiserver 发送的请求,管理 Pod 容器,执行交互式命令,如 exec.run.logs 等. k ...
- 016.Kubernetes二进制部署所有节点kube-proxy
一 部署 kube-proxy kube-proxy 运行在所有节点上,它监听 apiserver 中 service 和 endpoint 的变化情况,创建路由规则以提供服务 IP 和负载均衡功能. ...
- Kubernetes 二进制部署(一)单节点部署(Master 与 Node 同一机器)
0. 前言 最近受“新冠肺炎”疫情影响,在家等着,入职暂时延后,在家里办公和学习 尝试通过源码编译二进制的方式在单一节点(Master 与 Node 部署在同一个机器上)上部署一个 k8s 环境,整理 ...
- K8s二进制部署单节点 etcd集群,flannel网络配置 ——锥刺股
K8s 二进制部署单节点 master --锥刺股 k8s集群搭建: etcd集群 flannel网络插件 搭建master组件 搭建node组件 1.部署etcd集群 2.Flannel 网络 ...
- K8s二进制部署单节点 master组件 node组件 ——头悬梁
K8s二进制部署单节点 master组件 node组件 --头悬梁 1.master组件部署 2.node 组件部署 k8s集群搭建: etcd集群 flannel网络插件 搭建maste ...
- Kubernetes 二进制部署(二)集群部署(多 Master 节点通过 Nginx 负载均衡)
0. 前言 紧接上一篇,本篇文章我们尝试学习多节点部署 kubernetes 集群 并通过 haproxy+keepalived 实现 Master 节点的负载均衡 1. 实验环境 实验环境主要为 5 ...
- 007.Kubernetes二进制部署Flannel
一 部署flannel 1.1 安装flannel kubernetes 要求集群内各节点(包括 master 节点)能通过 Pod 网段互联互通.flannel 使用 vxlan 技术为各节点创建一 ...
- 003.Kubernetes二进制部署准备
一 前置准备 1.1 前置条件 相应的充足资源的Linux服务器: 设置相应的主机名,参考命令: hostnamectl set-hostname k8smaster Mac及UUID唯一: 若未关闭 ...
随机推荐
- Mybatis入门简版(一)
一.Mybatis介绍 MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动.创建connection.创 ...
- iOS RGBA转YV12
引言 因为项目中要做画面共享,所以需要学一点图像相关的知识,首当其冲就是RGB转YUV了,因为图像处理压缩这一块是由专业对口的同事做的,所以呢,我这就是写一下自己的理解,如有不对的地方,还望指正,谢谢 ...
- Python开发【第一篇】:目录
本系列博文包含Python基础.前端开发.Web框架.缓存以及队列等,希望可以给正在学习Python编程的朋友们提供一点帮助! .Python开发[第一篇]:目录 .Python开发[第二篇]:初始P ...
- PHP代码审计基础-中级篇
初级篇更多是对那些已有的版本漏洞分析,存在安全问题的函数进行讲解,中级篇更多是针对用户输入对漏洞进行利用 中级篇更多是考虑由用户输入导致的安全问题. 预备工具首先要有php本地环境可以调试代码 总结就 ...
- scrollWidth、clientWidth 和 offsetWidth
scrollWidth:对象的实际内容宽度,不包括边线宽度,会随对象中内容超过可视区而变大. clientWidth:对象内容的可视区的宽度,不包括边线宽度,会随对象显示大小的变化而变化. offse ...
- 解决错误 系统找不到指定的批标签 make_command_arguments |hadoop windows出错
问题:cmd命令行传参数出错 此文章 适用于 cmd命令行传参数出错 在windows 7下倒腾 Hadoop 时出现 The system cannot find the batch label s ...
- navicat cannot load oci dll||oracle 改字符集为GBK后 navicat 连不上||Ora-28547 ora net错误
此段适用于 解决 navicat cannot load oci dll 环境 Navicat Premium 和 oracle 原因,navicat 32 和64 都只支持 32位的oci.dll ...
- 搭建ASP.NET Core WebApi项目
步骤 从“文件”菜单中选择“新建”>“项目” . 选择“ASP.NET Core Web 应用程序”模板,再单击“下一步” . 将项目命名为 NetCoreWebApi,然后单击“创建” . 选 ...
- 基于TORCS和Torch7实现端到端连续动作自动驾驶深度强化学习模型(A3C)的训练
基于TORCS(C++)和Torch7(lua)实现自动驾驶端到端深度强化学习模型(A3C-连续动作)的训练 先占坑,后续内容有空慢慢往里填 训练系统框架 先占坑,后续内容有空慢慢往里填 训练系统核心 ...
- Mac tensorflow mnist实例
Mac tensorflow mnist实例 前期主要需要安装好tensorflow的环境,Mac 如果只涉及到CPU的版本,推荐使用pip3,傻瓜式安装,一行命令!代码使用python3. 在此附上 ...