AWS の Kuberntes クラスターで Consul を使用しており、終端ゲートウェイを AWS RDS インスタンスに移行して、アップストリーム サービスで TLS 検証を使用しようとしています。
非TLS検証済み構成の場合、次のものがうまく機能します
---
apiVersion: consul.hashicorp.com/v1alpha1
kind: TerminatingGateway
metadata:
name: terminating-gateway
spec:
services:
- name: mydb
---
apiVersion: v1
kind: Pod
metadata:
name: testdb
labels:
role: test
app: testdb
annotations:
"consul.hashicorp.com/connect-inject": "true"
"consul.hashicorp.com/connect-service-upstreams": "mydb:1234"
spec:
containers:
- name: testdb
image: jbergknoff/postgresql-client
....
restartPolicy: Never
ただし、に変更すると
apiVersion: consul.hashicorp.com/v1alpha1
kind: TerminatingGateway
metadata:
name: terminating-gateway
spec:
services:
- name: mydb
caFile: /etc/ssl/rds.pem
データベースに接続しようとすると、一般的な接続エラーが発生します。consul と外部 RDS サービスの間で TLS 検証を有効にするために他に何かする必要がありますか?
PS RDS 結合 CA ファイルをダウンロードし、次のパスのクラスター内の各ノードにコピーを配置しました/etc/ssl/rds.pem