Requirements
Before installing Pixie to your Kubernetes cluster, please ensure that your system meets the requirements below.
Please refer to the install guides for information on how to install Pixie to your K8s cluster.
Kubernetes
Kubernetes v1.21+
is required.
The following tables list Kubernetes environments that have been tested with Pixie.
Pixie may work on other K8s environments. If you find an unlisted K8s environment that works well, please let us know by opening a GitHub issue or by creating a pull request that updates
this doc.
Production Environments
K8s Environment | Support |
---|
AKS | Supported |
EKS | Supported (includes support on Bottlerocket AMIs) |
EKS Fargate | Not Supported (Fargate does not support eBPF) |
GKE | Supported |
GKE Autopilot | Not Supported (Autopilot does not support eBPF) |
OKE | Supported |
OpenShift | Supported |
kOps | Supported |
Self-hosted | Generally supported, see requirements below including Linux kernel version. |
Local Development Environments
For local development, we recommend using Minikube with a VM driver (kvm2
on Linux, hyperkit
on Mac). Note that Kubernetes environments that run inside a container are not currently supported.
Operating System
Pixie runs on Linux nodes only. You can configure Pixie to deploy to a subset of the nodes in your cluster.
| Support | Version |
---|
Linux | Supported | v4.14+ |
Windows | Not Supported | Not in roadmap |
Linux Distribution
The following table lists Linux distributions that are known to work with Pixie.
| Version |
---|
CentOS | 7.3+ |
Debian | 10+ |
RedHat Enterprise Linux | 8+ |
Ubuntu | 18.04+ |
We recommended that Linux headers be installed on a cluster's nodes.
Pixie may also work on other distributions. If you find an unlisted Linux distribution that works well, please let us know by opening a GitHub issue or by creating a pull request that updates
this doc.
CPU
Pixie requires an x86-64
architecture.
| Support |
---|
x86-64 | Supported |
ARM | Supported |
Memory
Pixie requires the following memory per node:
Minimum | Notes |
---|
1GiB | To accommodate application pods, we recommend using no more than 25% of the nodes' total memory for Pixie. |
Pixie deploys its PEMs as a DaemonSet on your cluster in order to collect and store telemetry data. The default memory limit is 2Gi per PEM. The lowest recommended value is 1Gi per PEM. For more information on how to configure Pixie's memory usage, see the Tuning Memory Usage page.
Network Traffic
Pixie's Vizier module sends outgoing HTTPS/2 requests to Pixie's Cloud on port 443
.
Your cluster's telemetry data flows through Pixie's Cloud via a reverse proxy as encrypted traffic without any persistence. This allows users to access data without being in the same VPC/network as the cluster. Pixie offers end-to-end encryption for telemetry data in flight.
To install Pixie in an air gapped environment, see this
install guide.
Pod Security Context
Pixie interacts with the Linux kernel to install BPF programs to collect telemetry data. In order to install BPF programs, Pixie vizier-pem-*
pods require privileged access.