LB服务和BGP路由器测试安装 k8s lb 控制器《k8s lb服务metallb(bgp模式)介绍》 配置 Linux 软路由器网络架构图: 配置路由 bgp 功能BGP 是一种外部网关协议 (EGP),用于在不同自治系统 (AS) 中的路由器之间交换路由信息。BGP 路由信息包括到每个目标 ...
k8s lb服务metallb(bgp模式)介绍
metallb 介绍
MetalLB是一个为基础 Kubernetes集群提供负载均衡实现的工具,使用标准路由协议。
Kubernetes在基础集群中不提供网络负载均衡器(类型为LoadBalancer的服务)的实现。Kubernetes提供的网络负载平衡器实现都是调用各种IaaS平台(如GCP、AWS、Azure等)的接口代码。如果您没有运行在受支持的IaaS平台上(如GCP、AWS、Azure等),则创建时LoadBalancers将无限期处于“挂起”状态。
在基础集群中,操作员只有两个接口来将用户流量引入他们的集群,“NodePort”和“externalIPs”服务。
这两个选项在生产使用中都有显著的缺点,这使得基础集群成为 Kubernetes 生态系统中的二等公民。
MetalLB旨在通过提供与标准网络设备集成的网络负载均衡器实现来解决这种不平衡,以便基础群集上的external services尽可能“正常工作”。
gobgp 本地调试
概要目的
本文主要提供本地开发调试 BGP 程序的一个技巧,同时学习 BGP 协议,以及 go 包 gobgp https://github.com/osrg/gobgp
学习 BGP 协议必要性:K8s 容器网络目前我们使用 Cilium/Calico,都是使用 BGP 来宣告路由,使得 pod/service cidr 在 K8s 之外可达。所以,想要了解容器网络,有必要了解 BGP。
k8s增加新ip生成证书
制作helm chats 包
helm3安装方法
使用脚本安装
Helm现在有个安装脚本可以自动拉取最新的Helm版本并在 本地安装。
您可以获取这个脚本并在本地执行。它良好的文档会让您在执行之前知道脚本都做了什么。
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh
如果想直接执行安装,运行curl https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | bash。
ovn的acl用法
ovn实现ACL
第一种方法通过k8s标准资源networkpolicy实现ACL(推荐使用)
什么是网络策略?
首先NetworkPolicy是k8s的一种resource,可以通过以下三种维度对整个namespace或单一POD进行隔离:pod(允许某些pod访问)、namespace(允许某些namespace访问)、ip段(CIDR,但是pod所运行node节点始终可以访问该pod)当定义基于pod和namespace的NetworkPolicy时,需要根据标签来选择对应的pod或者namespace。
另外当需要使用NetworkPolicy资源时,k8s集群采用的网络插件必须支持,比如ovn-kubernetes等等