当前位置: 首页 > news >正文

使用MetalLB生成LoadBalancer供traefik使用

1、安装MetalLB

helm repo add metallb https://metallb.github.io/metallb
helm repo update
helm pull metallb/metallb
tar -zxf metallb-0.15.2.tgz
cd MetalLB/
helm install metallb -n kube-system -f values.yaml .# 查看是否安装
[root@master-11 traefik]# kubectl get pods -n kube-system
NAME                                 READY   STATUS    RESTARTS         AGE
cilium-4pgzq                         1/1     Running   9 (7h51m ago)    11d
cilium-envoy-g7drx                   1/1     Running   12 (7h51m ago)   15d
cilium-envoy-kwxvm                   1/1     Running   13 (7h51m ago)   15d
cilium-envoy-n84wb                   1/1     Running   12 (7h51m ago)   15d
cilium-operator-7d5f888c58-nqqlv     1/1     Running   0                7h45m
cilium-rzg4b                         1/1     Running   10 (7h51m ago)   13d
cilium-sgqb7                         1/1     Running   10 (7h51m ago)   13d
coredns-66f779496c-fg77q             1/1     Running   0                109m
coredns-66f779496c-h7z6n             1/1     Running   0                110m
docker-registry-7469f85567-c4fhp     1/1     Running   11 (7h51m ago)   14d
etcd-master-11                       1/1     Running   14 (7h51m ago)   18d
kube-apiserver-master-11             1/1     Running   14 (7h51m ago)   18d
kube-controller-manager-master-11    1/1     Running   15 (7h51m ago)   18d
kube-proxy-244zx                     1/1     Running   13 (7h51m ago)   18d
kube-proxy-cxzdv                     1/1     Running   12 (7h51m ago)   15d
kube-proxy-kkbcn                     1/1     Running   12 (7h51m ago)   18d
kube-scheduler-master-11             1/1     Running   14 (7h51m ago)   18d
metallb-controller-568f4dc5c-6ztck   1/1     Running   0                30m
metallb-speaker-64zqq                4/4     Running   0                30m
metallb-speaker-hkkr5                4/4     Running   0                30m
metallb-speaker-mgmvb                4/4     Running   0                30m
traefik-84949c7589-srw98             1/1     Running   0                119m

2、使用MetalLB生成LoadBalancer

# metallb.yaml
apiVersion: metallb.io/v1beta1
kind: IPAddressPool
metadata:name: traefik-poolnamespace: kube-system
spec:addresses:- 10.0.0.200-10.0.0.200   # 只给出单个固定IP
---
apiVersion: metallb.io/v1beta1
kind: L2Advertisement
metadata:name: traefik-advertisenamespace: kube-system
spec:ipAddressPools:- traefik-pool

3、traefik使用LoadBalancer

修改values.yaml文件
....service:enabled: true...type: LoadBalancer...spec:loadBalancerIP: 10.0.0.200# 更新helm
helm upgrade traefik -n kube-system -f values.yaml .# 修改解析
[root@master-11 traefik]# cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 ubt-server# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
10.0.0.11 master-11
10.0.0.12 node-12
10.0.0.13 node-13
10.0.0.200 registry.xwk.local
[root@master-11 traefik]# kubectl get cm -n kube-system coredns -oyaml
apiVersion: v1
data:Corefile: |.:53 {errorshealth {lameduck 5s}readyhosts {10.0.0.200 registry.xwk.local.fallthrough}kubernetes cluster.local in-addr.arpa ip6.arpa {pods insecurefallthrough in-addr.arpa ip6.arpattl 30}prometheus :9153forward . /etc/resolv.conf {max_concurrent 1000}cache 30loopreloadloadbalance}
kind: ConfigMap
metadata:creationTimestamp: "2025-08-12T15:34:59Z"name: corednsnamespace: kube-systemresourceVersion: "421157"uid: bdc9ecf0-1a0d-4c93-ac99-dbf6b2d276cf

4、尝试登录registry镜像仓库

# ingressroute.yaml
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:name: registry-ingressnamespace: kube-systemannotations:traefik.ingress.kubernetes.io/proxy-body-size: "100G" # 允许大镜像推送traefik.ingress.kubernetes.io/backend-protocol: "HTTP" # Registry 服务是 HTTP
spec:entryPoints:- web- websecuretls:secretName: registry-tls-secret # 步骤中创建的 TLS Secretroutes:- kind: Rulematch: Host(`registry.xwk.local`)services:- name: docker-registryport: 5000[root@master-11 registry]# nerdctl login registry.xwk.local -uadmin
Enter Password:
WARNING: Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-storeLogin Succeeded此时可以登录成功了,不需要使用nerdctl login registry.xwk.local+nodeport的端口了
http://www.sczhlp.com/news/55821/

相关文章:

  • 使用traefik去代理registry仓库时提示没有证书或404,以及怎么根据crd来写apiVersion:后面的这一段
  • aspnet东莞网站建设网站建设多久可以建成
  • 怎么做网站的代理商国家骨干高职院校建设网站
  • 网站的pdf预览是怎么做的在库言库建筑网站
  • 锦州建设局网站网站建设只是
  • 用什么技术做网站wordpress安装到虚拟主机
  • pageadmin 制作网站怎么绑定域名网站美工培训课程
  • 自己网站建设asp.net网站维护
  • 门户网站建设招标书WordPress实现微信一键登录
  • 怎么建设幸运28网站阿里云 wordpress主机名
  • 精品网站建设公司网站建设与维护流程图
  • 变量:具体的东西(比如一个具体的盒子) 类型:一种规格/图纸(比如盒子的设计图)
  • 部门网站建设情况汇报做网站租空间
  • 株洲网站建设的公司wordpress新建文章中添加目录
  • 大庆网站建设公司中小企业网络组网案例
  • 台州网站制作维护wordpress自定义api
  • 网站上线除了备案还需要什么wordpress 插件上传
  • 网站制作的流程包括哪些wordpress 接收询盘
  • 实体A和B是一对一的联系 实体B和C是多对一的联系 问实体A和C的联系是什么类型
  • 2014年9月微软安全公告预通知:关键漏洞修复与部署指南
  • STM32启动方式
  • WordPress网站属于什么网站做微网站的第三方平台有哪些
  • 赣州网站建设设计郑州做网站公司哪家好
  • 战鼓网这种网站怎么做ps怎么艺术字字体设计网站
  • 逆向免杀学习
  • 姓名查找程序
  • dotNet 博客园工具一键上传博客图片
  • 混合AI模型秒生成高清流畅视频
  • 电子商务网站开发实例论文网络设计开发专业
  • 被攻击网站如何建立公司的销售网站