当前位置: 首页 > 知识库问答 >
问题:

你能在k8s nginx入口中按规则设置后端协议吗?

仇征
2023-03-14

我有一个kubernetes集群设置,设置了两个服务。

Service1链接到Deployment1,而Service2链接到Deployment2。

Deployment2为只能使用HTTPS连接到的POD提供服务。

使用kubectl端口转发和执行到POD,我知道服务和部署正在按照它们应该的方式做出响应,服务之间的内部连接工作良好。

我有一个nginx入口设置,允许到这两个服务的外部连接。服务应该只使用https连接,任何传入的http连接都需要重定向到https。以下是入口设置:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: master-ingress
  annotations:
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    cert-manager.io/cluster-issuer: "letsencrypt-production"
spec:
  tls:
    - secretName: tls-secret-one
      hosts:
      - service1.domain.com
      - service2.domain.com
  rules:
    - host: "service1.domain.com"
      http:
        paths:
          - path: /
            backend:
              serviceName: service1
              servicePort: 60001
    - host: "service2.domain.com"
      http:
        paths:
          - path: /
            backend:
              serviceName: service2
              servicePort: 60002

共有1个答案

南宫天逸
2023-03-14

不可能在单个入口中设置每个规则的后端协议。为了实现您想要的,您可以创建两个不同的入口,一个用于service1,另一个用于service2,并用http注释service1的入口,用HTTPS注释service2的入口。

 类似资料:
  • 问题内容: 为什么我可以做到这一点而没有任何错误: 虽然我定义了这个: 如果我的协议中的定义大部分被忽略(getter,setter定义),为什么我仍要使用它们? 问题答案: 根据官方文件: 可以通过多种方式通过符合类型来满足吸气剂和设置剂的要求。如果属性声明同时包含get和set关键字,则符合条件的类型可以使用存储的变量属性或既可读又可写的计算属性(即,同时实现getter和setter的)来实

  • 详细内容请看这里

  • 本文向大家介绍你知道TCP协议、IP协议、HTTP协议分别在哪一层吗?相关面试题,主要包含被问及你知道TCP协议、IP协议、HTTP协议分别在哪一层吗?时的应答技巧和注意事项,需要的朋友参考一下 考察点:网络七层模型 运输层,网络层,应用层。 七层结构:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层 tcp属于传输层;http属于应用层。

  • 其中需要将路径设置为协议,以获取导入标准协议缓冲区(protobuf),如清空。proto和时间戳。在Windows和Dart中的proto? 运行协议时: protoc——dart\u out=grpc:lib/src/protos/generated-Iprotos-protos/organization。proto—plugin=protoc gen dart=D:\Users\Samuel

  • Hprose(High Performance Remote Object Service Engine) 是一款先进的轻量级、跨语言、跨平台、无侵入式、高性能动态远程对象调用引擎库。它不仅简单易用,而且功能强大。 你无需专门学习,只需看上几眼,就能用它轻松构建分布式应用系统。