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

CKA考试知识点分享(2)---ingress

CKA 版本:1.32
第二题是涉及ingress相关。本文不是题目,只是为了学习相关知识点做的实验。

1. 环境准备

需要准备一套K8S集群。

1.1 安装ingress-nginx

下载deploy文件:

wget -O controller-v1.12.2.yaml https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.12.2/deploy/static/provider/cloud/deploy.yaml

为了应对国内镜像拉取不下来的操作,修改镜像代理(vim下操作):

:1,$s/registry.k8s.io/k8s.m.daocloud.io/g

kubectl create -f controller-v1.12.2.yaml
等待一会检查pod:
kubectl get pod -n ingress-nginx
在这里插入图片描述
检查ingressclass:
kubectl get ingressclass
在这里插入图片描述
注意 默认ingress-nginx的访问是LoadBalancer 这个是公有云的环境使用的,我们的自建环境修改svc通过nodeport进行访问。
kubectl edit -n ingress-nginx svc ingress-nginx-controller

在这里插入图片描述
访问测试
在这里插入图片描述

1.2 准备后端服务

创建一个后端服务,来接受ingress转发的流量

apiVersion: apps/v1
kind: Deployment
metadata:name: whoaim
spec:selector:matchLabels:app: whoaimreplicas: 1template:metadata:labels:app: whoaimspec:containers:- name: whoimimage: docker.io/containous/whoami:v1.5.0imagePullPolicy: IfNotPresentports:- containerPort: 80resources:limits:cpu: 2requests:cpu: 1
---
apiVersion: v1
kind: Service
metadata:name: whoaimlabels:app: whoaim
spec:ports:- port: 80selector:app: whoaim

在这里插入图片描述

2. 创建ingress

2.1 通过ip访问

创建一个ingress 策略,能够把ingressclass的svc暴露的端口转发到后端服务中。

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:name: whoim-ingressannotations:nginx.ingress.kubernetes.io/rewrite-target: /
spec:ingressClassName: nginxrules:- http:paths:- path: /testpathpathType: Prefixbackend:service:name: whoaimport:number: 80

检查ingress
在这里插入图片描述

访问测试:
在这里插入图片描述
注意看:
访问的路径通过ingress后 ,路径从/testpath 变成了/ 是因为 nginx.ingress.kubernetes.io/rewrite-target: / 所有的请求都会变成/

我们删除注解尝试:
kubectl edit ingress whoim-ingress
在这里插入图片描述
可以看到 请求的路径带到后端了。

2.2 通过域名访问

修改ingress 策略主要添加host

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:name: whoim-ingressannotations:nginx.ingress.kubernetes.io/rewrite-target: /
spec:ingressClassName: nginxrules:- host: www.example.com  #域名访问http:paths:- path: /testpathpathType: Prefixbackend:service:name: whoaimport:number: 80

修改本机hosts
192.168.100.41 www.example.com

验证访问:
curl www.example.com:30351/testpath/
在这里插入图片描述

参考链接

https://kubernetes.io/zh-cn/docs/concepts/services-networking/ingress/

相关文章:

  • ARM SMMUv3简介(一)
  • 主流大语言模型安全性测试(三):阿拉伯语越狱提示词下的表现与分析
  • 部门档案在不同系统中的差异及整合思路
  • FTP文件服务的搭建----详解
  • [Go]context上下文--使用要点--源码分析--Go核心--并发编程
  • IEC 61347-1:2015 灯控制装置安全通用要求详解
  • win32相关(IAT HOOK)
  • STM32什么是寄存器
  • HTML 面试题错题总结与解析
  • 锁的艺术:深入浅出讲解乐观锁与悲观锁
  • python asyncio的作用
  • 安卓基础(aar)
  • FastAPI安全机制:从OAuth2到JWT的魔法通关秘籍
  • PySide6 GUI 学习笔记——常用类及控件使用方法(单行文本控件QLineEdit)
  • 冰箱智能化升级方案:WT3000A离在线AI语音模组赋能AI在线对话功能
  • 10.Linux进程信号
  • C++11新增重要标准(下)
  • Java应用Flink CDC监听MySQL数据变动内容输出到控制台
  • 【Go核心编程】第十三章:接口与多态——灵活性的艺术
  • 计算机考研408真题解析(2024-15 整数乘法运算的四种实现方式)
  • 做外卖那些网站好/seo推广有哪些
  • 临沂专业网站建设公司电话/希爱力双效片骗局
  • 山西+网站建设/广告公司品牌营销推广
  • 谈谈设计和建设网站体会/东营优化路网
  • 天元建设集团有限公司经济官司/seo排名赚app是真的吗
  • 真做视频网站/seo关键词分析表