Después de leer las diversas opciones para ejecutar contenedores en Google Cloud, todavía no puedo encontrar una solución adecuada entre la multitud de opciones: Cloud Run, Kubernetes, Container-OS...
Necesitamos poder:
- ejecutar una imagen de Docker (alojada en Dockerhub)
- montar un disco persistente como volumen. Allí se almacenarán archivos de big data.
- exponer puertos a internet
- escalabilidad automática (a 0 cuando no está en uso, por ejemplo, por la noche)
Respuesta1
Enfoquesolosobre GCP
el medio ambiente como en la pregunta.
Existen soluciones que podrían usarse para ejecutar cargas de trabajo como lo describió. Algunos de ellos son:
- Motor Kubernetes
- Ejecutar en la nube
Puedes leer más sobre las diferencias entre GKE
y Cloud Run
aquí:
Podrías usarGKEpara su carga de trabajo en cuanto a los puntos que mencionó:
- ejecutar una imagen de Docker (alojada en Dockerhub)
Kubernetes utiliza imágenes de Docker. Tiene la opción de especificar el lugar donde se descargan las imágenes.de.
- montar un disco persistente como volumen. Allí se almacenarán archivos de big data.
De forma predeterminada GKE
se utiliza gce-pd
como columna vertebral para PVC
's y PV
's. Podrá almacenar los datos necesarios para los pods allí:
- exponer puertos a internet
Kubernetes tiene una amplia variedad de opciones para permitir que el tráfico ingrese a su clúster. Algunos de ellos son:
ClusterIP
- solo internoNodePort
LoadBalancer
Ingress
Puedes leer más sobre ellos aquí:
- Kubernetes.io: Docs: Conceptos: Servicios redes: Servicio
- Cloud.google.com: Kubernetes Engine: Docs: Cómo: exponer aplicaciones
- escalabilidad automática (a 0 cuando no está en uso, por ejemplo, por la noche)
Al utilizar Kubernetes, puede escalar automáticamente no solo los nodos sino también los pods que ejecutan su aplicación:
- Cloud.google.com: Kubernetes Engine: Docs: Conceptos: Escalador automático de clústeres- el escalador automático de clústeresnoreducir la escala a 0 nodos automáticamente
- Escalador automático de pod horizontal (cantidad de réplicas):
- Cloud.google.com: Kubernetes Engine: Docs: Conceptos: Escalador automático de pod horizontal- HPA lo haránoescalar a 0 vainas
- Escalador automático de pod vertical (recursos y límite):
Recursos adicionales:
- Kubernetes.io
- Cloud.google.com: Kubernetes Engine: Documentos: Tutoriales
- Github.com: Kubernetes: Kompose- Traducir Docker Compose a Kubernetes