如何进行Tungsten Fabric与K8s集成及创建隔离命名空间
发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,本篇文章为大家展示了如何进行Tungsten Fabric与K8s集成及创建隔离命名空间,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。K8s与Tungsten
千家信息网最后更新 2025年02月03日如何进行Tungsten Fabric与K8s集成及创建隔离命名空间K8s与Tungsten Fabric集成后有四种配置模式,分别为:默认模式、自定义隔离模式、命名空间隔离模式、嵌套模式。 默认模式:Tungsten Fabric创建一个由所有命名空间共享的虚拟网络,并从中分配service和pod的IP地址,在Kubernetes集群中产生的所有命名空间中的所有pod都能够彼此通信。 自定义隔离模式:管理员和应用程序开发人员可以添加注释("opencontrail.org/network: ")来指定虚拟网络。在这个虚拟网络中,一个命令空间中的一个或所有pod将在这个虚拟网络中被启动。如果该注释是在pod上配置的,那么pod将在该网络中启动;如果注释是在命名空间中配置的,那么命名空间中的所有pod都将在该网络中启动。 命名空间隔离模式:集群管理员可以在创建新的命令空间时,添加注释("opencontrail.org/isolation : true")以启用命令空间隔离。因此,该命名空间中的服务不能从其他命名空间访问,除非明确定义了安全组或网络策略以允许访问,或者启动注释("opencontrail.org/isolation.service : false")单独允许该命名空间的service可以被其他命令空间的pod访问。 嵌套模式:Tungsten Fabric支持与基于OpenStack虚拟机部署的Kubernetes集群集成。Tungsten Fabric提供了一个可折叠的控制和数据平面,一个TF控制平面和一个网络堆栈管理和服务同时在OpenStack和Kubernetes两个集群中。有了统一的控制和数据平面,可以无缝地交互和配置这些集群,不需要单独为每个集群部署TF。
在此将会创建一个隔离的命名空间,名为isolated-ns,具体配置文件如下:
执行kubectl的创建命令之后,对应的命名空间随即被创建。
而在TF上也会有对应的policy和虚拟网络被创建出来,分别为: TF policy: k8s-isolated-ns-pod-service-np 这条TF policy的作用,是允许附加了该条策略的虚拟网络能够访问命令空间isolated-ns中的service clusterip。 TF network: k8s-isolated-ns-pod-network , k8s-isolated-ns-service-network
这两个网络分别使用了命名空间default里面的IPAM,所以在这个命令空间isolated-ns中默认创建出来的pod和service所分配的IP所属的IP池,与命名空间default中的一样,即pod(10.32.0.0/12)和service(10.96.0.0/12)。
接下来在隔离的命令空间isolated-ns中创建pod和service,验证isolated-ns与其他命令空间的连通性。 首先在default和isolated-ns两个命令空间中分别创建两个pod和一个service。
所以目前的资源为: 2个命名空间:default,isolated-ns 2个service:nginx-default (10.105.147.31),nginx-isolated (10.97.162.157) 4个pod: nginx-default-test01 (10.47.255.251) nginx-default-test02 (10.47.255.250) nginx-isolated-test01 (10.47.255.249) nginx-isolated-test02 (10.47.255.247) 网络连通性验证流程: 1. 从命名空间default中的pod nginx-default-test01去ping其他三个pod,结果是pod nginx-default-test01只能连通同一命名空间中pod,而无法连通隔离命名空间中的pod。
2. 从命名空间isolated-ns中的pod nginx-isolated-test01去ping其他三个pod,结果是pod nginx-isolated-test01只能连通同一命名空间中pod,而无法连通其他命名空间中的pod。
3. 从命名空间default中的pod nginx-default-test01去curl分别在两个命令空间中的service,结果是pod nginx-default-test01只能请求default和kube-system这些非隔离命名空间中的service,而无法请求隔离命名空间中的service。
4. 从命名空间isolated-ns中的pod nginx-isolated-test01去curl分别在两个命令空间中的service,结果是pod nginx-isolated-test01只能请求default和kube-system这些非隔离命名空间中的service,而无法请求隔离命名空间中的service,即便该service在自己所在的命名空间。
所有验证结果综合起来就是,非隔离命名空间和隔离命名空间之后建的pod默认无法互访--即便在相同的IPAM中,并且非隔离命名的service可以被任何pod访问,而隔离命名空间的service默认无法被访问。 现在需要添加TF policy让pod之间,pod和service之间能够连通。 对于pod之间的访问,需要添加如下TF policy,该条policy是连接两个网络,k8s-default-pod-network与k8s-isolated-ns-pod-network。
创建完成,分别将这条Policy附加到隔离命名空间和非隔离命令空间的pod网络上,k8s-default-pod-network与k8s-isolated-ns-pod-network。
此时再进行pod之间的网络连接验证,结果是两个命名空间的pod之间已经能够通信。
对于pod与service之间的访问,需要添加如下TF policy,该条policy是允许指定网络能够访问isolated-ns的service。
创建完成后,再将这条Policy附加到隔离命名空间和非隔离命令空间的pod网络上,k8s-default-pod-network与k8s-isolated-ns-pod-network,以及隔离命名空间的service网络k8s-isolated-ns-service-network上。
此时再进行pod与service之间的网络连接验证,结果是两个命名空间的pod都可以访问到隔离命名空间中的service。
在隔离命名空间和非隔离命名空间的流量全通之后,还可以通过安全策略去做进一步的流量控制。
本篇文章为大家展示了如何进行Tungsten Fabric与K8s集成及创建隔离命名空间,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
创建隔离命名空间
验证与非隔离命令空间的网络连通性
上述内容就是如何进行Tungsten Fabric与K8s集成及创建隔离命名空间,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注行业资讯频道。
空间
隔离
网络
命令
两个
模式
之间
结果
集群
验证
注释
配置
控制
平面
管理
附加
安全
三个
内容
就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
镇江丹橙网络技术公司简介
腾讯一个服务器有多大
深英飞腾软件开发应用有限公司
欢迎参与网络安全感满意度的调查
access 数据库 死机
服务器有多大功率
阿里云windows服务器环境
大学网络安全报告总结报告
数码宝贝服务器连接中断怎么办
工业网络技术需要数学好吗
穿越时空小说软件开发
服务器端口和服务的关系
警方提示网络安全
国际服最新版本怎么切换服务器
桌面软件开发现在流行什么框架
浙江定制化服务器
数据库sql加锁
崇明区智能网络技术采购信息
深圳长乐网络技术有限公司
dispcce软件开发
mvc 数据库连接
软件开发项目类型
数据库测试流程
警方提示网络安全
物流管理系统数据库设计语句约束
ecshop中数据库名是啥
合同管理数据库设计
软件开发对cpu频率要求
信息网络安全知识竞赛答案
汽车软件开发用哪个