¿Qué es este paquete de esqueleto Hyperf?
Hyperf proporciona oficialmente imágenes de contenedores, y las opciones de configuración están muy abiertas. No es complicado implementar Hyperf en la nube. Tomemos Kubernetes como ejemplo y hagamos algunas modificaciones al paquete de esqueleto predeterminado de Hyperf para que pueda ejecutarse en Kubernetes con gracia.
Consulte este blog: https://guxi.me/posts/cloudnative-hyperf/
La diferencia con el esqueleto oficial de Hyperf
- Agregue el enrutamiento de verificación de salud de Kubernetes (los usuarios aún deben implementarse de forma independiente)
- Según Docker Container Custom, los registros de salida a Stdout
- La salida del formato JSON en entornos de producción es conveniente para integrar Fluentbit, alces y otras herramientas de recolección.
- Establecer diferentes niveles de registro de acuerdo con las variables de entorno
- El rastreo y los componentes métricos se integran de forma predeterminada
- El valor predeterminado es el modo base, y solo 1 proceso está habilitado. Este modo se puede utilizar para implementar la expansión de nivel de proceso y la reducción de Kubernetes HPA.
- Debido a las razones anteriores, el componente métrico no permite procesos independientes de forma predeterminada y sale directamente desde la ruta
- La limpieza del temporizador se realiza cuando el trabajador termina, logrando una salida elegante bajo Kubernetes
- El rastreo usa Jaeger por defecto
- Integrar League/FlySystem, el entorno de desarrollo utiliza el sistema de archivos local de forma predeterminada, y otros entornos usan el controlador S3 de forma predeterminada.
- Encienda el oyente de error
- Gráfico de timón agregado, desplegado en K8s con un clic
- Apidog integrado
# helm 2
helm install .helm
# helm 3
helm install hyperf .helm