(十)Kubernetes系列之Ingress

k8s无脑系列(十) - k8s dashboard 2.0通过ingress和nginx访问 安装dashboard并通过nginx外网访问 原本以为很难,其实很简单 要求 通过Nginx前端机转发请求到k8s集群的dashboard服务 必须是https,并有指定域名 dashboard采用2.0版本,该版本只提供443的https服务(自签名) 思考 整个访问链条全部都是HTTPS,难点在于Nginx拿到dashboard服务的内部证书 dashboard的部署过程自动生成了密钥,但k8s集群外部无法使用。并且ingress也用到了相同的密钥与service建立TLS链接 Nginx前 阅读详情

集群外部使用Kubernetes集群内发布的服务通常是通过配置NodePort或LoadBalancer的Service或者配置ExternalIP实现,

工作在TCP/IP层,随着服务增多端口越来越多,越来越难维护。

Ingress资源对象,用于将Kubernetes集群外的客户端请求路由到集群内部的服务上,同时提供7层(HTTP和HTTPS)路由功能,可以按照配置的域名转发给各个服务。

1.Ingress控制器安装

1.1 下载部署文件

使用浏览器访问

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

1.2修改配置文件镜像为阿里云镜像

1.2.1修改:  registry.k8s.io/ingress-nginx/controller:v1.4.0@sha256:34ee929b111ffc7aa426ffd409af44da48e5a0eea1eb2207994d9e0c0882d143为:registry.cn-hangzhou.aliyuncs.com/google_containers/nginx-ingress-controller:v1.4.0

1.2.2 修改:registry.k8s.io/ingress-nginx/kube-webhook-certgen:v20220916-gd32f8c343@sha256:39c5b2e3310dc4264d638ad28d9d1d96c4cbb2b2dcfb52368fe4e3c63f61e10f

为:registry.cn-hangzhou.aliyuncs.com/google_containers/kube-webhook-certgen:v20220916-gd32f8c343

1.2.3修改 type: LoadBalancer为 type: NodePort

1.2.4修改Deployment的ports配置信息,分别添加hostPort: 80 和 443

62f4f09d5c853943b5373e8ff5cc7465.png

1.3查看ingress-controller相关pod

kubectl --namespace=ingress-nginx get pods -o wide

0c9f80019df4c1c22345b524a60eac7b.png

1.4查看ingress-controller相关service

kubectl --namespace=ingress-nginx get service

cdb84c2075f21e29aa4f90475526b2f2.png

1.5 使用curl访问Nginx Ingress Controller所在宿主机80端口验证是否正常,未配置

后端服务时会返回404

a5181bd07f71eb1c2863f0429cec9c4b.png

2.Ingress使用

2.1创建deployment控制器

2.1.1创建deployment模板

vi nginxdeployment.yml

内容如下:

8c6da64a511740813b727d6f36f9f8db.png

2.1.2 执行创建deployment命令

kubectl apply -f nginxdeployment.yml

3734396bf942af01a00f571e35ee5be5.png

2.2 创建service

2.2.1创建模板

vi vi nginxsercice1.yml

内容如下:

4b43b86a89f579c79e5a2d826d6d1d0f.png

2.2.2执行创建service命令

kubectl apply -f nginxsercice1.yml

8d2c69e18209285d5b3b16e498d6bedb.png

3.1创建ingress

3.1.1创建模板

vi nginxingress1.yml

内容如下

f83a36c85cd1918f0622937ef021cfc5.png

3.1.2创建

kubectl apply -f nginxingress1.yaml

3469bc3e8df2931c314fcfc537b54fe9.png

3.1.3 查看

kubectl get ingress

d25282f68a35c857f2689b991326ea0d.png

3.1.4 使用集群外机器访问

3.1.4.1配置hosts

324a62fe5563440f6b02f965b708b741.png

3.1.4.1访问(虽然也是404但是nginx/1.23.2是部署pod时的nginx)

8aac5cf0a05582eeb230016e9d9d3c8f.png

Kubernetes K8S之Ingress详解与示例 K8S之Ingress概述与说明,并详解Ingress常用示例 阅读详情

相关推荐

Kubernetes Ingress 简介

创建一个 Ingress 资源来定义外部访问的规则。这些规则包括主机名、路径、目标服务等。metadata:spec:rules:http:paths:- path: /backend:service:port:number: 80在这个示例中,Ingress 定义了将主机名下的路径的请求路由到名为的 Service 的 80 端口。本文主要讲解了 ingress 的基本介绍和使用 demo,最后将工作原理总如如下六大部分。定义 Ingress 资源:定义外部访问规则。

欲望以提升热忱 毅力以磨平高山 3257

ingress-nginx更改默认端口/修改apiserver端口范围

k8s ingress更改端口号 k8s apiserver端口更改

yuhai_a的博客 1万+

Kubernetes(k8s)之Ingress

本文介绍了Kubernetes中Ingress的概念及实现方式。Ingress作为Kubernetes暴露服务的三种方式之一,主要用于通过域名访问内部应用,提供负载均衡、SSL终止等功能。文章详细讲解了Ingress的工作原理,包括通过Ingress Controller动态感知规则变化、生成Nginx配置等过程。此外,还提供了Ingress环境准备步骤,包括部署ingress-controller和创建测试服务。最后展示了HTTP和HTTPS代理的实现方法,包括自签名证书生成、证书导入Kubernetes

m0_60889254的博客 1052

k8s部署IngressController

k8s中ingress的基本用法

教Linux的李老师 5303

K8S-INGRESS原理,部署及应用

Ingress解决的是新的服务加入后,域名和服务的对应问题,基本上是一个ingress的对象,通过yaml进行创建和更新进行加载。来保护 Ingress。的服务)配置成外网能够访问的URL,流量负载均衡,及SSL,并提供域名访问的虚拟主机等,客户通过访问URL(API资源服务的形式,例如:caas.one/kibana)进入和请求Service,一个Ingress控制器负责处理所有Ingress的请求流量,它通常是一个负载均衡器,它也可以设置在边界路由器上,或者由额外的前端来帮助处理HA方式的流量。

别来沾边儿 2009

K8S之Ingress

和一个具体。

wyx的博客 1758

极简让ingress-nginx最新版(0.25.0)跑起来

裸步骤: 一,manadatory.yaml apiVersion: v1 kind: Namespace metadata: name: ingress-nginx labels: app.kubernetes.io/name: ingress-nginx app.kubernetes.io/part-of: ingress-nginx ...

weixin_30379531的博客 769

如何在R中高效安装ropls及其依赖包

本文详细介绍了在R语言中高效安装ropls包及其依赖的完整流程。作为Bioconductor生物信息学分析包,ropls的安装需通过BiocManager管理器进行。文章提供了标准安装步骤、跨系统避坑指南及安装后验证方法,帮助用户解决R版本、编译环境和网络镜像等常见问题,确保代谢组学数据分析工具顺利部署。

efc123456的博客 908

k8s修改ingress默认80端口为其他端口

其实很多时候客户都不给用80端口,亦或者80端口已经被其他服务占用。 而我们使用K8S的时候,默认的 ingress-controller 端口是 80 端口。 遇到这种情况,可以将 K8S 默认的 80 端口修改为其他端口,例如 80 修改为 8081。 操作方法 kubectl edit daemonset nginx-ingress-controller -n ingress-nginx containers: - args: - /nginx-ingress-c

小单的博客专栏 8762

告别手动调参!PSCAD 4.2的Multiple-Run功能,5分钟搞定交流故障批量仿真

本文详细介绍了PSCAD 4.2的Multiple-Run功能如何高效处理交流故障批量仿真,告别传统手动调参的低效模式。通过五步配置法,工程师可在5分钟内完成数百次参数组合的仿真,显著提升电力系统分析效率。文章还包含工业级应用案例和高级调试技巧,助力实现故障仿真的自动化与智能化。

weixin_42552716的博客 276

国产操作系统替换方案:3个避坑指南

坑核心误区避坑核心原则关键动作坑一:选型只看信创信创目录=唯一标准兼容性优先,信创是约束三维评估(兼容性+信创+生态),分场景选型坑二:迁移只管能跑功能能跑=迁移成功性能确认+运维回归适配-压测-回归三阶段,基线对比坑三:不防二次迁移解决停服=完成任务一步到位,两级兼容信创路线优先,双轨制发布,终态规划。

weixin_43524706的博客 299

Ingress-配置和使用

Ingress 是管理集群外部访问集群内部服务的流量的 API 对象,是 kubernetes 中对 service 的反向代理。流量的去向由 Ingress 资源所定义的规则来控制。可提供负载均衡、SSL 和基于名称的虚拟主机功能。主要的访问方式是 HTTP/HTTPS,不支持四层协议。下一代替代 Ingress 的产品 Gateway API 可以实现 四层和七层协议流量管理。Ingress 在 kubernentes v1.28 版本停止更新,并推出了可以实现更多功能的。fill:#333。

qq_22648091的博客 5834

FID指标实战:如何用Python快速计算生成图像的质量分数(附完整代码)

本文详细介绍了如何使用Python计算Fréchet Inception Distance(FID)指标,以评估生成图像的质量。通过完整的代码示例和优化技巧,帮助开发者快速实现FID计算,并解读分数背后的实际意义,适用于GAN和扩散模型的性能评估。

weixin_28718487的博客 376

k8s系列之十二Kubernetes Ingress

首先我们来思考用传统的web服务器,比如Nginx,如何处理这种场景?比如使用Nginx充当一个反向代理服务器拦截外部请求,读取路由规则配置,转发相应的请求到后端服务。反向代理web服务器负责拦截外部请求,比如Nginx、Apache、traefik等等。我一般以Deployment方式部署到kubernetes集群中,当然也可以用DeamonSet方式部署;这两种部署方式个人觉得有利有弊,感兴趣的请参考这篇文章。

ByteX的博客 2379

Lumerical官方案例、FDTD时域有限差分法仿真学习(三)——环形谐振器(Ring resonator)之第二&第三部分

二、使用 MODE 的参数提取和蒙特卡罗 三、最终参数提取

weixin_45719141的博客 1万+

yanshee 机器人全流程指南

2.点击yanshee app右上角根据提示操作 3.当手机显示成功连接 ,按下机器人胸前按钮说出“ip地址”4.根据机器人播报的ip地址加上:8888使用浏览器访问,你就会看到 jupyterd的界面,里面可以新建文件也可以改他存在的文件。我们使了yanshee机器人,这个是面向K12、中高职、高校学生推出的开源人形机器人教育平台,应用于课程教学、竞赛、科研活动等场景。我们接下来可以根据这些apl做许多好玩的,比如控制他运动,跳舞唱歌,it`s easy。注意电脑,手机,机器人必须连同一个网。

qq_44827929的博客 7613

K8S的ingress介绍和安装ingress

在没有ingress之前,只能基于svc的NodePort或者LoadBalancer实现内部的pod对外访问,如果遇到多个服务要监听80端口时。很明显无论哪种类型都无法实现,如果非要实现,就得在K8S集群外部部署一个LB设备,来代理到对应svc资源。而ingress就可以很好的解决这个问题。例如nginx的一个80端口可以给多个实例使用所谓的ingress指的是一种规则,基于用户访问的请求头路由到正确的svc。简单来说说就是7层代理。

qq_73797346的博客 2381

ADS入门学习笔记——射频振荡器的设计

振荡器是射频系统中的基本部件之一,可以将直流功率转换为射频功率,在特定的频率点建立起稳定的正弦振荡,成为所需的射频信号源。

weixin_42126696的博客 8949

【kubernetes】k8s对外服务之Ingress

K8S集群外部的客户端访问K8S集群内部的方案基于Service实现:NodePort、LoadBalancer、externalIPs 只能支持四层代理转发,如果K8S集群规模较大运行的业务服务较多,NodePort端口/externalIPs管理成本会很高基于Ingress实现:支持七层代理转发,可自定义规则根据用户请求的域名或URL路径转发给指定的Service端点实现Pod的代理访问一般来说,ingress-controller的形式都是一个pod,里面跑着daemon程序和反向代理程序。dae

qq_54188720的博客 6863

《ATF(TF-A)专题精讲》目录——146篇,完整覆盖整个ATF的官方文档

本文摘要介绍了Trusted Firmware-A (TF-A)项目的技术文档体系。主要内容包括:项目概述、组件解析(如ARM RAS/RME/CCA等安全技术)、系统设计(启动流程、中断管理、信任链等)、开发指南(构建环境、移植策略)、性能分析、平台支持(涵盖NXP、Marvell、Xilinx等主流芯片厂商)、开发流程规范以及安全通告(CVE漏洞分析)。文档体系全面覆盖了ARM安全固件的技术实现、硬件适配和开发实践,为开发者提供了从理论到实践的完整参考。

Linux内核架构师 1113

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

【kubernetes】关于k8s集群中的ingress规则案例

基于Service实现:NodePort LoadBalancer externalIPs 只能支持四层反向代理,如果K8S集群规模较大运行的业务较多时NodePort端口/externalIPs管理成本会很高基于Ingress实现:支持七层反向代理,可自定义规则根据用户请求的域名或URL路径转发给指定Service进行代理访问。

liu_xueyin的博客 3628

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

K8S中的ingress

Kubernetes暴露服务的方式目前只有三种:LoadBlancer Service、NodePort Service、Ingress;这一片主要聊聊Ingress。

L2111533547的博客 2万+

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

【K8S】Kubernetes 中的 Ingress 详解

本文系统介绍了Kubernetes Ingress的核心概念与应用。主要内容包括:1) Ingress作为应用层API对象,提供基于主机名和路径的七层负载均衡能力;2) Ingress资源规范详解,包括路由规则定义、TLS配置和默认后端设置;3) 主流Ingress Controller对比与Nginx Ingress的架构解析,包含其动态配置生成机制。文章通过YAML示例和架构图展示了Ingress从声明式配置到实际流量处理的全流程,为Kubernetes服务暴露提供了专业指导方案。

NeoLshu的博客 1593

k8s部署ingress-nginx

k8s服务对外暴露有三种方式Nodeport: 服务暴露需要在集群每个节点都开放一个同样的端口,通过来访问,如果服务数量多了,开放的端口就难以管理: 大部分情况下只适用于支持外部负载均衡器的云提供商(AWS,阿里云,华为云等)使用。每个服务都会由云服务提供一个IP作为入口,转发相应的流量,但每个LoadBlancer Service都会产生费用,成本比较高。如果想要在内网环境中使用就需要部署网络负载均衡器,比如MetalLB等组件,它主要提供两个功能:地址分配和外部通知。所以这次我们主要来介绍。

qq_40208428的博客 5334

K8S Ingress、IngressController 快速开始

定义:Ingress 是 Kubernetes 中的一种资源对象,它定义了外部访问集群内服务的规则。可以将其理解为一个智能的 “流量路由器”,根据接收到的 HTTP/HTTPS 请求的不同规则,将流量转发到集群内不同的服务上。作用统一入口:为集群内的多个服务提供一个统一的外部入口点,使得外部用户可以通过一个固定的 IP 地址或域名来访问不同的服务,而不需要为每个服务都暴露独立的 IP 和端口。规则定义:支持基于域名、URL 路径等条件来定义路由规则。例如,可以配置让域名的请求被路由到服务 A,而。

matrixlzp的博客 2136

92、K8s之ingress下集

ingress----根据servicename选择service-----service把服务把请求根据匹配的标签转发pod。支持http 80 https 443。

m0_74149099的博客 2470
上一篇: (九)Kubernetes系列之Service
下一篇: (七)Kubernetes系列之DaemonSet控制器
调试大师
博客等级 码龄3年 2340粉丝 61原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

调试大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值