首页 > 系统相关 >k8s ingress-nginx 使用 snippet 添加自定义配置(例如:安全头)

k8s ingress-nginx 使用 snippet 添加自定义配置(例如:安全头)

时间:2023-03-24 12:33:53浏览次数:67  
标签:ingress 自定义 kubernetes server snippet nginx io

比如在有些时候我们需要在 server 里或者 location 里添加一些参数,例如添加安全头、包体大小限制、添加跨域配置、添加自定义header、处理响应header等等。遇到这些需求的时候,我们开始怀念原生的 nginx 配置,因为那样我们可以随心所欲的修改。

我们有这样的需求,官方在做这个的时候,也做了一些考虑,为了我们提供了一些配置切入点,我们可以通过配置 annotation,按照官方提供的一些规则来将我们的一些自定义配置插入进去。

官方文档地址:注释 - NGINX 入口控制器 (kubernetes.github.io)

本文列出两种切入点示例:

  • nginx.ingress.kubernetes.io/configuration-snippet (用于插入 location 块代码段)
  • nginx.ingress.kubernetes.io/server-snippet (用于插入 server 块中的代码段)

安全头使用示例:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/configuration-snippet: >
      more_set_headers 'X-Content-Type-Options: nosniff' 'X-Frame-Options:
      SAMEORIGIN' "X-XSS-Protection : 1 mode=block ";
  name: default-ingress
  namespace: default
  //省略其他配置

官网实例:

configuration-snippet

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/configuration-snippet: |
        more_set_headers "Request-Id: $req_id";

server-snippet

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  annotations:
    nginx.ingress.kubernetes.io/server-snippet: |
        set $agentflag 0;

参阅:https://devpress.csdn.net/k8s/62f99feec6770329307ff078.html

标签:ingress,自定义,kubernetes,server,snippet,nginx,io
From: https://blog.51cto.com/u_11791718/6147073

相关文章

  • Dubbo自定义扩展点
    当我们需要在Dubbo框架中添加一些自定义的逻辑时,可以通过扩展点的方式来实现。Dubbo框架中提供了很多的扩展点,比如Protocol、Filter、LoadBalance等等。我们可以通过实现这......
  • kubeadm init命令初始化kubernetees集群时如何传入自定义镜像,解决初始化无法pull到国
    众所周知,我们使用kubeadminit初始化一个新的集群的时候,经常因为国外镜像无法pull到而失败,我们可以通过初始化时给命令加上--config=config.yaml参数,给命令传入额外参数,里......
  • ArcMap将Python写的代码转为工具箱与自定义工具
      本文介绍在ArcMap软件中,通过已有的Python脚本程序,建立新的工具箱并在其中设置自定义工具的方法。  通过本文介绍的操作,我们便可以实现将自己的Python代码封装,并像其......
  • 如何自定义 elementui 的前缀
    1、安装插件:postcss-change-css-prefix2、在根目录下创建postcss.config.js文件,并写入如下内容:constaddCssPrefix=require('postcss-change-css-prefix')module.e......
  • spring mvc 3 国际化(下)——简单自定义操作
    根据域名来判断用户语言:1.定义一个对象;SelfLocaleResolver1.publicclassSelfLocaleResolverextends2.@Override3.public4.if("127.0.0.1".equalsIgnoreCase(requ......
  • fastadmin添加自定义button按钮
    fastadmin添加自定义button按钮  fastadmin添加自定义按钮1、首先在初始化表格参数配置中添加URL,添加所需要的按钮地址 2、然后再初始化表格中,这这个位......
  • 29.自定义异常
    自定义异常publicclassMyExceptionextendsException{//继承//传递数>10抛出异常privateintdetail;publicMyException(inta){this.......
  • 一统天下 flutter - 动画: 自定义 Tween - ColorTween, CurveTween, SizeTween, RectT
    一统天下flutterhttps://github.com/webabcd/flutter_demo作者webabcd一统天下flutter-动画:自定义Tween-ColorTween,CurveTween,SizeTween,RectTween,A......
  • 自定义类型详解
    一、结构体在C语言中有int,char,float等等类型,可以用来形容某些数据,但是有些数据仅靠一种类型无法描述出来,比如说一个人,我们不仅要描述他的名字,还要描述他的身高、体重、性别......
  • fastadmin 添加自定义按钮
    更新1.index.html2.JS文件3.require-table.js文件......