当前位置: 首页 > news >正文

眉山招聘网站建设怎么创建网站平台

眉山招聘网站建设,怎么创建网站平台,电子信箱注册网站,公司网站可以不备案吗文章目录CNI 网络流量分析(七)Calico 介绍与原理(二)CNIIPAM指定 IP指定非 IPAM IPCNI 网络流量分析(七)Calico 介绍与原理(二) CNI 支持多种 datapath,默认是 linuxDa…

文章目录

  • CNI 网络流量分析(七)Calico 介绍与原理(二)
    • CNI
    • IPAM
      • 指定 IP
      • 指定非 IPAM IP

CNI 网络流量分析(七)Calico 介绍与原理(二)

CNI

  • 支持多种 datapath,默认是 linuxDataplane,支持 CRI 调用时 选择 grpc 实现的 dataplane,还支持 ebpf,vpp
  • 通过 ipam 获取到 ip 后,DoNetworking
func (d *linuxDataplane) DoNetworking(ctx context.Context,calicoClient calicoclient.Interface,args *skel.CmdArgs,result *cniv1.Result,desiredVethName string,routes []*net.IPNet,endpoint *api.WorkloadEndpoint,annotations map[string]string,
) 
  • Ns 里创建 veth 设备
  • Host 端网卡 calixxx 配置 mac ee:ee:ee:ee:ee:ee
  • 如果有 ipv6 地址,关闭 DAD
  • Linkup 网卡
  • 通过 annotation 查 是否指定 mac,指定则配置指定的 mac
  • 配置 ns 里路由 default via 169.254.1.1 dev eth0,169.254.1.1 dev eth0 scope link
  • 如果有 ipv6,设置 /proc/sys/net/ipv6/conf/all/disable_ipv6 = 0, /proc/sys/net/ipv6/conf/default/disable_ipv6 = 0,/proc/sys/net/ipv6/conf/lo/disable_ipv6 = 0,创建 ip route6
  • 为 ns 里网卡配置 ip
  • 开启 ipforwarding
  • 开启 /proc/sys/net/ipv4/conf/calixxx/route_localnet = 1,Enable routing to localhost
  • /proc/sys/net/ipv4/neigh/calixxx/proxy_delay = 0,arp 延迟,calico 不需要
  • /proc/sys/net/ipv4/conf/calixxx/proxy_arp = 1,开启 arp 代理
  • /proc/sys/net/ipv4/conf/calixxx/forwarding。
  • 在 host 配置到该 ip 的路由指向 calixxx。
  • 通过 annotation 检查是否有浮动 ip 配置,创建 ipnat
  • 创建 WorkloadEndpoints
  • done

Pod 创建完后,pod 内部默认路由指向 169.254.1.1,且 veth host 端配置了 arp_proxy,配置的 mac 是 ee:ee:ee:ee:ee:ee,所以 pod 内部下一跳都是 169.254.1.1

# ip netns exec cni-138c93d8-c975-8b38-3154-1dccf5ed9d83 ip r
default via 169.254.1.1 dev eth0 
169.254.1.1 dev eth0 scope link # ip netns exec cni-138c93d8-c975-8b38-3154-1dccf5ed9d83 ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: tunl0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000link/ipip 0.0.0.0 brd 0.0.0.0
4: eth0@if11: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1480 qdisc noqueue state UP group default link/ether 32:21:45:c4:c5:d5 brd ff:ff:ff:ff:ff:ff link-netnsid 0inet 10.244.153.204/32 scope global eth0valid_lft forever preferred_lft foreverinet6 fe80::3021:45ff:fec4:c5d5/64 scope link valid_lft forever preferred_lft forever# ip netns exec cni-138c93d8-c975-8b38-3154-1dccf5ed9d83 ip neighbor
169.254.1.1 dev eth0 lladdr ee:ee:ee:ee:ee:ee REACHABLE 
172.18.22.111 dev eth0 lladdr ee:ee:ee:ee:ee:ee STALE

IPAM

  • 默认使用 “calico-ipam” IPAM
  • 先获取 namespace 是否通过 annotation 配置 ippool,pod 是否配置 ippool
  • 获取 pod annotation 是否有 cni.projectcalico.org/ipAddrsNoIpam,cni.projectcalico.org/ipAddrs
    ipAddrsNoIpam := annot["cni.projectcalico.org/ipAddrsNoIpam"]ipAddrs := annot["cni.projectcalico.org/ipAddrs"]// Switch based on which annotations are passed or not passed.switch {case ipAddrs == "" && ipAddrsNoIpam == "":case ipAddrs != "" && ipAddrsNoIpam != "":case ipAddrsNoIpam != "":case ipAddrs != "":
  1. 全不配置时,直接代理调取 calico-ipam 二进制
  2. 全配置时,失败
  3. 只配置 ipAddrsNoIpam 时,必须是 calico-ipam 类型,会配置成所指定的 IP
  4. 只配置 ipAddrs 时,必须是 calico-ipam 类型,先 calico.IPAM().ReleaseIPs ip,再使用指定的 IP 去代理调用 calico-ipam
  • 通过调用 calicoClient.IPAM().AutoAssign(ctx, assignArgs) 获取 ip
  • 获取 预留 IP 和 cidr,预留 IP 和 cidr 可以通过 资源 IPReservation 进行配置
  • 通过 node 相关的 cidr 去获取一个 ip。

指定 IP

apiVersion: v1
kind: Pod
metadata:name: pod5namespace: defaultannotations:cni.projectcalico.org/ipAddrs: "[\"10.244.153.250\"]"
spec:containers:- name: pod5image: nginxports:- name: nginx-portcontainerPort: 80protocol: TCP
default       pod5    1/1     Running   0              115s    10.244.153.250

指定非 IPAM IP

需要先开启 feature

# kubectl edit configmap calico-config -n kube-system
// 添加"feature_control": {"ip_addrs_no_ipam": true,"floating_ips": true}
apiVersion: v1
kind: Pod
metadata:name: pod5namespace: defaultannotations:cni.projectcalico.org/ipAddrsNoIpam: "[\"80.90.100.200\"]"
spec:containers:- name: pod5image: nginxports:- name: nginx-portcontainerPort: 80protocol: TCP
pod5   1/1     Running   0             54s     80.90.100.200    node112

当然只有本节点能通,其他节点需要自己解决路由问题

Floating_ips
apiVersion: v1
kind: Pod
metadata:name: pod5namespace: defaultannotations:cni.projectcalico.org/floatingIPs: "[\"172.18.22.113\"]"
spec:containers:- name: pod5image: nginxports:- name: nginx-portcontainerPort: 80protocol: TCP
- apiVersion: projectcalico.org/v3kind: WorkloadEndpointmetadata:creationTimestamp: "2023-02-14T02:03:01Z"labels:projectcalico.org/namespace: defaultprojectcalico.org/orchestrator: k8sprojectcalico.org/serviceaccount: defaultname: node112-k8s-pod5-eth0namespace: defaultresourceVersion: "4509106"uid: beb345d3-6e9f-4144-918d-4f96fa8aada5spec:containerID: dc36d90f05c1890f78b8bb8ddc72426c2730ce60b58bf926b946d0131f620c78endpoint: eth0interfaceName: cali8e9fad9b07cipNATs:- externalIP: 172.18.22.113internalIP: 10.244.146.203ipNetworks:- 10.244.146.203/32node: node112orchestrator: k8spod: pod5ports:- hostIP: ""hostPort: 0name: nginx-portport: 80protocol: TCPprofiles:- kns.default- ksa.default.defaultserviceAccountName: default
kind: WorkloadEndpointList
metadata:resourceVersion: "4509937"
http://www.tj-hxxt.cn/news/22351.html

相关文章:

  • 网站建设 事项舆情网站入口
  • 自己做网站百度能收录码电商网页
  • 厦门做网站优化公司俄罗斯搜索引擎浏览器官网入口
  • 临沂网站建设技术托管深圳搜索引擎优化收费
  • 做冷库用什么网站发帖子好如何提高网站排名
  • 营销型网站建设哪家便宜seo整站优化费用
  • 网站制作设计收费网络营销师报名入口
  • 网站几个关键词自助建站网站哪个好
  • 广州建网站站公司有哪些网络营销公司
  • 广州自助网站搭建建站公司全媒体运营师培训
  • 网站建设策划方案如何写百度站长平台链接提交
  • 中国万网怎么自己做网站今日新闻头条新闻
  • wordpress邮件验证评论成都seo招聘信息
  • 帝国建站教程软文写作公司
  • 在线做维恩图的生物信息学网站最新百度快速排名技术
  • 出国做博士后网站河北seo技术
  • 做网站得基础百度代理服务器
  • 乐陵外贸seo青岛网络优化哪家专业
  • 代做网站排名最新中高风险地区名单
  • 湖北网站建设专家百度下载软件
  • 公司网站建设制作全包百度推广的五大优势
  • 怎么查网站空间app广告推广
  • 赚钱的网站开发项目山东做网站公司
  • 企业做网站设置哪些模块百度发作品入口在哪里
  • 网站建设公司市场爱站网关键词挖掘查询工具
  • 临平房产做网站的公司快速网站
  • 北京建站公司推荐首推万维科技百度指数的使用方法
  • 做网站的工作有发展空间没有网络推广员招聘
  • 满城网站建设淘宝怎么提高关键词搜索排名
  • 服务器托管的平台河北seo基础教程