首页
学习
活动
专区
圈层
工具
发布

基于 Kubernetes 的 Nginx-Ingress 实现蓝绿部署

背景介绍 某些情况下,我们在使用Kubernetes作为业务应用的云平台,想要实现应用的蓝绿部署用来迭代应用版本,用lstio太重太复杂,而且它本身定位于流控和网格治理;Ingress-Nginx在0.21...Canary nginx.ingress.kubernetes.io/canary-weight 请求到Canary ingress中指定的服务的请求百分比,值为0-100的整数,根据设置的值来决定大概有百分之多少的流量会分配.../canary-by-header 一起使用,当请求中的hearder key和value 和nginx.ingress.kubernetes.io/canary-by-header nginx.ingress.kubernetes.io...: Ingress metadata: annotations: kubernetes.io/ingress.class: nginx nginx.ingress.kubernetes.io...,在初始灰度的时候就可以对新版本进行测试、发现和调整问题,以保证其影响度,以上内容通过实例详细介绍了Ingress-Nginx的实战Canary Annotation,可以借助Ingress-Nginx

1.6K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Kubernetes各版本对应支持的docker版本列表

    大家好,又见面了,我是你们的朋友全栈君。 Kubernetes主要做Docker的容器化管理,总结一下如何查看k8s对应支持的docker版本的方法。...在GitHub可以查看所有Kubernetets版本信息 截止2019.08.09最新的版本支持信息: Kubernetes 1.15.2 –>Docker版本1.13.1、17.03、17.06、17.09...Kubernetes 1.14.4 –>Docker版本1.13.1、17.03、17.06、17.09、18.06、18.09 Kubernetes 1.14.3 –>Docker版本1.13.1...GitHub中查找对应的版本后点击CHANGELOG-1.15.md 点进去查找docker versions 1.14.4的版本信息点击CHANGELOG-1.14.md: 点进去查找docker versions...如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    18.8K20

    优雅退出和零停机部署

    Ingress YAML具有serviceName属性,用于描述应该使用哪个Service。 Ingress控制器会从Service中检索端点列表并跳过它。流量直接流向端点(Pod)。...特别是,每当你部署应用程序的新版本时,Kubernetes 都会创建和删除 Pod。 当你在 Deployment 中更改镜像时,Kubernetes 会逐步滚动更新。...:1.18 旧版本 image: nginx:1.19 ports: - containerPort: 3000 如果你有三个副本,并且在提交新的...它会重复上述步骤,直到所有的 Pod 都迁移到新版本。 Kubernetes 只有在新 Pod 准备好接收流量(也就是通过了就绪检查)后,才会重复每个周期。...如果你的 Pod 运行长时间的任务,比如转码视频或使用 WebSockets 提供实时更新,你应该考虑使用彩虹部署。

    1.8K20

    K8S 生态周报| Kubernetes Ingress-NGINX 功能冻结前最后一个版本发布

    Kubernetes Ingress-NGINX v1.3.0 正式发布 本周我们发布了 Kubernetes Ingress-NGINX 的 v1.3.0 版本, 正如我在之前的文章 K8S 生态周报...| Ingress NGINX 项目暂停接收新功能将专注于稳定性提升 中介绍的, 我们接下来会投入 6 个月的时间,用于项目稳定性的提升。...以下是此版本中的最值得关注的变更: 删除了对 Kubernetes v1.19 版本及以下的变更; 增加了对 Kubernetes v1.24 版本的支持; 从这个版本开始,需要增加 coordination.k8s.io...我个人对 Gateway API 项目的发展是很看好的,无论是我在维护的 Kubernetes Ingress-NGINX 还是 Apache APISIX Ingress 项目都会很积极的拥抱此项目的...此外目前 Kubernetes Ingress-NGINX 项目也同样在进行此升级,可能工作量也不小。

    76120

    k8s中负载均衡器【ingress-nginx】部署

    为了使外部的应用能够访问集群内的服务,在Kubernetes 目前 提供了以下几种方案: NodePort LoadBalancer Ingress 本节主要就ingress和ingress控制器ingress-nginx-controller...以下系统组件版本: 云服务器:centos版本7.6.1810、k8s版本1.15.0、docker版本18.06.1-ce、ingress-nginx-controller版本0.25.0 Ingress...将Nginx的配置抽象成一个Ingress对象,每添加一个新的服务只需写一个新的Ingress的yaml文件即可 将新加入的Ingress转化成Nginx的配置文件并使之生效 ingress controller...ingress controller通过和kubernetes api交互,动态的去感知集群中ingress规则变化, 然后读取它,按照自定义的规则,规则就是写明了哪个域名对应哪个service,生成一段...---- ingress-nginx-controller 目前最新版本的ingress-nginx-controller,用lua实现了当upstream变化时不用reload,大大减少了生产环境中由于服务的重启

    5.4K40

    应用流量无损切换技术测验

    在熟练掌握这些生命周期的配置属性后,单个 Pod 的流量就可以优雅处理,这个原子能力的处理让上层高级对象的处理也可以原生支持无损流量的切换。...练习 2:Ingress-nginx 流量无损切换更新应用 Ingress 对象是 Kubernetes 设计的引流对象,它直接监听 Service 的 Endpoints 接口列表的变化来更新负载均衡的接口列表...以下例子以 Nginx OSS 版本的 Ingress 来作为范例帮助大家理解。...通过 Kubernetes 不可变基础设施的支持,我们可以让同一软件的多个版本实例在同一集群内服务于请求,这种模式会让试验变得非常有趣。...例子如下: A/B 测试技术有时会与前两种技术混淆,但它有自己的目的,即评估即将发布的版本的两个不同的版本,看看哪个版本会更成功。这种策略在 UI 开发中很常见。

    74411

    Ingress企业实战:部署高可靠性Ingress篇

    这就是Ingress的作用。想象一下,您的Kubernetes集群就像一个大型的公寓楼,每个公寓是一个应用程序。而Ingress就是大楼的大门,允许外部人员进入。...这可以通过不同的规则来实现,就像保安知道哪个公寓对应哪个房间号一样。这样,当人们访问不同的网址时,保安就会将他们引导到正确的应用程序。要使保安工作,您需要在大门口放置一个标志,告诉保安如何引导来访者。...在Kubernetes中,这个标志就是Ingress对象。而控制这个保安的是Ingress Controller,它就像是保安的老板,负责确保保安按照标志上的规则来引导人们。...高可靠Ingress架构高可靠架构首先解决的就是单点故障,通常在Kubernetes中采用多副本部署方式,同时由于Ingress作为集群流量接入口,建议采用一个Ingress服务独占一个Ingress节点的方式...v1.27.3版本选择选择Ingress-nginx最新版本1.8.1,支持的kubernetes 1.27,1.26, 1.25, 1.24版本Ingress-NGINX versionk8s supported

    1.4K10

    Ingress企业实战:部署高可靠性Ingress篇

    什么是Ingress 当你在Kubernetes集群中运行多个应用程序时,每个应用程序都有自己的服务。为了让外部用户访问这些应用程序,就好像他们访问网站一样,我们需要一种方法来管理流量的分配和路由。...这就是Ingress的作用。想象一下,您的Kubernetes集群就像一个大型的公寓楼,每个公寓是一个应用程序。而Ingress就是大楼的大门,允许外部人员进入。...这可以通过不同的规则来实现,就像保安知道哪个公寓对应哪个房间号一样。这样,当人们访问不同的网址时,保安就会将他们引导到正确的应用程序。要使保安工作,您需要在大门口放置一个标志,告诉保安如何引导来访者。...在Kubernetes中,这个标志就是Ingress对象。而控制这个保安的是Ingress Controller,它就像是保安的老板,负责确保保安按照标志上的规则来引导人们。...v1.27.3 版本选择 选择Ingress-nginx最新版本1.8.1,支持的kubernetes 1.27,1.26, 1.25, 1.24版本 Ingress-NGINX version k8s

    63320

    对比Kubernetes的Nodeport、Loadbalancer和Ingress,什么时候该用哪种

    本文翻译自:https://medium.com/google-cloud/kubernetes-nodeport-vs-loadbalancer-vs-ingress-when-should-i-use-what...启动 Kubernetes Proxy: $ kubectl proxy --port=8080 现在,你可以使用如下的 Kubernetes API 访问服务: http://localhost:8080...还有一个称为 nodePort 的附加端口,指定在节点上打开哪个端口。 如果你不指定这个端口,它会选择一个随机端口。 什么时候用?...您指定的端口上的所有流量都将被转发到该服务, 没有过滤、路由等。这意味着您可以发送几乎任何类型的流量,如 HTTP,TCP,UDP,Websockets,gRPC 或其他。...来自 Google Cloud Load Balancer, Nginx, Contour, Istio 等的 Ingress 控制器类型很多。

    6.7K31

    一文读懂 Kubernetes Ingress Controller 选型实践

    我们可以基于 Ingress 类注释来划分路由空间,以便每个 Ingress 知道应该由哪个 Ingress Controller 来处理其流经的请求。...1、 流量协议 基于特定的业务场景,我们首先需要明确所定义的技术架构,以及基于架构所选取的技术框架。比如,我们是否需要路由 HTTP(S)、HTTP/2 还是 Websockets?...基于当前的 Ingress,无论是 Kubernetes Ingress、Nginx Ingress、Kong Ingress、Traefik Ingress、APISIX Ingress 甚至 Ambassador...在实际的业务场景中,我们需要对某一组件进行配置更新,往往需要进行人工重启以使其生效,例如,传统的 Nginx 组件需要停机才能更新配置,而其他 Ingress Controller 则无需停机即可动态更新...10、 生态拥抱性 最后一个便是生态成熟度,毕竟,随着技术的革新、周边衍生平台的崛起,我们所选择的组件,如 Ingress Controller 是否能够在 Kubernetes 合作伙伴生态系统中得到进一步的支持与扩展

    2.3K60
    领券