首页 > 其他分享 >kube-ovn分配vni

kube-ovn分配vni

时间:2024-04-06 11:34:27浏览次数:21  
标签:vni ls ic kube ovn 分配

ovn-org/ovn branch-23.06

kube-ovn里面ovn-central的ovn-northd会给logical switch和logical router分配vni,集群内全局唯一,即每个lr和ls都有自己的vni。

northd/northd.c
ovn_datapath_allocate_key函数

lib/ovn-util.h

lib/ovn-util.c

针对ls和lr,每次分配vni时,范围是从1到2^24-2^16,通过hashmap判断,跳过已分配vni。

ic/ovn-ic.c
allocate_ts_dp_key函数

针对ovn-ic跨集群互通的ls,范围是从2^16+1到2^24-1,通过hashmap判断,跳过已分配vni。

标签:vni,ls,ic,kube,ovn,分配
From: https://www.cnblogs.com/WJQ2017/p/18117267

相关文章

  • Kubernetes的基础概念
    目录一、概述二、为什么要用Kubernetes2.1从技术层面分析2.1.1问题解答2.1.2Docker等“裸容器”的不足2.1.2.1宕机无法自动恢复2.1.2.2健康检查不到位2.1.2.3部署、回滚、扩容问题2.1.2.4运维难2.1.3总结2.2从开发人员层面分析2.2.1分析日志2.2.1.1......
  • Kubernetes(k8s):如何进行 Kubernetes 集群健康检查?
    Kubernetes(k8s):如何进行Kubernetes集群健康检查?)一、节点健康检查1、使用kubectl查看节点状态2、查看节点详细信息3、检查节点资源使用情况2、Pod健康检查2.1、使用kubectl查看Pod状态2.2、查看特定Pod的详细信息,包括事件和条件3、服务健康检查3.1、使用ku......
  • Kubernetes(k8s):部署、使用 metrics-server
    Kubernetes(k8s):部署、使用metrics-server一、metrics-server简介二、部署metrics-server2.1、下载MetricsServer部署文件2.2、修改metrics-server.yaml文件2.3、部署MetricsServer2.4、检查MetricsServer三、使用MetricsServer3.1、查看节点使用情况3.2、......
  • 初始化kubeadm init失败,再次初始化时显示6443、10259、10257、10250、2379、2380被占
    第一次使用kubeadminit初始化时,因kubelet.service和和kubelet未启动等部分原因导致初始化失败,当再次初始化时显示6443、10259、10257、10250、2379、2380这几个端口被占用,一个个使用sudolsof-i:port查看太麻烦,直接使用kubeadmreset将当前节点恢复为未安装Kubernetes的状......
  • Kubernetes kafka系列 | Strimzi 部署kafka-bridge
    Strimzi+kafka集群部署直通车一、kafkabridge介绍KafkaBridge是ApacheKafka生态系统中的一个工具或组件,用于实现Kafka与其他系统或协议之间的通信或集成。Kafka本身是一个分布式事件流平台,广泛用于构建实时数据流水线和流式应用程序。然而,并非所有系统或应用程......
  • 云原生周刊:Kubernetes 1.30 的一切新功能 | 2024.4.1
    开源项目推荐Kubernetesschedulersimulator该项目是一个用于模拟Kubernetes调度器行为的开源项目,可用于测试和评估调度器的性能和行为。它提供了一个模拟集群和调度器的框架,并提供分析和可视化工具以帮助用户理解实验结果。OneChart该项目旨在简化应用程序的部署过程,通过......
  • 第 1 章 Kubernetes 介绍
    应用部署方式的演变历史传统部署方式概念直接将应用程序部署在物理机上优点简单,不需要其它技术的参与缺点不能为应用程序定义资源使用边界,很难合理地计算分配资源,程序之间容易产生影响虚拟化部署方式概念在一台物理机上运行多个虚拟机,每个虚拟机都是独立的......
  • kubectl添加命令自动补全
    kubectl命令自动补全功能可以极大提高使用Kubernetes命令行工具的效率。以下是如何为kubectl添加自动补全功能的方法你可以通过以下步骤添加kubectl自动补全:1.确保你已经安装了bash-completion包。在大多数Linux发行版中,你可以使用包管理器来安装它。例如,在Ubuntu......
  • Kubernetes之Pod
    什么是Pod通俗的来讲就是以pause为基础容器,其它容器共享pause容器的网络名称空间、主机名以及进程间通信,组成的一个逻辑的容器集合。•KubernetesPod是Kubernetes的基础单元,一个Pod是一组功能相关的部署到一起的容器的集合。•在Kubernetes中,每个Pod会有自己独立的内部动......
  • Kubernetes资源管理
    为了避免集群中的Pod负载加大时节点资源不足,导致某些用户进程被“杀掉”,Kubernetes需要有一套完备的资源配额限制及对应的Pod服务等级机制,解决思路如下:(1)可以全面限制一个应用及其中的Pod所能占用的资源配额。具体包括三种方式:<1>定义每个Pod上资源配额相关的参......