Mengekspos layanan k8s dengan tcp

Saya memiliki cluster eks, semuanya aktif dan berfungsi. Saya ingin menjalankan layanan yang mendengarkan permintaan tcp pada port 5000. Saya mencoba membacanya tetapi semua panduan yang dapat saya temukan menggunakan http sebagai contoh. Saya rasa saya agak bingung dengan semua konsep yang berbeda. Jika saya mendefinisikan:

apiVersion: v1
kind: Service
metadata:
  name: my-service
spec:
  type: LoadBalancer
  ports:
    - port: 5000
      targetPort: 5000
      protocol: TCP

dan menjalankan ini (sebenarnya menggunakan helm), saya dapat melihat di konsol aws bahwa penyeimbang beban klasik telah dibuat. tapi saya tidak bisa melakukan ping.

Jadi pada dasarnya, bagaimana cara membuat penyeimbang beban jaringan yang meneruskan port 5000 ke layanan saya? sepertinya ini seharusnya sederhana karena saya tidak dapat menemukan cara melakukan ini. Akhirnya saya ingin memiliki staticIP untuk nlb sehingga saya dapat mengirim permintaan ke port itu. Apakah saya perlu menginstal nginx (atau pengontrol ingress lainnya) agar ini berfungsi?


person J. Doe    schedule 27.01.2021    source sumber
comment
Dokumen ini mungkin berguna bagi Anda, 1) Penyeimbangan beban jaringan di Amazon EKS 2) Menggunakan Network Load Balancer dengan NGINX Ingress Controller di Amazon EKS   -  person amitd    schedule 27.01.2021


Jawaban (1)


Pertama-tama Anda berada di cara yang benar dalam membuat layanan dengan tipe LoadBalancer. Satu-satunya hal yang hilang dengan melihat konten Service.yaml adalah bidang pemilih di objek Layanan tidak ada sehingga layanan Anda tidak mengetahui pod mana yang meneruskan lalu lintas. Coba tambahkan.

Jika Anda hanya ingin satu layanan diekspos secara publik, maka tipe LoadBalancer masuk akal. Namun jika Anda ingin memiliki banyak layanan, maka akan memakan biaya besar untuk membuat beberapa layanan LoadBalancer. Dalam hal ini Nginx Ingress membantu Anda dengan hanya membutuhkan satu layanan jenis LoadBalancer. Lihat https://medium.com/better-programming/how-to-expose-your-services-with-kubernetes-ingress-7f34eb6c9b5a

person Rushikesh    schedule 27.01.2021