Esta resposta está desatualizada. Eu escrevi um tutorial passo a passo detalhado aqui usando métodos mais atualizados. Recomendo a leitura de tudo.
Em poucas palavras, você executa um aplicativo sidecar para configurar o conjunto de réplicas para você e usa um serviço por instância ou pinga a API K8s para os endereços IP do pod.
Exemplo: Isso só funcionará no Google Cloud. Você precisará fazer modificações para outras plataformas, principalmente em torno dos volumes:
- Siga o exemplo em https://github.com/leportlabs/mongo- k8s-sidecar.git
git clone https://github.com/leportlabs/mongo-k8s-sidecar.git
cd mongo-k8s-sidecar/example/
make add-replica ENV=GoogleCloudPlatform
(faça isso três vezes)
- Conecte-se ao conjunto de réplicas por meio de serviços.
mongodb://mongo-1,mongo-2,mongo-3:27017/dbname_?
- Você também pode usar os endereços IP do pod bruto em vez de criar um serviço por pod