Istio provides multiple profiles for Istio installation in the Kubernetes cluster. Istio already provides exhaustive documentation about the various profiles and which one to use. The information could be overwhelming for some, so putting the differences in a short and simple format. Note that the post shows the control plane components, not the addons like Kiali.
Prerequisites: Assuming you have istioctl installed on your machine.
Istio supports the following profiles:
- demo
- default
- minimal
remote
- empty
- preview
You can check the provided components by running the following command to list the components in the “demo” profile. Similarly, change the profile name to a different profile in the below command to get their respective components.
istioctl profile dump demo --output json |jq '.spec.components' |jq '(.[] | objects, (arrays[] | objects)) |= with_entries(select(.key | IN("enabled")))'
{
"base": {
"enabled": true
},
"cni": {
"enabled": false
},
"egressGateways": [
{
"enabled": true
}
],
"ingressGateways": [
{
"enabled": true
}
],
"istiodRemote": {
"enabled": false
},
"pilot": {
"enabled": true
}
}
Reference:
https://istio.io/latest/docs/setup/additional-setup/config-profiles/