Puedes configurar la cantidad de memoria que utiliza Pixie. Durante la instalación, utilice Helm para establecer las solicitudes y límites de memoria, o para reducir la cantidad de memoria que utiliza Pixie para el almacenamiento de datos a corto plazo.
¿Cómo usa Pixie la memoria?
El objetivo principal del proyecto Pixie de código abierto es crear una plataforma de depuración en tiempo real. Pixie no pretende ser una solución de almacenamiento duradera a largo plazo y es mejor utilizarlo junto con New Relic. La integración New Relic consulta a Pixie cada pocos minutos y conserva un subconjunto de telemetry data de Pixie en New Relic.
Cuando instalas la integración New Relic Pixie, se implementa un agentevizier-pem
en cada nodo de tu clúster a través de un DaemonSet. El vizier-pem
agente utiliza la memoria para dos propósitos principales:
- Recopilación telemetry data: seguimiento del tráfico de aplicaciones o perfiles de CPU, entre otros. Esos valores deben almacenar en algún lugar de la memoria a medida que se procesan.
- Almacenamiento a corto plazo de telemetry data: para potenciar la resolución de problemas a través de la pestaña Depuración en tiempo real con Pixie y como ubicación de almacenamiento temporal para un subconjunto de telemetry data antes de que se almacenen en New Relic.
De forma predeterminada, vizier-pem
pod tiene un límite de memoria 2Gi
y una solicitud de memoria 2Gi
. Reservaron el 60% de su memoria asignada para el almacenamiento de datos a corto plazo, dejando el otro 40% para la recopilación de datos.
¿Por qué aumenta el uso de memoria de Pixie después de la instalación?
Después de instalar Pixie, el uso de memoria del pod vizier-pem
aumenta a medida que comienzan a almacenar telemetry data. Una vez que alcance el límite de memoria de vizier-pem
, telemetry data antiguos caducan para dejar espacio para datos nuevos, por lo que la utilización de la memoria no debería aumentar más.
Configurar el uso de memoria de Pixie
Para la mayoría de los clústeres, recomendamos utilizar la configuración de memoria predeterminada 2Gi
. Sin embargo, para ciertos clústeres de poco tráfico, Pixie puede admitir un límite mínimo de memoria de 1Gi
. Para acomodar la aplicación pod, recomendamos que no se asigne a Pixie más del 25 % de la memoria total de los nodos. Por ejemplo, si sus nodos tienen una memoria total de 4Gi
, querrá configurar Pixie para usar un límite de memoria 1Gi
.
Desplegar Pixie con un límite de memoria particular
Si desea especificar un límite de memoria diferente al 2Gi
predeterminado para el agente vizier-pem
de Pixie, puede agregar el siguiente parámetro de configuración a su gráfico Helm durante la instalación. Por ejemplo, para un límite de memoria 1Gi
, usarías:
$--set pixie-chart.pemMemoryLimit=1Gi
Desplegar Pixie con una petición de memoria particular
De forma predeterminada, la solicitud de memoria de vizier-pem
es la misma que el límite. Si desea especificar una solicitud de memoria diferente, puede agregar el siguiente parámetro de configuración a su gráfico de Helm durante la instalación. Por ejemplo, para una solicitud de memoria 1Gi
usarías:
$--set pixie-chart.pemMemoryRequest=1Gi
Importante
La solicitud de memoria vizier-pem
debe ser menor o igual que el límite de memoria vizier-pem
.
Desplegar Pixie con un almacenamiento de datos particular a corto plazo
De forma predeterminada, vizier-pem
pod reserva el 60 % de su memoria asignada para el almacenamiento de datos a corto plazo y deja el otro 40 % para la recopilación. Para el límite de memoria predeterminado 2Gi
, esto significa que un pod vizier-pem
conserva 1.2Gi
memoria para el almacenamiento de datos.
Si desea especificar una cantidad diferente de memoria para almacenamiento a corto plazo, puede agregar el siguiente parámetro de configuración a su gráfico Helm durante la instalación. Por ejemplo, para 750MiB
de almacenamiento de datos a corto plazo, usarías:
$--set pixie-chart.dataCollectorParams.customPEMFlags.PL_TABLE_STORE_DATA_LIMIT_MB=750
Resolución de problemas
Para la resolución de problemas, consulte estos documentos: