1
votes

Comment communiquer entre les services dans Kubernetes de manière sécurisée

J'ai quelques microservices node.js fonctionnant dans Kubernetes et il me faudrait maintenant trouver un moyen de communiquer entre eux. Je pensais exposer un point de terminaison qui ne serait accessible qu'en interne à partir d'autres pods. Je cherche depuis des heures, mais je n'ai pas trouvé de solution suffisamment sûre. Existe-t-il un moyen de le faire fonctionner en tant que tel? Merci!


0 commentaires

3 Réponses :


2
votes

Si vous souhaitez que votre service ne soit accessible qu'à partir des pods sélectionnés, vous pouvez utiliser Règles du réseau . Ils permettent de définir quels pods peuvent parler à quels pods au niveau du réseau. Par exemple, vous pouvez exposer votre service via l'entrée et autoriser uniquement le contrôleur d'entrée à parler à votre application. De cette façon, vous pouvez être sûr que votre application ne peut être disponible que via l'entrée (avec authentification) et pas d'autre moyen.

Les politiques réseau ne sont prises en charge que par certains plugins réseau:

  • Calico
  • Ouvrir vSwitch
  • Cil
  • Tissage
  • Romana

0 commentaires

1
votes

Utilisez simplement 'cluster ip' comme type de service. cela garderait vos services exposés au sein du cluster. vous pouvez utiliser les services par leur nom sur Http.

pour tout service qui parle publiquement, vous devrez peut-être utiliser le type de service d'équilibrage de charge ou le contrôleur d'entrée.


0 commentaires

2
votes

communiquer entre les services dans Kubernetes de manière sécurisée

Nativement, Kubernetes ne fournit pas de solution TLS mutuelle aux services de communication chiffrée, c'est là qu'Istio avec mutual-tls-authenticatione apporte cette fonctionnalité à la plateforme.


0 commentaires