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

使用helm在openshift上配置TLS

夏侯承恩
2023-03-14

我正在尝试在openshift上使用边缘终止来配置TLS,正在传递TLS证书和值中的私钥。yaml并在路线中引用它。yaml文件,当我执行helm图表时,由于在从值复制证书时引入了不正确的缩进和换行符,路由的创建失败。向路线行进。yaml文件。

以下是值。yaml文件,从中引用路由中的证书。yaml文件。做这件事最好的方法是什么?如何从值传递tls证书和私钥。yaml具有适当的压痕。

Values.yaml

route:
  Enabled: true
  annotations:
    haproxy.router.openshift.io/cookie_name: SESSION_XLD
    haproxy.router.openshift.io/disable_cookies: "false"
    haproxy.router.openshift.io/rewrite-target: /
  path: /
  hosts:
    - www.example.com
  tls:
    key:
      -----BEGIN CERTIFICATE-----
      [...]
      -----END CERTIFICATE-----
    certificate:
      -----BEGIN CERTIFICATE-----
      [...]
      -----END CERTIFICATE-----
    caCertificate:
      -----BEGIN CERTIFICATE-----
      [...]
      -----END CERTIFICATE-----
    insecureEdgeTerminationPolicy: Redirect

route.yaml

{{- if $.Values.route.tls }}
  tls:
    termination: edge
  {{- with $.Values.route.tls }}
    key: |
      {{ .key }}
    certificate: |
      {{ .certificate }}
    caCertificate: |
      {{ .caCertificate }}
    insecureEdgeTerminationPolicy: {{ .insecureEdgeTerminationPolicy }}
  {{- end }}
{{- end }}

共有2个答案

连俊智
2023-03-14

在证书之前添加|,如@Daein answer,但也可以在路由yaml中添加引号certificate:{{.certificate|quote}}

逄兴昌
2023-03-14

尝试使用< code>|将每个证书传递给< code>route.yaml以保留< code>Values.yaml中的缩进,如下所示,如何?

  tls:
    key: | <--- add
      -----BEGIN CERTIFICATE-----
      [...]
      -----END CERTIFICATE-----
    certificate: | <--- add
      -----BEGIN CERTIFICATE-----
      [...]
      -----END CERTIFICATE-----
    caCertificate: | <--- add
      -----BEGIN CERTIFICATE-----
      [...]
      -----END CERTIFICATE-----
 类似资料:
  • 我们有一个私人库伯内特集群。我们正在尝试按照这些快速入门说明安装Solace。https://github.com/solaceproducts/solace-kubernetes-quickstart solace helm海图安装步骤如下: 快速的堆栈搜索似乎表明这是因为loadbalancer希望在云内部使用外部负载均衡器: kubernetes服务外部ip挂起 此外,其中一个答案建议在使用

  • 5-根据安装指南从github下载了nodejs应用程序,现在我得到了部署在本地服务器上的应用程序的文件夹结构 6-我需要在应用程序文件夹中包含以下内容才能成功地将应用程序部署到服务器 package.json文件中的a-npm依赖项b-bower.json文件(稍后我应该能够运行bower install在repo中安装bower依赖项)不成功,我没有对该目录的sudo权限 ==>app-roo

  • 有一个问题,通过遵循回购 https://github.com/razorinc/redis-openshift-example 当我启动redis server时,它显示“[12010]25 Mar 20:14:53#打开端口6379:bind:权限被拒绝” 我试图将端口0更改为端口3128,但仍然得到相同的错误。。。。不知道为什么 --更新当我尝试升级到redis 2.6并使用--port参数

  • 我正在设置一个 OpenShift 源服务器。我所做的配置在很大程度上依赖于演练说明: https://github.com/openshift/origin/blob/master/examples/sample-app/README.md 创建项目后,我添加了一个像这样的新应用程序(成功): oc new-app centos/ruby-22-centos7~https://github.co

  • 我试图部署一个角应用程序在OpenShift与Istio作为服务网格。服务yaml: 到目前为止,一切都与http连接一起工作。为了切换到https连接,我将Red Hat Openshift服务Mesh operator安装提供的istio ingressgateway路由配置为使用passthrough 以及istio的网关资源: VirtualService指向angular app的808

  • 是否有一种方法可以配置OpenShift路由,该路由链接到使用Fab8-maven-plugin创建的服务? 使用零配置创建了一个路由,但如何配置它以添加边缘TLS终端?我在XML配置中找不到元素来设置它:(是否有片段来配置路由?我们可以用曝光控制器做些什么吗?