Вы можете настроить 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-tls-secret
, который вы создали, и использовать сертификаты для завершения TLS.
Вы можете убедиться, что Ambassador настроен правильно, проверив файл конфигурации envoy.json
в контейнере Ambassador.
kubectl exec -it {AMBASSADOR_POD_NAME} -- cat envoy/envoy.json
Если Ambassador настроен правильно, вы должны увидеть настроенный Envoy 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 Module и убедитесь, что у вас есть правильный ambassador_id.
person
Noah Krause
schedule
20.06.2019