K8s--部署nginx-ingress服务

一、资源准备

1.拉取资源包并解压

helm pull bitnami/nginx-ingress-controller   %拉取包
tar zxf nginx-ingress-controller-7.5.0.tgz   %解压(需要在/helm目录下)

在这里插入图片描述
在这里插入图片描述

2.拉取相关镜像

拉取nginx-ingress-controller镜像并上传到harbor仓库:
docker load -i nginx-ingress-controller-0.44.0.tar  %直接load -i 已经下载好的包
docker push reg.westos.org/bitnami/nginx-ingress-controller:0.44.0-debian-10-r28
docker push reg.westos.org/bitnami/nginx:1.19.8-debian-10-r6

拉取metallb相关镜像并上传到harbor仓库:
docker load -i metallb.tar     %直接load -i 已经下载好的包
docker tag metallb/speaker:v0.9.5 reg.westos.org/metallb/speaker:v0.9.5 
docker push reg.westos.org/metallb/speaker:v0.9.5
docker tag metallb/controller:v0.9.5 reg.westos.org/metallb/controller:v0.9.5
docker push reg.westos.org/metallb/controller:v0.9.5

在这里插入图片描述

二、nginx-ingress部署

1.编辑values.yaml文件

global:            %指定全局
   imageRegistry: reg.westos.org   %harbor

在这里插入图片描述

2.每个结点上安装ipvsadm

yum install -y ipvsadm

在这里插入图片描述

3.master节点上更改为ipvs模式

kubectl edit configmap -n kube-system kube-proxy
strictARP: true
mode: "ipvs"

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

kubectl get pod -n kube-system |grep kube-proxy | awk '{system("kubectl delete pod "$1" -n kube-system")}'   %重启容器使上述更改生效

在这里插入图片描述

三、metallb部署

1.编辑metallb.yaml创建namespace:

mkdir metallb
vim metallb.yaml:添加下述内容
kind: Namespace
metadata:
  name: metallb-system
  labels:
    app: metallb

kubectl apply -f metallb.yaml 
kubectl  create  secret generic -n metallb-system memberlist --from-literal=secretkey="$(openssl rand -base64 128)"

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.编辑config.yaml并应用

apiVersion: v1
kind: ConfigMap
metadata:
  namespace: metallb-system
  name: config
data:
  config: |
    address-pools:       %地址池
    - name: default  
      protocol: layer2   %二层协议 
      addresses:
      - 172.25.1.100-172.25.1.200
kubectl apply -f config.yaml 

在这里插入图片描述

四、安装

cd nginx-ingress-controller/
kubectl create namespace nginx-ingress-controller
helm install nginx-ingress-controller . -n nginx-ingress-controller 
kubectl -n nginx-ingress-controller get pod
kubectl -n nginx-ingress-controller get all

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值