En este documento, se muestra cómo crear un clúster que no use kube-proxy
.
kube-proxy
es un controlador que se ejecuta en cada nodo trabajador de un clúster. Supervisa los objetos Service de Kubernetes y crea reglas iptables para reenviar paquetes que se envían a direcciones de Service. Una alternativa al uso de kube-proxy
y de iptables es usar Dataplane V2 en el modo kube-proxy-replacement. Esto permite quitar kube-proxy
del clúster.
Sistemas operativos compatibles
Para crear un clúster que no use kube-proxy
, usa uno de los sistemas operativos Red Hat Enterprise Linux admitidos. Los clústeres que usan Ubuntu no admiten esta función.
Ventajas de quitar kube-proxy
Evita el consumo de recursos necesario para mantener un gran conjunto de reglas de iptables.
Mejora el rendimiento. Crear reglas de iptables requiere mucho tiempo, en especial para clústeres grandes.
Crear un clúster sin kube-proxy
Sigue las instrucciones de uno de los temas para crear clústeres.
Cuando completes el archivo de configuración del clúster, incluye la siguiente anotación:
preview.baremetal.cluster.gke.io/kube-proxy-free: "enable"
Por ejemplo:
apiVersion: baremetal.cluster.gke.io/v1 kind: Cluster metadata: name: alice namespace: cluster-alice annotations: preview.baremetal.cluster.gke.io/kube-proxy-free: "enable" ...
Verifica que kube-proxy
no esté en tu clúster
Enumera los DaemonSets en el clúster:
kubectl --kubeconfig CLUSTER_KUBECONFIG \ get deamonsets --all-namespaces
Reemplaza CLUSTER_KUBECONFIG por la ruta de acceso del archivo kubeconfig del clúster.
Verifica que kube-proxy
no esté en la lista. Por ejemplo:
kube-system anetd kube-system audit-proxy kube-system etcd-defrag kube-system gke-metrics-agent kube-system kube-control-plane-metrics-proxy kube-system localpv kube-system metallb-speaker kube-system node-exporter kube-system stackdriver-log-forwarder