nginx-ingress-controller组件中Nginx的版本升级

参考链接:https://blog.csdn.net/qq_22824481/article/details/133761302
                  https://blog.csdn.net/mengfanshaoxia/article/details/127155020
                  https://blog.csdn.net/weixin_39961559/article/details/87935873

概要

业务区k8s在漏扫过程中被扫出几个Nginx漏洞,那么,首先想到的就是nginx-ingress-controller,第一个想法就是升级这个组件,但是考虑到我们的k8s版本比较低,直接升级nginx-ingress-controller可能会导致后续的兼容性问题,因为没有专业的k8s运维人员,我们这都是半吊子全栈,所以不敢轻易去尝试。那么就选择第二种比较稳妥的办法,升级nginx-ingress-controller组件里边的Nginx版本。

整体流程

1、获取ingress-nginx的pod
kubectl get pods --all-namespaces -l app.kubernetes.io/name=ingress-nginx
2、进入ingress-nginx容器内部:
kubectl exec -it -n namespace pod-name – bash
3、进入ingress-nginx容器内部后:
bash-5.0$ more /etc/issue
Welcome to Alpine Linux 3.11
bash-5.0$ nginx -v
nginx version: nginx/1.17.8
4、将我们自己使用的nginx-ingress-controller镜像下载到本地。因为我们使用的是阿里仓库的开源镜像,直接docker pull命令下载
5、在步骤3中我们明确了镜像容器的Linux版本和Nginx版本,那么需要根据Linux版本查找我们要升级的Linux对应的版本。
在这里插入图片描述
6、执行docker run -it -u root nginx-ingress-controller镜像 /bin/bash
然后分别执行两个命令:
echo http://mirrors.aliyun.com/alpine/v3.19/main/ > /etc/apk/repositories
apk add --upgrade --allow-untrusted nginx
成功之后我们执行nginx -v查看版本,结果还是1.17.8,这时需要我们将这个做过Nginx升级的容器重新生成一个新的镜像
7、docker ps查看现有的nginx-ingress-controller容器信息
docker commit -m=“nginx-ingerss-controller自定义镜像基于apline3.11、nginx1.24.0” -a=“作者名字” 容器id test/nginx-ingress-controller:nginx1.24.0-Release
8、运行新的镜像,检查Nginx版本
docker run -it -u root test/nginx-ingress-controller:nginx1.24.0-Release /bin/bash
9、建立自己的阿里私人镜像仓库,将新制作的镜像提交上去供业务区下载使用
参考:阿里私人镜像仓库的使用

小结

我有个不好的习惯,比如说这个升级,我就想着把k8s全弄懂了再去干这个事才放心,但是有时候工作不等人,甲方不等人,所以
遇到问题一定要动起来,要去尝试。核心的去认真查,其它涉及到的可以先暂时只是了解,问题解决之后再去学习也不晚!共勉!!!

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

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

相关文章

JAVAEE初阶 JVM(一)

JVM的热门话题 一. JVM中的内存区域划分1.经典笔试题. 二. JVM的类加载机制 一. JVM中的内存区域划分 1.经典笔试题. 二. JVM的类加载机制

wondows10用Electron打包threejs的项目记录

背景 电脑是用的mac,安装了parallels desktop ,想用electron 想同时打包出 苹果版本和windows版本。因为是在虚拟机里安装,它常被我重装,所以记录一下打包的整个过程。另外就是node生态太活跃,几个依赖没记录具体版本&#xff0…

lora网关智慧工厂三色灯安灯状态采集钡铼技术S281

LoRa网关结合钡铼技术S281模块在智慧工厂三色灯安灯状态采集方面具有广泛的应用前景。智慧工厂的安全生产管理对于企业生产经营至关重要,而三色灯安灯是工厂安全生产管理的重要指示灯,通过LoRa无线通信技术和钡铼技术S281模块,可以实现对三色…

使用 package.json 配置代理解决 React 项目中的跨域请求问题

使用 package.json 配置代理解决 React 项目中的跨域请求问题 当我们在开发前端应用时,经常会遇到跨域请求的问题。为了解决这个问题,我们可以通过配置代理来实现在开发环境中向后端服务器发送请求。 在 React 项目中,我们可以使用 package…

MES系统中的手动排产和自动排产-助力生产效率

企业在排产管理中面临的问题: 大多数的企业在调度排产过程中,都会遇到以下问题。首先是插单非常的多,计划调整困难,会经常性的发生原材料、零部件的备货不足。计划按MRP或库存展示计算出需求后将产生大量工单,这些工单…

《剑指Offer》笔记题解思路技巧优化_Part_6

《剑指Offer》笔记&题解&思路&技巧&优化_Part_6 😍😍😍 相知🙌🙌🙌 相识😢😢😢 开始刷题🟡1.LCR 168. 丑数—— 丑数🟢2. LCR 16…

Kubernetes服务网络Ingress网络模型分析、安装和高级用法

文章目录 1、Ingres简介2、Ingres网络模型分析3、安装Ingress4、使用4.1、搭建测试环境4.2、域名访问4.3、路径重写(高级用法)4.4、流量限制(高级用法) 5、总结 1、Ingres简介 Ingress翻译过来是“入口”的意思,也就是…

切换分支时候IDEA提示:workspace associated with branch feature has been restored

切换分支时候IDEA提示:workspace associated with branch feature has been restored 这个消息是指与"feature"分支关联的工作区已经恢复。在Git中,工作区是指你当前正在进行修改和编辑的文件和目录。当你切换分支时,Git会自动将工…

怎么把试卷图片转换成word?这4种方法一看就会

怎么把试卷图片转换成word?在数字化日益盛行的今天,我们常常会面临将纸质试卷或图片中的试卷内容转化为Word文档的需求。无论是为了对试卷内容进行编辑、修改,还是为了在线共享、远程教学,将图片转换为Word文档都成为了至关重要的…

集成TinyMCE富文本编辑器

若依的基础上集成TinyMCE富文本编辑器 前端bootstrap TinyMCE官网链接 TinyMCE所需静态资源下载链接 开源项目-若依链接 将TinyMCE静态资源包放入项目中&#xff1b; 代码引入css&#xff1a; <!-- 引入TinyMCE CSS --><link th:href"{/ajax/libs/tinymce/j…

SD-WAN:快速改造升级企业原有网络架构

随着企业信息化的推进&#xff0c;传统网络架构已难以满足企业日益复杂和多样化的组网互联需求。企业在不断提高对网络的要求&#xff0c;包括各办公点的互联数据传输、资源共享、视频会议、ERP、OA、邮箱系统、云服务等应用需求&#xff0c;以及对网络运维工作的简化和降低难度…

Spring Event 快速入门

请直接看原文 : Spring Event&#xff0c;贼好用的业务解耦神器&#xff01; (qq.com) -------------------------------------------------------------------------------------------------------------------------------- 前言 Spring Event 同步使用 Spring Event 异…

ADAS智能驾驶测试知多少?

当涉及ADAS&#xff08;Advanced Driver Assistance Systems&#xff09;智能驾驶的测试时&#xff0c;有一个完整的测试体系可以用来评估系统的性能和功能。 1. 传感器测试 1.1 传感器校准测试 描述&#xff1a;确保传感器&#xff08;如雷达、摄像头、激光雷达等&#xff09;…

【stm32】hal库学习笔记-UART/USART串口通信(超详细!)

【stm32】hal库学习笔记-UART/USART串口通信 hal库驱动函数 CubeMX图形化配置 导入LCD.ioc RTC设置 时钟树配置 设置LSE为RTC时钟源 USART设置 中断设置 程序编写 编写主函数 /* USER CODE BEGIN 2 */lcd_init();lcd_show_str(10, 10, 16, "Demo12_1:USART1-CH340&q…

Java中各种O(PO,BO,DTO,VO等) 是不是人为增加系统复杂度?

Java中各种O(PO,BO,DTO,VO等) 是不是人为增加系统复杂度&#xff1f; 在Java和其他编程语言的开发过程中&#xff0c;经常会用到几个以"O"结尾的缩写&#xff0c;比如PO,BO,DTO,VO等等&#xff0c;O在这里是Object的缩写&#xff0c;不同的O代表了不同的数据类型&am…

Java基础 - 13 Queue之DelayQueue、PriorityQueue、PriorityBlockingQueue讲解

在Java的队列世界里&#xff0c;有三位大佬&#xff0c;他们分别是DelayQueue、PriorityQueue和PriorityBlockingQueue。今天&#xff0c;让我们一起揭开他们神秘的面纱&#xff0c;看看他们各自的特点和用途吧&#xff01; DelayQueue 首先&#xff0c;让我们来认识一下Delay…

2.22 作业

顺序表 运行结果 fun.c #include "fun.h" seq_p create_seq_list() {seq_p L (seq_p)malloc(sizeof(seq_list));if(LNULL){printf("空间申请失败\n");return NULL;}L->len 0; bzero(L,sizeof(L->data)); return L; } int seq_empty(seq_p L) {i…

工厂方法模式Factory Method

1.模式定义 定义一个用于创建对象的接口&#xff0c;让子类决定实例化哪一个类。Factory Method 使得一个类的实例化延迟到子类 2.使用场景 1.当你不知道改使用对象的确切类型的时候 2.当你希望为库或框架提供扩展其内部组件的方法时 主要优点&#xff1a; 1.将具体产品和创建…

PHP+vue+mysql仓库进销存管理系统8jeqj

开发语言&#xff1a;php 后端框架&#xff1a;Thinkphp 前端框架&#xff1a;vue.js 服务器&#xff1a;apache 数据库&#xff1a;mysql 运行环境:phpstudy/wamp/xammp等 数据库工具&#xff1a;Navicat/phpmyadmin 登录模块&#xff1a;此模块主要有4个部分&#xff0c;基…

实验中用户行为的检测

[1] Makris S , Karagiannis P , Koukas S ,et al.Augmented reality system for operator support in human–robot collaborative assembly[J].CIRP Annals - Manufacturing Technology, 2016:S0007850616300385.DOI:10.1016/j.cirp.2016.04.038. —————————————…