Kubernetes进阶 -- calico网络插件

2024-03-29 03:48

本文主要是介绍Kubernetes进阶 -- calico网络插件,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

calico网络插件

harbor仓库中新建 calico 项目,因为我们已经指定了镜像下载仓库是harbor,默认会从里面的library仓库下载,但是calico.yml文件指定从calico仓库下载,不想改动文件情况下我们在harbor上新建calico仓库。

拉取镜像:

[root@server1 harbor]# docker pull calico/cni:v3.14.1[root@server1 harbor]# docker pull calico/pod2daemon-flexvol:v3.14.1[root@server1 harbor]# docker pull  calico/node:v3.14.1[root@server1 harbor]# docker pull calico/kube-controllers:v3.14.1[root@server1 harbor]# for i in `docker images |grep calico| awk '{print $1":"$2}'`;do docker tag $i reg.caoaoyuan.org/$i;done
//打标签
[root@server1 harbor]# for i in `docker images |grep reg.caoaoyuan.org\/calico| awk '{print $1":"$2}'`;do docker push $i;done
//上传

calico网络插件通flannel插件一样,具有针对同网段和不同网段的模式。

  • name: CALICO_IPV4POOL_IPIP
    value: “Always”

它里面的 ipip 就相当于 ip 的隧道,由于我们目前的主机都再统一网段,我们就可以关闭它。使用边界网关协议就可以了

移除flannel插件的服务和数据
[root@server2 manifest]# kubectl delete -f kube-flannel.yml 	
[root@server2 mainfest]# mv /etc/cni/net.d/10-flannel.conflist /mnt/		# 这一步在三个结点都做[root@server2 manifest]# vim calico.yaml- name: CALICO_IPV4POOL_IPIPvalue: "off"[root@server2 manifest]# kubectl apply -f calico.yaml 
[root@server2 manifest]# kubectl get pod -n kube-system  -o wide
NAME                                       READY   STATUS    RESTARTS   AGE     IP             NODE      NOMINATED NODE   READINESS GATES
calico-kube-controllers-76d4774d89-th4kq   1/1     Running   0          3m42s   10.244.1.96    server3   <none>           <none>
calico-node-8qvg5                          1/1     Running   0          3m42s   172.25.254.3   server3   <none>           <none>
calico-node-8tbjj                          1/1     Running   0          3m42s   172.25.254.2   server2   <none>           <none>
calico-node-dxpbx                          1/1     Running   0          3m42s   172.25.254.4   server4   <none>           <none>
//它是以daemonset的方式运行的[root@server4 ~]# ip a
4: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN group default qlen 1000link/ether 52:af:33:ec:ef:32 brd ff:ff:ff:ff:ff:ff
ipvs0valid_lft forever preferred_lft forever
6: cali6463bc8abcb@if3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1440 qdisc noqueue state UP group default link/ether ee:ee:ee:ee:ee:ee brd ff:ff:ff:ff:ff:ff link-netnsid 0inet6 fe80::ecee:eeff:feee:eeee/64 scope link valid_lft forever preferred_lft forever
flannel 的设备消失了	calico的设备出现[root@server3 ~]# ip route
default via 172.25.254.67 dev ens3 
10.244.22.0/26 via 172.25.254.4 dev ens3 proto bird 
blackhole 10.244.141.192/26 proto bird 
10.244.141.194 dev calibd4bc725030 scope link 
10.244.141.195 dev cali4bc5eb922f6 scope link	//看出访问本机时直接走这个设备,类似与host-gw

我们还可以更改它的 ip 池:

# Enable IPIP- name: CALICO_IPV4POOL_IPIPvalue: "Always"		//打开ip隧道# Enable or Disable VXLAN on the default IP pool.- name: CALICO_IPV4POOL_VXLANvalue: "Never"- name: CALICO_IPV4POOL_CIDRvalue: "10.244.0.0/16"		//设置地址池[root@server4 ~]# ip a
9: tunl0@NONE: <NOARP,UP,LOWER_UP> mtu 1440 qdisc noqueue state UNKNOWN group default qlen 1000link/ipip 0.0.0.0 brd 0.0.0.0inet 10.244.22.0/32 brd 10.244.22.0 scope global tunl0valid_lft forever preferred_lft forever
[root@server3 ~]# ip a
9: tunl0@NONE: <NOARP,UP,LOWER_UP> mtu 1440 qdisc noqueue state UNKNOWN group default qlen 1000link/ipip 0.0.0.0 brd 0.0.0.0inet 10.244.141.192/32 brd 10.244.141.192 scope global tunl0valid_lft forever preferred_lft forever

在每个结点上就会出现一个隧道设备。

[root@rhel7host ~]# curl 172.25.254.3:30899/hostname.html
deployment-example-846496db9d-cqmqz
[root@rhel7host ~]# curl 172.25.254.3:30899/hostname.html
deployment-example-846496db9d-rn6sx
[root@rhel7host ~]# curl 172.25.254.3:30899/hostname.html
deployment-example-846496db9d-cqmqz

访问也是没有问题的。

这篇关于Kubernetes进阶 -- calico网络插件的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/857521

相关文章

Python进阶之Excel基本操作介绍

《Python进阶之Excel基本操作介绍》在现实中,很多工作都需要与数据打交道,Excel作为常用的数据处理工具,一直备受人们的青睐,本文主要为大家介绍了一些Python中Excel的基本操作,希望... 目录概述写入使用 xlwt使用 XlsxWriter读取修改概述在现实中,很多工作都需要与数据打交

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

IDEA常用插件之代码扫描SonarLint详解

《IDEA常用插件之代码扫描SonarLint详解》SonarLint是一款用于代码扫描的插件,可以帮助查找隐藏的bug,下载并安装插件后,右键点击项目并选择“Analyze”、“Analyzewit... 目录SonajavascriptrLint 查找隐藏的bug下载安装插件扫描代码查看结果总结Sona

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

Java进阶13讲__第12讲_1/2

多线程、线程池 1.  线程概念 1.1  什么是线程 1.2  线程的好处 2.   创建线程的三种方式 注意事项 2.1  继承Thread类 2.1.1 认识  2.1.2  编码实现  package cn.hdc.oop10.Thread;import org.slf4j.Logger;import org.slf4j.LoggerFactory

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略

Kubernetes PodSecurityPolicy:PSP能实现的5种主要安全策略 1. 特权模式限制2. 宿主机资源隔离3. 用户和组管理4. 权限提升控制5. SELinux配置 💖The Begin💖点点关注,收藏不迷路💖 Kubernetes的PodSecurityPolicy(PSP)是一个关键的安全特性,它在Pod创建之前实施安全策略,确保P

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

[MySQL表的增删改查-进阶]

🌈个人主页:努力学编程’ ⛅个人推荐: c语言从初阶到进阶 JavaEE详解 数据结构 ⚡学好数据结构,刷题刻不容缓:点击一起刷题 🌙心灵鸡汤:总有人要赢,为什么不能是我呢 💻💻💻数据库约束 🔭🔭🔭约束类型 not null: 指示某列不能存储 NULL 值unique: 保证某列的每行必须有唯一的值default: 规定没有给列赋值时的默认值.primary key: