Recolectando Configuraciones y Secretos para el Ecosistema
En el artículo anterior, presentamos el ecosistema de microservicios que estamos a punto de desplegar. Ahora, antes de poder dar vida a nuestro primer servicio, necesitamos las “llaves del reino”: las credenciales y configuraciones para conectarse a todos los servicios que hemos preparado.
Este artículo es un checklist de preparación. Te guiaremos paso a paso para recolectar toda la información crítica que necesitaremos en los próximos despliegues. Al final de esta guía, tendrás una lista completa de todos los valores que luego almacenaremos en HashiCorp Vault.
Un Vistazo al Ecosistema que Vamos a Potenciar
Section titled “Un Vistazo al Ecosistema que Vamos a Potenciar”Recordemos brevemente el ecosistema. Cada uno de estos componentes necesitará algunos de los secretos que vamos a reunir para comunicarse de forma segura entre sí y con el mundo exterior.

Prerrequisitos
Section titled “Prerrequisitos”- MongoDB Atlas: Necesitarás una cuenta y un clúster (la versión gratuita es suficiente) creado en MongoDB Atlas.
- Infraestructura Desplegada: Debes tener todos los componentes de la fase anterior funcionando: Kubernetes, Vault, RabbitMQ, etc.
Parte 1: Recolectando los Secretos y Configuraciones
Section titled “Parte 1: Recolectando los Secretos y Configuraciones”-
Obtener Datos de Microsoft Entra ID Nuestros microservicios necesitan validar los tokens JWT emitidos por Entra ID. Para ello, requieren tres piezas de información.
-
Paso 1.1: Obtener el
ClientId
yAudience
Ve al registro de tu aplicaciónInventoryApp
en Entra ID. El valor que necesitas es elApplication (client) ID
. Anótalo; lo usaremos tanto para elClientId
como para laValidAudience
. -
Paso 1.2: Obtener el
Issuer
(Emisor) En la misma pantalla, haz clic en la pestaña “Endpoints”. La URL que necesitas es la delOpenID Connect metadata document
. Cópiala y anótala comoValidIssuer
.
-
-
Obtener Credenciales de RabbitMQ El Operator de RabbitMQ crea un usuario por defecto y almacena sus credenciales en un secreto de Kubernetes.
- Usando Lens, navega a
Config > Secrets
y selecciona el namespacesrv-rabbitmq
. - Abre el secreto
rabbitmq-cluster-default-user
. - Lens te mostrará los valores decodificados. Copia y anota los valores de
username
ypassword
.
- Usando Lens, navega a
-
Obtener la Cadena de Conexión de MongoDB Atlas Inicia sesión en tu panel de MongoDB Atlas.
- Navega a tu clúster y haz clic en “Connect”.
- Selecciona “Drivers” y sigue los pasos para obtener tu cadena de conexión (Connection String).
- ¡Importante! Asegúrate de reemplazar
<password>
con la contraseña real de tu usuario de base de datos. Para este entorno de desarrollo, también deberás configurar el acceso a la red (“Network Access”) para permitir conexiones desde cualquier lugar, añadiendo la IP0.0.0.0/0
.
Resumen de la Información Recolectada
Section titled “Resumen de la Información Recolectada”¡Excelente trabajo! Has completado la fase de recolección. En este punto, deberías tener anotados y listos los siguientes valores en un lugar seguro (como un gestor de contraseñas).
Credenciales Externas
Section titled “Credenciales Externas”Configuración | Valor de Ejemplo | Origen |
---|---|---|
Security:ValidIssuer | https://devcodedesignplus.ciamlogin.com/.../v2.0/ | Endpoints de Entra ID |
Security:ClientId | 305f759d-d1d2-467b-9eab-4a61389c7329 | App Registration de Entra ID |
Security:ValidAudiences:0 | 305f759d-d1d2-467b-9eab-4a61389c7329 | App Registration de Entra ID |
RabbitMQ:UserName | default_user_... | Secreto de Kubernetes (RabbitMQ) |
RabbitMQ:Password | bHdldUhMZl... | Secreto de Kubernetes (RabbitMQ) |
Mongo:ConnectionString | mongodb+srv://user:pass@cluster... | Panel de MongoDB Atlas |
Endpoints Internos del Clúster
Section titled “Endpoints Internos del Clúster”Estos valores son fijos para nuestra arquitectura y los usaremos para la comunicación entre servicios.
Configuración | Valor Fijo para Nuestro Entorno |
---|---|
Resources:Server | http://ms-services-grpc.inventory.svc.cluster.local:5001 |
RabbitMQ:Host | rabbitmq-cluster.srv-rabbitmq.svc.cluster.local |
Redis:Instances:Core:ConnectionString | redis-standalone-headless.srv-redis.svc.cluster.local:6379 |
Observability:ServerOtel | http://inventory-opentelemetry-collector.otel-collector.svc.cluster.local:4317 |
Conclusión
Section titled “Conclusión”Has completado la preparación final. Con esta lista de configuraciones y secretos en mano, estás perfectamente equipado para el siguiente y emocionante paso.
En el próximo artículo, desplegaremos nuestro primer microservicio, ms-services
. Tomaremos toda esta información que hemos recolectado, la almacenaremos de forma segura en Vault, y lanzaremos el servicio, viendo por primera vez cómo un componente de CodeDesignPlus se integra y cobra vida dentro de la plataforma que hemos construido.