k3s安装metallb负载均衡

news/2025/11/5 20:58:19/文章来源:https://www.cnblogs.com/amsilence/p/19194595

先记录配置过程,后续补充详细介绍

1.安装metallb负载均衡器

1.1.配置内核转发参数

sudo tee /etc/sysctl.d/90-k8s-lb.conf <<EOF
# 打开路由转发(MetalLB 必需)
net.ipv4.ip_forward = 1
# 让 speaker 能及时发 gratuitous-ARP
net.ipv4.conf.all.arp_notify = 1
EOFsudo sysctl -p /etc/sysctl.d/90-k8s-lb.conf

1.2.安装metallb

  • kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.13.7/config/manifests/metallb-native.yaml
root@linux:~# kubectl apply -f https://raw.githubusercontent.com/metallb/metallb/v0.13.7/config/manifests/metallb-native.yaml
root@linux:~# kubectl get pods -n metallb-system
NAME                          READY   STATUS    RESTARTS   AGE
controller-5cbffbc46b-ckvgm   1/1     Running   0          16m
speaker-qb9cc                 1/1     Running   0          16m
root@linux:~# 

2.配置loadbance ip地址池

  • metallb-pool地址池配置
# metallb-pool.yaml
apiVersion: metallb.io/v1beta1
kind: IPAddressPool
metadata:name: defaultnamespace: metallb-system
spec:addresses:- 10.22.40.10-10.22.40.200
---
apiVersion: metallb.io/v1beta1
kind: L2Advertisement
metadata:name: l2advnamespace: metallb-system
  • kubectl apply -f metallb-config.yaml
➜  Deployment kubectl apply -f metallb-config.yaml
ipaddresspool.metallb.io/default created
l2advertisement.metallb.io/l2adv created
➜  Deployment

3.测试loadbance分配

3.1. 创建nginx deployment

➜  Deployment cat nginx-dp.yaml
apiVersion: apps/v1
kind: Deployment
metadata:name: nginx-deploymentlabels:app: nginx
spec:replicas: 2selector:matchLabels:app: nginxtemplate:metadata:labels:app: nginxspec:containers:- name: nginximage: nginx:latestports:- containerPort: 80
➜  Deployment

3.2. 创建loadbance

  • loadbance配置
➜  Deployment cat nginx-slb.yaml
apiVersion: v1
kind: Service
metadata:name: nginx-slblabels:app: nginx
spec:type: LoadBalancerports:- port: 80targetPort: 80protocol: TCPname: httpselector:app: nginx
➜  Deployment
  • 应用loadbance配置
➜  Deployment kubectl apply -f nginx-slb.yaml
service/nginx-slb created
➜  Deployment
➜  Deployment kubectl get svc
NAME            TYPE           CLUSTER-IP     EXTERNAL-IP   PORT(S)        AGE
kubernetes      ClusterIP      10.43.0.1      <none>        443/TCP        9d
nginx-service   NodePort       10.43.67.181   <none>        80:30080/TCP   8d
nginx-slb       LoadBalancer   10.43.99.209   10.22.40.11   80:31920/TCP   4s
➜  Deployment

image

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/957137.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PG故障处理:PG_AUTO_FAILOVER自动切换失败的故障处理

我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢! 由于博客中有大量代码,通过页面浏览效果更佳。1、故障背景…

读书笔记:分区不一定能让查询更快——关键要看使用场景

我们的文章会在微信公众号IT民工的龙马人生和博客网站( www.htz.pw )同步更新 ,欢迎关注收藏,也欢迎大家转载,但是请在文章开始地方标注文章出处,谢谢! 由于博客中有大量代码,通过页面浏览效果更佳。本文为个人学…

quick save

s and l群星联结,调不动了; // code by 樓影沫瞬_Hz17 #include <iostream> #include <map> #include <vector> #include <algorithm>struct Chara; struct Talent; struct Attack;int turn…

cg0EoeZwd/bdvtAmh0q4PjjA4Pc=

这是郑州西亚斯学院智能体创新大赛的示例文件,如果你看到这个信息,说明这个文件的内容已经正常发送。

openwrt 使用 移动WIFI USB RNDIS 上网

最初为了简单,是使用 无线中继方式上网,但是有时不稳定,而移动WIFI 也支持 RNDIS 方式。 打开编译配置以下功能: 编译完成后,升级后插入USB 线测试[ 110.492259] usb 1-1: new high-speed USB device number 2 u…

【Agent】 ACE(Agentic Context Engineering)源码阅读笔记 ---(2)--- 训练

[Agent] ACE(Agentic Context Engineering)源码阅读笔记---(2)训练 目录[Agent] ACE(Agentic Context Engineering)源码阅读笔记---(2)训练0x00 概要0x01 AdapterBase1.1 定义1.2 核心流程1.3 主要功能1.4 Off…

Codeforces Global Round 28 VP 记录

Codeforces Global Round 28 VP 记录 Dashboard - Codeforces Global Round 28 - Codeforces 之前做过 G,赛时从 A 做到了 G,赛后做了 H,看题解会了 I1,I2 还不会。 CF2048A Kevin and Combination Lock 判断是否是…

20251104NOIP模拟

NOIP模拟总结 这场并没有打好 A 预计:100,实际:100思路历程:我先考虑去把所有点按要求的道路种类分开,判断是否联通,是否是一条链,其中每个点要求的个数是否满足条件,可以发现这个做法会超时,因为在不同颜色的…

软件工程团队项目第一次作业

软件工程团队项目第一次作业这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/202501SoftwareEngineering这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/202501SoftwareEngineering/homework/13573…

开源一个月Star破7000+!RustFS凭什么火出圈?

开源一个月Star破7000+!RustFS凭什么火出圈?2025年,当存储领域似乎已被MinIO、Ceph等老牌玩家瓜分完毕时,一个基于Rust语言的新星RustFS却在开源一个月内狂揽​7000+ Star​,三个月突破​10.3k,成为GitHub上星标…

第五届日月盾杯线下赛 web wp

记一次校赛ctf的web题解。。其实我打的时候一道都没做出来(目移)签个到吧!签到题也没能做出来的我属实是fw啊。。orz 进入题目后会跳转到一个公网上,有重定向,于是使用curl -v来查看原始响应,即可获得flag是的就…

异常课后作业2

Java项目中常用异常处理场景与实践总结 在Java项目开发中,异常处理是保障程序健壮性、可维护性的关键环节。合理的异常处理不仅能避免程序崩溃,还能为问题排查、用户体验优化提供有力支撑。本文将围绕Java项目中常见…

日总结 22

nvm(Node Version Manager)是一款轻量实用的 Node.js 版本管理工具,支持在同一设备上安装、卸载多个不同版本的 Node.js,可快速切换版本以适配不同项目的依赖需求,无需手动配置安装路径,能有效解决多项目开发中 …

Nlog配置文件nlog.config (.net core 6)

<?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance&quo…

重组抗体:从 “天然提取” 到 “基因定制”,抗体技术如何改写生物医药格局?

提到 “抗体”,你可能会想到疫苗接种后身体产生的 “免疫卫士”—— 但在科研、诊断和治疗中,我们需要的往往是 “精准可控” 的抗体。传统抗体(如多克隆抗体、杂交瘤单克隆抗体)要么特异性差、要么生产不稳定,而…

2025年主流数据分类分级工具全面对比与选型指南

2025年主流数据分类分级工具全面对比与选型指南在数据安全法规日益严格的2025年,企业选择合适的数据分类分级工具已成为合规运营和风险管控的核心环节。本文从实际选型需求出发,通过六大关键维度深度对比市场主流产品…

Http协议解析

一、概述 超文本传输协议(Hyper Text Transfer Protocol,简称HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议。HTTP是万维网的数据通信的基础。 1.1 发展历史起源:HTTP的发展是由蒂姆伯纳斯-李于1989…

大模型应用开发技术路线(下):智能代理与多模态应用开发指南

本文系统阐述智能代理与多模态应用的开发技术,从架构设计到实战落地,涵盖智能代理的四大设计模式与四步开发法,多模态应用的模型选择与模态融合策略,并总结五大常见陷阱及解决方案,助力开发者构建自主可控、自然高…

NOIP 2024 T4 树上查询 小结

这个也是写给自己看的。 首先可以看每一种答案取到的范围。 然后就是两个区间求交的长度会大于等于 k。 这个比较好求。 稍微有点难的部分就是他的答案区间被我的目标区间包含。 这个我一开始在考场上写的是 cdq,然后…