Вы можете настроить Ambassador для завершения TLS с ресурсом TLSContext
или tls Module
.Чтобы либо просто прекратить TLS, используя созданный вами секрет, вы можете настроить их следующим образом:
tls Module
:
---
apiVersion: ambassador/v1
kind: Module
name: tls
config:
server:
enabled: true
secret: ambassador-tls-secret
TLSContext
:
---
apiVersion: ambassador/v1
kind: TLSContext
name: ambassador
secret: ambassador-tls-secret
hosts: ["*"]
После настройки любого из них Ambassador должен заметить созданный вами ambassador-tls-secret
и использовать сертификаты для завершения tls.
Вы можете проверить, правильно ли настроен посол, проверив файл конфигурации envoy.json
в контейнере посла
kubectl exec -it {AMBASSADOR_POD_NAME} -- cat envoy/envoy.json
Если посол был правильно настроен, вы должны увидеть Посланника tls_context
настроен и слушатель с именем ambassador-listener-8443
, как показано ниже:
"tls_context": {
"common_tls_context": {
"tls_certificates": [
{
"certificate_chain": {
"filename": "/ambassador/snapshots/default/secrets-decoded/ambassador-certs/66877DCC8C7B7AF190D3510AE5B4BFC71FADB308.crt"
},
"private_key": {
"filename": "/ambassador/snapshots/default/secrets-decoded/ambassador-certs/66877DCC8C7B7AF190D3510AE5B4BFC71FADB308.key"
}
}
]
}
},
"use_proxy_proto": false
}
],
"name": "ambassador-listener-8443"
Если вы этого не сделаете, посол отклонил вашу конфигурацию по какой-то причине.Проверьте журналы контейнера Ambassador, убедитесь, что у вас настроен только tls Module
или TLSContext
, проверьте, настроен ли service_port
в Модуль посла ,и убедитесь, что у вас есть правильный ambassador_id .