Мне нужно развернуть бэкэнд-сервис в GKE. Эта внутренняя служба состоит из REST API и TCP-сервера, который будет использоваться несколькими устройствами IoT. Следуя инструкциям в документации по Google Kubernetes Engine, я смог развернуть следующую службу, которая достигает этого:
apiVersion: v1
kind: Service
metadata:
name: my-service
spec:
type: LoadBalancer
selector:
app: my-backend-app
ports:
- name: http
protocol: TCP
port: 80
targetPort: 8080
- name: https
protocol: TCP
port: 443
targetPort: 8080
- name: my-tcp-service
protocol: TCP
port: 2222
targetPort: 2222
Проблема с вышеуказанной конфигурацией заключается в том, что я не могу настроить TSL для моего REST API , Все ресурсы, которые я найду для настройки TSL в Kubernetes, указывают мне на Ingress, и, попробовав это, я обнаружил, что Ingress не будет работать с моим TCP-сервером, поскольку Ingress является (насколько я понимаю) своего рода HTTP-прокси.
Можно ли каким-либо образом настроить TSL (HTTPS) непосредственно на LoadBalancer без необходимости входа (предпочтителен сертификат Google, управляемый)? Должен ли я использовать Ingress для REST API и что-то еще для TCP-сервера?