更轻松地部署和升级 NGINX Service Mesh
原文作者:Amir Rawdat of F5
原文链接:更轻松地部署和升级 NGINX Service Mesh
转载来源:NGINX 开源社区
NGINX 唯一中文官方社区 ,尽在 nginx.org.cn
Service mesh(服务网格) 正迅速成为云原生堆栈的重要组成部分,尤其是对于 Kubernetes 平台的用户而言。服务网格提供了关键的可观察性、安全性及流量控制,这样您的 Kubernetes 应用就无需实施这些特性,从而使开发人员能够专注于优化业务逻辑。
NGINX Service Mesh 是我们全面集成式的服务网格平台。它提供了服务网格的所有优势,同时利用基于 NGINX Plus 的数据平面支持 mTLS、流量管理及高可用性等关键特性。
NGINX Service Mesh 1.1.0 版引入了三个关键增强功能,有助于在 Kubernetes 中更轻松地部署并管理我们的生产就绪型服务网格:Helm 支持、物理隔离安装及就地升级。
Helm 支持
NGINX Service Mesh 包括 nginx-meshctl
CLI 工具,可作为任何 CI/CD 流水线的一部分进行完全可脚本化的安装、升级和移除。但 CLI 不一定是管理 Kubernetes 服务的首选方案。NGINX Service Mesh 1.1.0 版增加了对 Helm的支持,它是一套常见的广受推崇的工具,支持自动创建、配置和封装应用与服务并将其部署至 Kubernetes。
要在 NGINX Service Mesh 中使用 Helm,首先需要添加 helm 存储库:
# helm repo add nginx-service-mesh https://helm.nginx.com/nginx-service-mesh # helm repo update
然后,将带有所选 release-name 的 chart 安装至专用命名空间。
# helm install release-name nginx-service-mesh –n nginx-mesh-namespace
有关部署支持 Helm 的 NGINX Service Mesh 的更多信息,请参阅我们的文档。
物理隔离安装
根据标准的 Kubernetes 实践,默认情况下,NGINX Service Mesh 在部署时会从多个 Kubernetes 支持的仓库中拉取控制平面和数据平面的容器镜像。一些镜像来自公共 NGINX 容器仓库,而其他镜像(例如 Prometheus 和 Grafana)则来自公共仓库。这一模型更适用于具有公共出站访问的 Kubernetes 环境,并不适合没有直接公共出站访问的受限的、被锁定的且更安全的 Kubernetes 环境。
NGINX Service Mesh 1.1.0 版引入了物理隔离安装支持,您可以预拉取镜像,并将其推送至仅可从内部 Kubernetes 环境中访问的自有专用镜像仓库。
当将预拉取的镜像推送到您的私有仓库服务器时,您必须使用文档文档中指定的镜像名称和标签。然后,您可在 nginx-meshctl
deploy
命令中添加 --disable-public-images
,从而命令 NGINX Service Mesh 从私有仓库服务器中拉取镜像:
# nginx-meshctl deploy --registry-server your-private-registry --disable-public-image
就地升级
之前,升级 NGINX Service Mesh 时有两种选择:在安装更新的版本前移除正在运行的部署,或者将更新的版本部署至单独的集群并将用户迁移进来。这两种方法都不太理想,因为在更新前,您必须重新部署由网格管理的服务。
NGINX Service Mesh 1.1.0 引入了就地升级支持,可减少中断体验。此外,所有所需容器镜像和 NGINX Service Mesh 控制平面均会自动升级,自定义资源定义 (CRD) 也可维持不变。
您可以安装 nginx-meshctl
命令行工具并运行以下命令,从而将当前部署升级到最新版本。
# nginx-meshctl upgrade
注:执行就地升级时,数据平面 sidecar 在重新部署或纵向扩展前继续通过先前版本运行。如果进行了纵向扩展,新的 Pod 将运行最新版 sidecar。
结语
NGINX Service Mesh 1.1.0 继续致力于提升用户体验,您可以将其部署至您的开发、测试及生产环境,并在GitHub 上提交反馈。
NGINX 唯一中文官方社区 ,尽在 nginx.org.cn
更多 NGINX 相关的技术干货、互动问答、系列课程、活动资源: 开源社区官网 | 微信公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
同城双活:交易链路的稳定性与可靠性探索
知易行难,双活过程中遇到了非常多的问题,但是回过头看很难完美的表述出来,之所以这么久才行文也是这个原因,总是希望可以尽可能的复现当时的思考、问题细节及解决方案,但是写出来才发现能给出的都是多次打磨、摸索之后的我们认为偏合理的方案;不过换个角度看,给大家展示出来一个正确答案,是否有更积极的参考价值呢? 以及,涉及到容器、发布平台、底层网络运维、监控等组件的内容,限于视野及技术能力并未包含在内,仅聚焦在业务团队及中间件组件的设计及改造上。 背景 2022年,基于对稳定性的焦虑...和思考,交易平台联动中间件平台启动过异地多活项目的探索,虽然完成了核心应用及基础组件的改造,但在疫情&降本增效的影响下并未真正投产,同时也缺乏充分的测试以及线上流量的大规模验证;后续在不断的业务迭代中,相关设计及代码被冲击的面目全非,相关的多活自动化测试case也并没有沉淀下来。 随着近期外部友商时有严重故障出现,比如 以上林林总总出现的故障都给我们敲响了警钟,必须建设快速恢复的能力。出现问题几乎不可避免,但如果能控制影响范围、缩短影响时间,也就能把损失降到最低。 我经历过的公司,做交易的和做中间件的往往...
- 下一篇
警示:软删除引发泼天大祸!
原文 The Day Soft Deletes Caused Chaos. 在我作为软件工程师的生涯中,最大的失误莫过于 5 年前合并了一个表面看起来毫无问题的 Pull Request。 简而言之:在生产级系统中,我们不应该使用软删除 —— —这是一个我通过一次严重的失误痛苦学到的教训。那次失误导致同一场音乐会的座位能被无限次地售卖给不同的买家。 所谓软删除,是一种在不真正执行删除操作的情况下保留数据的简便方法,仅通过标记一个「DELETE」标志来实现。 你在表格中增加了一个新的列,这样在进行「删除」操作时,实际上是更新了这条数据的状态,并在进行数据查询时自动排除那些标记为已删除的数据。 尽管这种做法初看起来简单易行,但它隐藏着潜在的风险 —— 如果不小心让一些本不应该被展示的数据泄露出去,后果可能非常严重。 重大事件警示 我在一家活动票务公司工作时,创建了一个与此类似的拉取请求: 在座位预订流程中,顾客可以在结账过程中暂时锁定座位 5 分钟。这个过程是通过一个后台任务实现的,它会在时间到后删除锁定记录,使得座位重新可被预订。我当时的任务是将这种基于「软删除」的锁定机制迁移到一个新的...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- MySQL8.0.19开启GTID主从同步CentOS8
- Mario游戏-低调大师作品
- Linux系统CentOS6、CentOS7手动修改IP地址
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Docker快速安装Oracle11G,搭建oracle11g学习环境