KamoCRM no se ejecuta en la plataforma como servicio de otra persona, sino en un clúster RKE2 Kubernetes que creamos, operamos y que nos despierta, con nuestro propio almacenamiento, entrada, automatización de certificados, virtualización y registro de imágenes. Todo lo que sabemos sobre el envío de software que se mantiene en funcionamiento, lo aprendimos aquí, a nuestro propio costo.
| Medida | Valor | Fuente | Medido |
|---|---|---|---|
| Implementaciones en el clúster | 106 | kubectl get deploy --all-namespaces | |
| Pods para correr | 267 | kubectl get pods --all-namespaces | |
| Cargas de trabajo stateful | 22 | kubectl get statefulsets --all-namespaces | |
| Espacios de nombres | 19 | kubectl get namespaces | |
| Certificados TLS bajo administración automatizada | 211 | kubectl get certificate --all-namespaces (cert-manager) | |
| Rutas de entrada | 40 | kubectl get ingressroute --all-namespaces (Traefik) | |
| Tiempo de actividad del nodo del plano de control | 266 days | kubectl get nodes -o wide, AGE column | |
| Versión de Kubernetes | v1.35.6+rke2r1 | kubectl get nodes -o wide, VERSION column |
Qué edificio nos enseñó
Habría sido más fácil alquilarla. Managed Kubernetes existe, es bueno, y elegirlo habría eliminado toda una categoría de problemas de nuestras vidas. Ejecutamos nuestro propio porque la plataforma lleva cosas que una oferta administrada no aloja para usted a un precio razonable: telefonía que necesita un control de red real, medios WebRTC que necesitan rutas UDP predecibles, inferencia que necesita hardware, y porque una empresa que vende competencia en infraestructura debe ser capaz de demostrarlo en lugar de describirlo.
El clúster lleva Longhorn para el almacenamiento de bloques replicado, Traefik para ingress, cert-manager que emite certificados por nombre de host, KubeVirt para las cargas de trabajo que realmente necesitan una máquina virtual y un registro privado. Los certificados por sí solos son una buena ilustración de por qué el funcionamiento enseña cosas que la lectura no: se emiten por nombre totalmente cualificado y en serie, por lo que un inquilino que agrega un nombre de host y no espera ve un certificado autofirmado en exactamente un host y concluye que todo el sistema está roto.
Los fallos han sido instructivos en la forma en que solo tus propios fallos lo son. Una migración de esquema que hizo que todos los servicios devolvieran errores durante un cuarto de hora porque los grupos de conexiones tenían una versión de catálogo más antigua. Un nodo cuya segunda interfaz de red corrompeba grandes transferencias intermitentemente, lo que parecía un error de software durante mucho tiempo. Límites de memoria que estaban bien hasta que un recolector de basura no estuvo de acuerdo. Cada uno de esos es ahora algo que diseñamos contra el trabajo del cliente, porque ya pagamos por la lección.
Esta es la diferencia que realmente estamos vendiendo. Una empresa de desarrollo que nunca ha operado lo que construyó le entregará un repositorio y una factura, y el primer incidente de producción será solo suyo.
Construido con
- Kubernetes (RKE2)
- Traefik
- cert-manager
- Longhorn
- KubeVirt
- containerd
- Docker registry
- Ubuntu
Para lo que esto nos califica
Cuéntanos lo que estás tratando de hacer
Una breve conversación suele ser suficiente para saber si somos las personas adecuadas, si no lo somos, lo diremos y le indicaremos un lugar mejor.
