From bbc59da9340c96fe6dbd2674cfe6a11dd190072b Mon Sep 17 00:00:00 2001 From: ci-bot Date: Tue, 26 Dec 2023 08:34:55 +0000 Subject: [PATCH] Deployed 0dfdd621 to v1.12.x with MkDocs 1.5.3 and mike 1.1.2 --- current | 1 - current/404.html | 16 ++ .../index.html | 16 ++ .../advance/cilium-hubble-observe/index.html | 16 ++ .../advance/cilium-networkpolicy/index.html | 16 ++ current/advance/dhcp/index.html | 16 ++ current/advance/dpdk/index.html | 16 ++ current/advance/external-gateway/index.html | 16 ++ current/advance/fastpath/index.html | 16 ++ current/advance/multi-nic/index.html | 16 ++ current/advance/nat-policy-rule/index.html | 16 ++ current/advance/node-local-dns/index.html | 16 ++ current/advance/offload-corigine/index.html | 16 ++ current/advance/offload-mellanox/index.html | 16 ++ current/advance/overlay-with-route/index.html | 16 ++ current/advance/ovn-eip-fip-snat/index.html | 16 ++ current/advance/ovn-ipsec/index.html | 16 ++ .../ovn-l3-ha-based-ecmp-with-bfd/index.html | 16 ++ .../ovn-remote-port-mirroring/index.html | 16 ++ current/advance/performance-tuning/index.html | 16 ++ current/advance/security-group/index.html | 16 ++ current/advance/vip/index.html | 16 ++ current/advance/vpc-dns/index.html | 16 ++ current/advance/vpc-internal-lb/index.html | 16 ++ current/advance/vpc-peering/index.html | 16 ++ current/advance/windows/index.html | 16 ++ current/advance/with-bgp/index.html | 16 ++ current/advance/with-cilium/index.html | 16 ++ current/advance/with-openstack/index.html | 16 ++ current/advance/with-ovn-ic/index.html | 16 ++ current/advance/with-submariner/index.html | 16 ++ current/contact/index.html | 16 ++ .../index.html | 16 ++ .../advance/cilium-hubble-observe/index.html | 16 ++ .../advance/cilium-networkpolicy/index.html | 16 ++ current/en/advance/dhcp/index.html | 16 ++ current/en/advance/dpdk/index.html | 16 ++ .../en/advance/external-gateway/index.html | 16 ++ current/en/advance/fastpath/index.html | 16 ++ current/en/advance/multi-nic/index.html | 16 ++ current/en/advance/nat-policy-rule/index.html | 16 ++ current/en/advance/node-local-dns/index.html | 16 ++ .../en/advance/offload-corigine/index.html | 16 ++ .../en/advance/offload-mellanox/index.html | 16 ++ .../en/advance/overlay-with-route/index.html | 16 ++ .../en/advance/ovn-eip-fip-snat/index.html | 16 ++ current/en/advance/ovn-ipsec/index.html | 16 ++ .../ovn-l3-ha-based-ecmp-with-bfd/index.html | 16 ++ .../ovn-remote-port-mirroring/index.html | 16 ++ .../en/advance/performance-tuning/index.html | 16 ++ current/en/advance/security-group/index.html | 16 ++ current/en/advance/vip/index.html | 16 ++ current/en/advance/vpc-dns/index.html | 16 ++ current/en/advance/vpc-internal-lb/index.html | 16 ++ current/en/advance/vpc-peering/index.html | 16 ++ current/en/advance/windows/index.html | 16 ++ current/en/advance/with-bgp/index.html | 16 ++ current/en/advance/with-cilium/index.html | 16 ++ current/en/advance/with-openstack/index.html | 16 ++ current/en/advance/with-ovn-ic/index.html | 16 ++ current/en/advance/with-submariner/index.html | 16 ++ current/en/contact/index.html | 16 ++ current/en/guide/custom-routes/index.html | 16 ++ current/en/guide/dual-stack/index.html | 16 ++ current/en/guide/eip-snat/index.html | 16 ++ current/en/guide/ippool/index.html | 16 ++ .../en/guide/loadbalancer-service/index.html | 16 ++ current/en/guide/mirror/index.html | 16 ++ current/en/guide/networkpolicy-log/index.html | 16 ++ .../en/guide/prometheus-grafana/index.html | 16 ++ current/en/guide/prometheus/index.html | 16 ++ current/en/guide/qos/index.html | 16 ++ current/en/guide/setup-options/index.html | 16 ++ current/en/guide/static-ip-mac/index.html | 16 ++ current/en/guide/subnet/index.html | 16 ++ current/en/guide/vpc-qos/index.html | 16 ++ current/en/guide/vpc/index.html | 16 ++ current/en/guide/webhook/index.html | 16 ++ current/en/index.html | 16 ++ .../en/ops/change-default-subnet/index.html | 16 ++ current/en/ops/change-join-subnet/index.html | 16 ++ current/en/ops/change-log-level/index.html | 16 ++ .../en/ops/change-ovn-central-node/index.html | 16 ++ current/en/ops/delete-worker-node/index.html | 16 ++ current/en/ops/faq/index.html | 16 ++ current/en/ops/from-calico/index.html | 16 ++ current/en/ops/kubectl-ko/index.html | 16 ++ current/en/ops/recover-db/index.html | 16 ++ current/en/reference/architecture/index.html | 16 ++ current/en/reference/dev-env/index.html | 16 ++ .../reference/document-convention/index.html | 16 ++ current/en/reference/feature-stage/index.html | 16 ++ .../en/reference/iptables-rules/index.html | 16 ++ current/en/reference/kube-ovn-api/index.html | 16 ++ .../reference/kube-ovn-pinger-args/index.html | 16 ++ current/en/reference/metrics/index.html | 16 ++ .../reference/ovs-ovn-customized/index.html | 16 ++ .../en/reference/tunnel-protocol/index.html | 16 ++ .../en/reference/underlay-topology/index.html | 16 ++ current/en/start/one-step-install/index.html | 16 ++ current/en/start/prepare/index.html | 16 ++ current/en/start/sealos-install/index.html | 16 ++ current/en/start/underlay/index.html | 16 ++ current/en/start/uninstall/index.html | 16 ++ current/guide/custom-routes/index.html | 16 ++ current/guide/dual-stack/index.html | 16 ++ current/guide/eip-snat/index.html | 16 ++ current/guide/ippool/index.html | 16 ++ current/guide/loadbalancer-service/index.html | 16 ++ current/guide/mirror/index.html | 16 ++ current/guide/networkpolicy-log/index.html | 16 ++ current/guide/prometheus-grafana/index.html | 16 ++ current/guide/prometheus/index.html | 16 ++ current/guide/qos/index.html | 16 ++ current/guide/setup-options/index.html | 16 ++ current/guide/static-ip-mac/index.html | 16 ++ current/guide/subnet/index.html | 16 ++ current/guide/vpc-qos/index.html | 16 ++ current/guide/vpc/index.html | 16 ++ current/guide/webhook/index.html | 16 ++ current/index.html | 16 ++ current/ops/change-default-subnet/index.html | 16 ++ current/ops/change-join-subnet/index.html | 16 ++ current/ops/change-log-level/index.html | 16 ++ .../ops/change-ovn-central-node/index.html | 16 ++ current/ops/delete-worker-node/index.html | 16 ++ current/ops/faq/index.html | 16 ++ current/ops/from-calico/index.html | 16 ++ current/ops/kubectl-ko/index.html | 16 ++ current/ops/recover-db/index.html | 16 ++ current/reference/architecture/index.html | 16 ++ current/reference/dev-env/index.html | 16 ++ .../reference/document-convention/index.html | 16 ++ current/reference/feature-stage/index.html | 16 ++ current/reference/iptables-rules/index.html | 16 ++ current/reference/kube-ovn-api/index.html | 16 ++ .../reference/kube-ovn-pinger-args/index.html | 16 ++ current/reference/metrics/index.html | 16 ++ .../reference/ovs-ovn-customized/index.html | 16 ++ current/reference/tunnel-protocol/index.html | 16 ++ .../reference/underlay-topology/index.html | 16 ++ current/start/one-step-install/index.html | 16 ++ current/start/prepare/index.html | 16 ++ current/start/sealos-install/index.html | 16 ++ current/start/underlay/index.html | 16 ++ current/start/uninstall/index.html | 16 ++ .../index.html | 16 ++ .../advance/cilium-hubble-observe/index.html | 16 ++ .../advance/cilium-networkpolicy/index.html | 16 ++ current/zh/advance/dhcp/index.html | 16 ++ current/zh/advance/dpdk/index.html | 16 ++ .../zh/advance/external-gateway/index.html | 16 ++ current/zh/advance/fastpath/index.html | 16 ++ current/zh/advance/multi-nic/index.html | 16 ++ current/zh/advance/nat-policy-rule/index.html | 16 ++ current/zh/advance/node-local-dns/index.html | 16 ++ .../zh/advance/offload-corigine/index.html | 16 ++ .../zh/advance/offload-mellanox/index.html | 16 ++ .../zh/advance/overlay-with-route/index.html | 16 ++ .../zh/advance/ovn-eip-fip-snat/index.html | 16 ++ current/zh/advance/ovn-ipsec/index.html | 16 ++ .../ovn-l3-ha-based-ecmp-with-bfd/index.html | 16 ++ .../ovn-remote-port-mirroring/index.html | 16 ++ .../zh/advance/performance-tuning/index.html | 16 ++ current/zh/advance/security-group/index.html | 16 ++ current/zh/advance/vip/index.html | 16 ++ current/zh/advance/vpc-dns/index.html | 16 ++ current/zh/advance/vpc-internal-lb/index.html | 16 ++ current/zh/advance/vpc-peering/index.html | 16 ++ current/zh/advance/windows/index.html | 16 ++ current/zh/advance/with-bgp/index.html | 16 ++ current/zh/advance/with-cilium/index.html | 16 ++ current/zh/advance/with-openstack/index.html | 16 ++ current/zh/advance/with-ovn-ic/index.html | 16 ++ current/zh/advance/with-submariner/index.html | 16 ++ current/zh/contact/index.html | 16 ++ current/zh/guide/custom-routes/index.html | 16 ++ current/zh/guide/dual-stack/index.html | 16 ++ current/zh/guide/eip-snat/index.html | 16 ++ current/zh/guide/ippool/index.html | 16 ++ .../zh/guide/loadbalancer-service/index.html | 16 ++ current/zh/guide/mirror/index.html | 16 ++ current/zh/guide/networkpolicy-log/index.html | 16 ++ .../zh/guide/prometheus-grafana/index.html | 16 ++ current/zh/guide/prometheus/index.html | 16 ++ current/zh/guide/qos/index.html | 16 ++ current/zh/guide/setup-options/index.html | 16 ++ current/zh/guide/static-ip-mac/index.html | 16 ++ current/zh/guide/subnet/index.html | 16 ++ current/zh/guide/vpc-qos/index.html | 16 ++ current/zh/guide/vpc/index.html | 16 ++ current/zh/guide/webhook/index.html | 16 ++ current/zh/index.html | 16 ++ .../zh/ops/change-default-subnet/index.html | 16 ++ current/zh/ops/change-join-subnet/index.html | 16 ++ current/zh/ops/change-log-level/index.html | 16 ++ .../zh/ops/change-ovn-central-node/index.html | 16 ++ current/zh/ops/delete-worker-node/index.html | 16 ++ current/zh/ops/faq/index.html | 16 ++ current/zh/ops/from-calico/index.html | 16 ++ current/zh/ops/kubectl-ko/index.html | 16 ++ current/zh/ops/recover-db/index.html | 16 ++ current/zh/reference/architecture/index.html | 16 ++ current/zh/reference/dev-env/index.html | 16 ++ .../reference/document-convention/index.html | 16 ++ current/zh/reference/feature-stage/index.html | 16 ++ .../zh/reference/iptables-rules/index.html | 16 ++ current/zh/reference/kube-ovn-api/index.html | 16 ++ .../reference/kube-ovn-pinger-args/index.html | 16 ++ current/zh/reference/metrics/index.html | 16 ++ .../reference/ovs-ovn-customized/index.html | 16 ++ .../zh/reference/tunnel-protocol/index.html | 16 ++ .../zh/reference/underlay-topology/index.html | 16 ++ current/zh/start/one-step-install/index.html | 16 ++ current/zh/start/prepare/index.html | 16 ++ current/zh/start/sealos-install/index.html | 16 ++ current/zh/start/underlay/index.html | 16 ++ current/zh/start/uninstall/index.html | 16 ++ stable | 1 - stable/404.html | 16 ++ .../index.html | 16 ++ .../advance/cilium-hubble-observe/index.html | 16 ++ .../advance/cilium-networkpolicy/index.html | 16 ++ stable/advance/dhcp/index.html | 16 ++ stable/advance/dpdk/index.html | 16 ++ stable/advance/external-gateway/index.html | 16 ++ stable/advance/fastpath/index.html | 16 ++ stable/advance/multi-nic/index.html | 16 ++ stable/advance/nat-policy-rule/index.html | 16 ++ stable/advance/node-local-dns/index.html | 16 ++ stable/advance/offload-corigine/index.html | 16 ++ stable/advance/offload-mellanox/index.html | 16 ++ stable/advance/overlay-with-route/index.html | 16 ++ stable/advance/ovn-eip-fip-snat/index.html | 16 ++ stable/advance/ovn-ipsec/index.html | 16 ++ .../ovn-l3-ha-based-ecmp-with-bfd/index.html | 16 ++ .../ovn-remote-port-mirroring/index.html | 16 ++ stable/advance/performance-tuning/index.html | 16 ++ stable/advance/security-group/index.html | 16 ++ stable/advance/vip/index.html | 16 ++ stable/advance/vpc-dns/index.html | 16 ++ stable/advance/vpc-internal-lb/index.html | 16 ++ stable/advance/vpc-peering/index.html | 16 ++ stable/advance/windows/index.html | 16 ++ stable/advance/with-bgp/index.html | 16 ++ stable/advance/with-cilium/index.html | 16 ++ stable/advance/with-openstack/index.html | 16 ++ stable/advance/with-ovn-ic/index.html | 16 ++ stable/advance/with-submariner/index.html | 16 ++ stable/contact/index.html | 16 ++ .../index.html | 16 ++ .../advance/cilium-hubble-observe/index.html | 16 ++ .../advance/cilium-networkpolicy/index.html | 16 ++ stable/en/advance/dhcp/index.html | 16 ++ stable/en/advance/dpdk/index.html | 16 ++ stable/en/advance/external-gateway/index.html | 16 ++ stable/en/advance/fastpath/index.html | 16 ++ stable/en/advance/multi-nic/index.html | 16 ++ stable/en/advance/nat-policy-rule/index.html | 16 ++ stable/en/advance/node-local-dns/index.html | 16 ++ stable/en/advance/offload-corigine/index.html | 16 ++ stable/en/advance/offload-mellanox/index.html | 16 ++ .../en/advance/overlay-with-route/index.html | 16 ++ stable/en/advance/ovn-eip-fip-snat/index.html | 16 ++ stable/en/advance/ovn-ipsec/index.html | 16 ++ .../ovn-l3-ha-based-ecmp-with-bfd/index.html | 16 ++ .../ovn-remote-port-mirroring/index.html | 16 ++ .../en/advance/performance-tuning/index.html | 16 ++ stable/en/advance/security-group/index.html | 16 ++ stable/en/advance/vip/index.html | 16 ++ stable/en/advance/vpc-dns/index.html | 16 ++ stable/en/advance/vpc-internal-lb/index.html | 16 ++ stable/en/advance/vpc-peering/index.html | 16 ++ stable/en/advance/windows/index.html | 16 ++ stable/en/advance/with-bgp/index.html | 16 ++ stable/en/advance/with-cilium/index.html | 16 ++ stable/en/advance/with-openstack/index.html | 16 ++ stable/en/advance/with-ovn-ic/index.html | 16 ++ stable/en/advance/with-submariner/index.html | 16 ++ stable/en/contact/index.html | 16 ++ stable/en/guide/custom-routes/index.html | 16 ++ stable/en/guide/dual-stack/index.html | 16 ++ stable/en/guide/eip-snat/index.html | 16 ++ stable/en/guide/ippool/index.html | 16 ++ .../en/guide/loadbalancer-service/index.html | 16 ++ stable/en/guide/mirror/index.html | 16 ++ stable/en/guide/networkpolicy-log/index.html | 16 ++ stable/en/guide/prometheus-grafana/index.html | 16 ++ stable/en/guide/prometheus/index.html | 16 ++ stable/en/guide/qos/index.html | 16 ++ stable/en/guide/setup-options/index.html | 16 ++ stable/en/guide/static-ip-mac/index.html | 16 ++ stable/en/guide/subnet/index.html | 16 ++ stable/en/guide/vpc-qos/index.html | 16 ++ stable/en/guide/vpc/index.html | 16 ++ stable/en/guide/webhook/index.html | 16 ++ stable/en/index.html | 16 ++ .../en/ops/change-default-subnet/index.html | 16 ++ stable/en/ops/change-join-subnet/index.html | 16 ++ stable/en/ops/change-log-level/index.html | 16 ++ .../en/ops/change-ovn-central-node/index.html | 16 ++ stable/en/ops/delete-worker-node/index.html | 16 ++ stable/en/ops/faq/index.html | 16 ++ stable/en/ops/from-calico/index.html | 16 ++ stable/en/ops/kubectl-ko/index.html | 16 ++ stable/en/ops/recover-db/index.html | 16 ++ stable/en/reference/architecture/index.html | 16 ++ stable/en/reference/dev-env/index.html | 16 ++ .../reference/document-convention/index.html | 16 ++ stable/en/reference/feature-stage/index.html | 16 ++ stable/en/reference/iptables-rules/index.html | 16 ++ stable/en/reference/kube-ovn-api/index.html | 16 ++ .../reference/kube-ovn-pinger-args/index.html | 16 ++ stable/en/reference/metrics/index.html | 16 ++ .../reference/ovs-ovn-customized/index.html | 16 ++ .../en/reference/tunnel-protocol/index.html | 16 ++ .../en/reference/underlay-topology/index.html | 16 ++ stable/en/start/one-step-install/index.html | 16 ++ stable/en/start/prepare/index.html | 16 ++ stable/en/start/sealos-install/index.html | 16 ++ stable/en/start/underlay/index.html | 16 ++ stable/en/start/uninstall/index.html | 16 ++ stable/guide/custom-routes/index.html | 16 ++ stable/guide/dual-stack/index.html | 16 ++ stable/guide/eip-snat/index.html | 16 ++ stable/guide/ippool/index.html | 16 ++ stable/guide/loadbalancer-service/index.html | 16 ++ stable/guide/mirror/index.html | 16 ++ stable/guide/networkpolicy-log/index.html | 16 ++ stable/guide/prometheus-grafana/index.html | 16 ++ stable/guide/prometheus/index.html | 16 ++ stable/guide/qos/index.html | 16 ++ stable/guide/setup-options/index.html | 16 ++ stable/guide/static-ip-mac/index.html | 16 ++ stable/guide/subnet/index.html | 16 ++ stable/guide/vpc-qos/index.html | 16 ++ stable/guide/vpc/index.html | 16 ++ stable/guide/webhook/index.html | 16 ++ stable/index.html | 16 ++ stable/ops/change-default-subnet/index.html | 16 ++ stable/ops/change-join-subnet/index.html | 16 ++ stable/ops/change-log-level/index.html | 16 ++ stable/ops/change-ovn-central-node/index.html | 16 ++ stable/ops/delete-worker-node/index.html | 16 ++ stable/ops/faq/index.html | 16 ++ stable/ops/from-calico/index.html | 16 ++ stable/ops/kubectl-ko/index.html | 16 ++ stable/ops/recover-db/index.html | 16 ++ stable/reference/architecture/index.html | 16 ++ stable/reference/dev-env/index.html | 16 ++ .../reference/document-convention/index.html | 16 ++ stable/reference/feature-stage/index.html | 16 ++ stable/reference/iptables-rules/index.html | 16 ++ stable/reference/kube-ovn-api/index.html | 16 ++ .../reference/kube-ovn-pinger-args/index.html | 16 ++ stable/reference/metrics/index.html | 16 ++ .../reference/ovs-ovn-customized/index.html | 16 ++ stable/reference/tunnel-protocol/index.html | 16 ++ stable/reference/underlay-topology/index.html | 16 ++ stable/start/one-step-install/index.html | 16 ++ stable/start/prepare/index.html | 16 ++ stable/start/sealos-install/index.html | 16 ++ stable/start/underlay/index.html | 16 ++ stable/start/uninstall/index.html | 16 ++ .../index.html | 16 ++ .../advance/cilium-hubble-observe/index.html | 16 ++ .../advance/cilium-networkpolicy/index.html | 16 ++ stable/zh/advance/dhcp/index.html | 16 ++ stable/zh/advance/dpdk/index.html | 16 ++ stable/zh/advance/external-gateway/index.html | 16 ++ stable/zh/advance/fastpath/index.html | 16 ++ stable/zh/advance/multi-nic/index.html | 16 ++ stable/zh/advance/nat-policy-rule/index.html | 16 ++ stable/zh/advance/node-local-dns/index.html | 16 ++ stable/zh/advance/offload-corigine/index.html | 16 ++ stable/zh/advance/offload-mellanox/index.html | 16 ++ .../zh/advance/overlay-with-route/index.html | 16 ++ stable/zh/advance/ovn-eip-fip-snat/index.html | 16 ++ stable/zh/advance/ovn-ipsec/index.html | 16 ++ .../ovn-l3-ha-based-ecmp-with-bfd/index.html | 16 ++ .../ovn-remote-port-mirroring/index.html | 16 ++ .../zh/advance/performance-tuning/index.html | 16 ++ stable/zh/advance/security-group/index.html | 16 ++ stable/zh/advance/vip/index.html | 16 ++ stable/zh/advance/vpc-dns/index.html | 16 ++ stable/zh/advance/vpc-internal-lb/index.html | 16 ++ stable/zh/advance/vpc-peering/index.html | 16 ++ stable/zh/advance/windows/index.html | 16 ++ stable/zh/advance/with-bgp/index.html | 16 ++ stable/zh/advance/with-cilium/index.html | 16 ++ stable/zh/advance/with-openstack/index.html | 16 ++ stable/zh/advance/with-ovn-ic/index.html | 16 ++ stable/zh/advance/with-submariner/index.html | 16 ++ stable/zh/contact/index.html | 16 ++ stable/zh/guide/custom-routes/index.html | 16 ++ stable/zh/guide/dual-stack/index.html | 16 ++ stable/zh/guide/eip-snat/index.html | 16 ++ stable/zh/guide/ippool/index.html | 16 ++ .../zh/guide/loadbalancer-service/index.html | 16 ++ stable/zh/guide/mirror/index.html | 16 ++ stable/zh/guide/networkpolicy-log/index.html | 16 ++ stable/zh/guide/prometheus-grafana/index.html | 16 ++ stable/zh/guide/prometheus/index.html | 16 ++ stable/zh/guide/qos/index.html | 16 ++ stable/zh/guide/setup-options/index.html | 16 ++ stable/zh/guide/static-ip-mac/index.html | 16 ++ stable/zh/guide/subnet/index.html | 16 ++ stable/zh/guide/vpc-qos/index.html | 16 ++ stable/zh/guide/vpc/index.html | 16 ++ stable/zh/guide/webhook/index.html | 16 ++ stable/zh/index.html | 16 ++ .../zh/ops/change-default-subnet/index.html | 16 ++ stable/zh/ops/change-join-subnet/index.html | 16 ++ stable/zh/ops/change-log-level/index.html | 16 ++ .../zh/ops/change-ovn-central-node/index.html | 16 ++ stable/zh/ops/delete-worker-node/index.html | 16 ++ stable/zh/ops/faq/index.html | 16 ++ stable/zh/ops/from-calico/index.html | 16 ++ stable/zh/ops/kubectl-ko/index.html | 16 ++ stable/zh/ops/recover-db/index.html | 16 ++ stable/zh/reference/architecture/index.html | 16 ++ stable/zh/reference/dev-env/index.html | 16 ++ .../reference/document-convention/index.html | 16 ++ stable/zh/reference/feature-stage/index.html | 16 ++ stable/zh/reference/iptables-rules/index.html | 16 ++ stable/zh/reference/kube-ovn-api/index.html | 16 ++ .../reference/kube-ovn-pinger-args/index.html | 16 ++ stable/zh/reference/metrics/index.html | 16 ++ .../reference/ovs-ovn-customized/index.html | 16 ++ .../zh/reference/tunnel-protocol/index.html | 16 ++ .../zh/reference/underlay-topology/index.html | 16 ++ stable/zh/start/one-step-install/index.html | 16 ++ stable/zh/start/prepare/index.html | 16 ++ stable/zh/start/sealos-install/index.html | 16 ++ stable/zh/start/underlay/index.html | 16 ++ stable/zh/start/uninstall/index.html | 16 ++ v1.12.x/404.html | 2 +- .../index.html | 2 +- .../advance/cilium-hubble-observe/index.html | 2 +- .../advance/cilium-networkpolicy/index.html | 2 +- v1.12.x/advance/dhcp/index.html | 2 +- v1.12.x/advance/dpdk/index.html | 2 +- v1.12.x/advance/external-gateway/index.html | 2 +- v1.12.x/advance/fastpath/index.html | 2 +- v1.12.x/advance/multi-nic/index.html | 2 +- v1.12.x/advance/nat-policy-rule/index.html | 2 +- v1.12.x/advance/node-local-dns/index.html | 2 +- v1.12.x/advance/offload-corigine/index.html | 2 +- v1.12.x/advance/offload-mellanox/index.html | 2 +- v1.12.x/advance/overlay-with-route/index.html | 2 +- v1.12.x/advance/ovn-eip-fip-snat/index.html | 2 +- v1.12.x/advance/ovn-ipsec/index.html | 2 +- .../ovn-l3-ha-based-ecmp-with-bfd/index.html | 2 +- .../ovn-remote-port-mirroring/index.html | 2 +- v1.12.x/advance/performance-tuning/index.html | 2 +- v1.12.x/advance/security-group/index.html | 2 +- v1.12.x/advance/vip/index.html | 2 +- v1.12.x/advance/vpc-dns/index.html | 2 +- v1.12.x/advance/vpc-internal-lb/index.html | 2 +- v1.12.x/advance/vpc-peering/index.html | 2 +- v1.12.x/advance/windows/index.html | 2 +- v1.12.x/advance/with-bgp/index.html | 2 +- v1.12.x/advance/with-cilium/index.html | 2 +- v1.12.x/advance/with-openstack/index.html | 2 +- v1.12.x/advance/with-ovn-ic/index.html | 2 +- v1.12.x/advance/with-submariner/index.html | 2 +- v1.12.x/contact/index.html | 2 +- .../index.html | 8 +- .../advance/cilium-hubble-observe/index.html | 8 +- .../advance/cilium-networkpolicy/index.html | 8 +- v1.12.x/en/advance/dhcp/index.html | 8 +- v1.12.x/en/advance/dpdk/index.html | 8 +- .../en/advance/external-gateway/index.html | 8 +- v1.12.x/en/advance/fastpath/index.html | 8 +- v1.12.x/en/advance/multi-nic/index.html | 8 +- v1.12.x/en/advance/nat-policy-rule/index.html | 8 +- v1.12.x/en/advance/node-local-dns/index.html | 8 +- .../en/advance/offload-corigine/index.html | 8 +- .../en/advance/offload-mellanox/index.html | 8 +- .../en/advance/overlay-with-route/index.html | 8 +- .../en/advance/ovn-eip-fip-snat/index.html | 8 +- v1.12.x/en/advance/ovn-ipsec/index.html | 8 +- .../ovn-l3-ha-based-ecmp-with-bfd/index.html | 8 +- .../ovn-remote-port-mirroring/index.html | 8 +- .../en/advance/performance-tuning/index.html | 8 +- v1.12.x/en/advance/security-group/index.html | 8 +- v1.12.x/en/advance/vip/index.html | 8 +- v1.12.x/en/advance/vpc-dns/index.html | 8 +- v1.12.x/en/advance/vpc-internal-lb/index.html | 8 +- v1.12.x/en/advance/vpc-peering/index.html | 8 +- v1.12.x/en/advance/windows/index.html | 8 +- v1.12.x/en/advance/with-bgp/index.html | 8 +- v1.12.x/en/advance/with-cilium/index.html | 8 +- v1.12.x/en/advance/with-openstack/index.html | 8 +- v1.12.x/en/advance/with-ovn-ic/index.html | 8 +- v1.12.x/en/advance/with-submariner/index.html | 8 +- v1.12.x/en/contact/index.html | 6 +- v1.12.x/en/guide/custom-routes/index.html | 8 +- v1.12.x/en/guide/dual-stack/index.html | 8 +- v1.12.x/en/guide/eip-snat/index.html | 8 +- v1.12.x/en/guide/ippool/index.html | 8 +- .../en/guide/loadbalancer-service/index.html | 8 +- v1.12.x/en/guide/mirror/index.html | 8 +- v1.12.x/en/guide/networkpolicy-log/index.html | 8 +- .../en/guide/prometheus-grafana/index.html | 8 +- v1.12.x/en/guide/prometheus/index.html | 8 +- v1.12.x/en/guide/qos/index.html | 8 +- v1.12.x/en/guide/setup-options/index.html | 8 +- v1.12.x/en/guide/static-ip-mac/index.html | 8 +- v1.12.x/en/guide/subnet/index.html | 8 +- v1.12.x/en/guide/vpc-qos/index.html | 8 +- v1.12.x/en/guide/vpc/index.html | 8 +- v1.12.x/en/guide/webhook/index.html | 8 +- v1.12.x/en/index.html | 6 +- .../en/ops/change-default-subnet/index.html | 8 +- v1.12.x/en/ops/change-join-subnet/index.html | 8 +- v1.12.x/en/ops/change-log-level/index.html | 8 +- .../en/ops/change-ovn-central-node/index.html | 8 +- v1.12.x/en/ops/delete-worker-node/index.html | 8 +- v1.12.x/en/ops/faq/index.html | 8 +- v1.12.x/en/ops/from-calico/index.html | 8 +- v1.12.x/en/ops/kubectl-ko/index.html | 8 +- v1.12.x/en/ops/recover-db/index.html | 8 +- v1.12.x/en/reference/architecture/index.html | 6 +- v1.12.x/en/reference/dev-env/index.html | 8 +- .../reference/document-convention/index.html | 8 +- v1.12.x/en/reference/feature-stage/index.html | 6 +- .../en/reference/iptables-rules/index.html | 6 +- v1.12.x/en/reference/kube-ovn-api/index.html | 6 +- .../reference/kube-ovn-pinger-args/index.html | 6 +- v1.12.x/en/reference/metrics/index.html | 6 +- .../reference/ovs-ovn-customized/index.html | 6 +- .../en/reference/tunnel-protocol/index.html | 6 +- .../en/reference/underlay-topology/index.html | 6 +- v1.12.x/en/requirements.txt | 2 +- v1.12.x/en/start/one-step-install/index.html | 8 +- v1.12.x/en/start/prepare/index.html | 6 +- v1.12.x/en/start/sealos-install/index.html | 8 +- v1.12.x/en/start/underlay/index.html | 8 +- v1.12.x/en/start/uninstall/index.html | 8 +- v1.12.x/guide/custom-routes/index.html | 2 +- v1.12.x/guide/dual-stack/index.html | 2 +- v1.12.x/guide/eip-snat/index.html | 2 +- v1.12.x/guide/ippool/index.html | 2 +- v1.12.x/guide/loadbalancer-service/index.html | 2 +- v1.12.x/guide/mirror/index.html | 2 +- v1.12.x/guide/networkpolicy-log/index.html | 2 +- v1.12.x/guide/prometheus-grafana/index.html | 2 +- v1.12.x/guide/prometheus/index.html | 2 +- v1.12.x/guide/qos/index.html | 2 +- v1.12.x/guide/setup-options/index.html | 2 +- v1.12.x/guide/static-ip-mac/index.html | 2 +- v1.12.x/guide/subnet/index.html | 2 +- v1.12.x/guide/vpc-qos/index.html | 2 +- v1.12.x/guide/vpc/index.html | 2 +- v1.12.x/guide/webhook/index.html | 2 +- v1.12.x/index.html | 2 +- v1.12.x/ops/change-default-subnet/index.html | 2 +- v1.12.x/ops/change-join-subnet/index.html | 2 +- v1.12.x/ops/change-log-level/index.html | 2 +- .../ops/change-ovn-central-node/index.html | 2 +- v1.12.x/ops/delete-worker-node/index.html | 2 +- v1.12.x/ops/faq/index.html | 2 +- v1.12.x/ops/from-calico/index.html | 2 +- v1.12.x/ops/kubectl-ko/index.html | 2 +- v1.12.x/ops/recover-db/index.html | 2 +- v1.12.x/reference/architecture/index.html | 2 +- v1.12.x/reference/dev-env/index.html | 2 +- .../reference/document-convention/index.html | 2 +- v1.12.x/reference/feature-stage/index.html | 2 +- v1.12.x/reference/iptables-rules/index.html | 2 +- v1.12.x/reference/kube-ovn-api/index.html | 2 +- .../reference/kube-ovn-pinger-args/index.html | 2 +- v1.12.x/reference/metrics/index.html | 2 +- .../reference/ovs-ovn-customized/index.html | 2 +- v1.12.x/reference/tunnel-protocol/index.html | 2 +- .../reference/underlay-topology/index.html | 2 +- v1.12.x/requirements.txt | 2 +- v1.12.x/sitemap.xml | 144 +++++++++--------- v1.12.x/sitemap.xml.gz | Bin 1543 -> 1543 bytes v1.12.x/start/one-step-install/index.html | 2 +- v1.12.x/start/prepare/index.html | 2 +- v1.12.x/start/sealos-install/index.html | 2 +- v1.12.x/start/underlay/index.html | 2 +- v1.12.x/start/uninstall/index.html | 2 +- .../index.html | 2 +- .../advance/cilium-hubble-observe/index.html | 2 +- .../advance/cilium-networkpolicy/index.html | 2 +- v1.12.x/zh/advance/dhcp/index.html | 2 +- v1.12.x/zh/advance/dpdk/index.html | 2 +- .../zh/advance/external-gateway/index.html | 2 +- v1.12.x/zh/advance/fastpath/index.html | 2 +- v1.12.x/zh/advance/multi-nic/index.html | 2 +- v1.12.x/zh/advance/nat-policy-rule/index.html | 2 +- v1.12.x/zh/advance/node-local-dns/index.html | 2 +- .../zh/advance/offload-corigine/index.html | 2 +- .../zh/advance/offload-mellanox/index.html | 2 +- .../zh/advance/overlay-with-route/index.html | 2 +- .../zh/advance/ovn-eip-fip-snat/index.html | 2 +- v1.12.x/zh/advance/ovn-ipsec/index.html | 2 +- .../ovn-l3-ha-based-ecmp-with-bfd/index.html | 2 +- .../ovn-remote-port-mirroring/index.html | 2 +- .../zh/advance/performance-tuning/index.html | 2 +- v1.12.x/zh/advance/security-group/index.html | 2 +- v1.12.x/zh/advance/vip/index.html | 2 +- v1.12.x/zh/advance/vpc-dns/index.html | 2 +- v1.12.x/zh/advance/vpc-internal-lb/index.html | 2 +- v1.12.x/zh/advance/vpc-peering/index.html | 2 +- v1.12.x/zh/advance/windows/index.html | 2 +- v1.12.x/zh/advance/with-bgp/index.html | 2 +- v1.12.x/zh/advance/with-cilium/index.html | 2 +- v1.12.x/zh/advance/with-openstack/index.html | 2 +- v1.12.x/zh/advance/with-ovn-ic/index.html | 2 +- v1.12.x/zh/advance/with-submariner/index.html | 2 +- v1.12.x/zh/contact/index.html | 2 +- v1.12.x/zh/guide/custom-routes/index.html | 2 +- v1.12.x/zh/guide/dual-stack/index.html | 2 +- v1.12.x/zh/guide/eip-snat/index.html | 2 +- v1.12.x/zh/guide/ippool/index.html | 2 +- .../zh/guide/loadbalancer-service/index.html | 2 +- v1.12.x/zh/guide/mirror/index.html | 2 +- v1.12.x/zh/guide/networkpolicy-log/index.html | 2 +- .../zh/guide/prometheus-grafana/index.html | 2 +- v1.12.x/zh/guide/prometheus/index.html | 2 +- v1.12.x/zh/guide/qos/index.html | 2 +- v1.12.x/zh/guide/setup-options/index.html | 2 +- v1.12.x/zh/guide/static-ip-mac/index.html | 2 +- v1.12.x/zh/guide/subnet/index.html | 2 +- v1.12.x/zh/guide/vpc-qos/index.html | 2 +- v1.12.x/zh/guide/vpc/index.html | 2 +- v1.12.x/zh/guide/webhook/index.html | 2 +- v1.12.x/zh/index.html | 2 +- .../zh/ops/change-default-subnet/index.html | 2 +- v1.12.x/zh/ops/change-join-subnet/index.html | 2 +- v1.12.x/zh/ops/change-log-level/index.html | 2 +- .../zh/ops/change-ovn-central-node/index.html | 2 +- v1.12.x/zh/ops/delete-worker-node/index.html | 2 +- v1.12.x/zh/ops/faq/index.html | 2 +- v1.12.x/zh/ops/from-calico/index.html | 2 +- v1.12.x/zh/ops/kubectl-ko/index.html | 2 +- v1.12.x/zh/ops/recover-db/index.html | 2 +- v1.12.x/zh/reference/architecture/index.html | 2 +- v1.12.x/zh/reference/dev-env/index.html | 2 +- .../reference/document-convention/index.html | 2 +- v1.12.x/zh/reference/feature-stage/index.html | 2 +- .../zh/reference/iptables-rules/index.html | 2 +- v1.12.x/zh/reference/kube-ovn-api/index.html | 2 +- .../reference/kube-ovn-pinger-args/index.html | 2 +- v1.12.x/zh/reference/metrics/index.html | 2 +- .../reference/ovs-ovn-customized/index.html | 2 +- .../zh/reference/tunnel-protocol/index.html | 2 +- .../zh/reference/underlay-topology/index.html | 2 +- v1.12.x/zh/requirements.txt | 2 +- v1.12.x/zh/start/one-step-install/index.html | 2 +- v1.12.x/zh/start/prepare/index.html | 2 +- v1.12.x/zh/start/sealos-install/index.html | 2 +- v1.12.x/zh/start/underlay/index.html | 2 +- v1.12.x/zh/start/uninstall/index.html | 2 +- 658 files changed, 7440 insertions(+), 498 deletions(-) delete mode 120000 current create mode 100644 current/404.html create mode 100644 current/advance/accelerate-intra-node-tcp-with-ebpf/index.html create mode 100644 current/advance/cilium-hubble-observe/index.html create mode 100644 current/advance/cilium-networkpolicy/index.html create mode 100644 current/advance/dhcp/index.html create mode 100644 current/advance/dpdk/index.html create mode 100644 current/advance/external-gateway/index.html create mode 100644 current/advance/fastpath/index.html create mode 100644 current/advance/multi-nic/index.html create mode 100644 current/advance/nat-policy-rule/index.html create mode 100644 current/advance/node-local-dns/index.html create mode 100644 current/advance/offload-corigine/index.html create mode 100644 current/advance/offload-mellanox/index.html create mode 100644 current/advance/overlay-with-route/index.html create mode 100644 current/advance/ovn-eip-fip-snat/index.html create mode 100644 current/advance/ovn-ipsec/index.html create mode 100644 current/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html create mode 100644 current/advance/ovn-remote-port-mirroring/index.html create mode 100644 current/advance/performance-tuning/index.html create mode 100644 current/advance/security-group/index.html create mode 100644 current/advance/vip/index.html create mode 100644 current/advance/vpc-dns/index.html create mode 100644 current/advance/vpc-internal-lb/index.html create mode 100644 current/advance/vpc-peering/index.html create mode 100644 current/advance/windows/index.html create mode 100644 current/advance/with-bgp/index.html create mode 100644 current/advance/with-cilium/index.html create mode 100644 current/advance/with-openstack/index.html create mode 100644 current/advance/with-ovn-ic/index.html create mode 100644 current/advance/with-submariner/index.html create mode 100644 current/contact/index.html create mode 100644 current/en/advance/accelerate-intra-node-tcp-with-ebpf/index.html create mode 100644 current/en/advance/cilium-hubble-observe/index.html create mode 100644 current/en/advance/cilium-networkpolicy/index.html create mode 100644 current/en/advance/dhcp/index.html create mode 100644 current/en/advance/dpdk/index.html create mode 100644 current/en/advance/external-gateway/index.html create mode 100644 current/en/advance/fastpath/index.html create mode 100644 current/en/advance/multi-nic/index.html create mode 100644 current/en/advance/nat-policy-rule/index.html create mode 100644 current/en/advance/node-local-dns/index.html create mode 100644 current/en/advance/offload-corigine/index.html create mode 100644 current/en/advance/offload-mellanox/index.html create mode 100644 current/en/advance/overlay-with-route/index.html create mode 100644 current/en/advance/ovn-eip-fip-snat/index.html create mode 100644 current/en/advance/ovn-ipsec/index.html create mode 100644 current/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html create mode 100644 current/en/advance/ovn-remote-port-mirroring/index.html create mode 100644 current/en/advance/performance-tuning/index.html create mode 100644 current/en/advance/security-group/index.html create mode 100644 current/en/advance/vip/index.html create mode 100644 current/en/advance/vpc-dns/index.html create mode 100644 current/en/advance/vpc-internal-lb/index.html create mode 100644 current/en/advance/vpc-peering/index.html create mode 100644 current/en/advance/windows/index.html create mode 100644 current/en/advance/with-bgp/index.html create mode 100644 current/en/advance/with-cilium/index.html create mode 100644 current/en/advance/with-openstack/index.html create mode 100644 current/en/advance/with-ovn-ic/index.html create mode 100644 current/en/advance/with-submariner/index.html create mode 100644 current/en/contact/index.html create mode 100644 current/en/guide/custom-routes/index.html create mode 100644 current/en/guide/dual-stack/index.html create mode 100644 current/en/guide/eip-snat/index.html create mode 100644 current/en/guide/ippool/index.html create mode 100644 current/en/guide/loadbalancer-service/index.html create mode 100644 current/en/guide/mirror/index.html create mode 100644 current/en/guide/networkpolicy-log/index.html create mode 100644 current/en/guide/prometheus-grafana/index.html create mode 100644 current/en/guide/prometheus/index.html create mode 100644 current/en/guide/qos/index.html create mode 100644 current/en/guide/setup-options/index.html create mode 100644 current/en/guide/static-ip-mac/index.html create mode 100644 current/en/guide/subnet/index.html create mode 100644 current/en/guide/vpc-qos/index.html create mode 100644 current/en/guide/vpc/index.html create mode 100644 current/en/guide/webhook/index.html create mode 100644 current/en/index.html create mode 100644 current/en/ops/change-default-subnet/index.html create mode 100644 current/en/ops/change-join-subnet/index.html create mode 100644 current/en/ops/change-log-level/index.html create mode 100644 current/en/ops/change-ovn-central-node/index.html create mode 100644 current/en/ops/delete-worker-node/index.html create mode 100644 current/en/ops/faq/index.html create mode 100644 current/en/ops/from-calico/index.html create mode 100644 current/en/ops/kubectl-ko/index.html create mode 100644 current/en/ops/recover-db/index.html create mode 100644 current/en/reference/architecture/index.html create mode 100644 current/en/reference/dev-env/index.html create mode 100644 current/en/reference/document-convention/index.html create mode 100644 current/en/reference/feature-stage/index.html create mode 100644 current/en/reference/iptables-rules/index.html create mode 100644 current/en/reference/kube-ovn-api/index.html create mode 100644 current/en/reference/kube-ovn-pinger-args/index.html create mode 100644 current/en/reference/metrics/index.html create mode 100644 current/en/reference/ovs-ovn-customized/index.html create mode 100644 current/en/reference/tunnel-protocol/index.html create mode 100644 current/en/reference/underlay-topology/index.html create mode 100644 current/en/start/one-step-install/index.html create mode 100644 current/en/start/prepare/index.html create mode 100644 current/en/start/sealos-install/index.html create mode 100644 current/en/start/underlay/index.html create mode 100644 current/en/start/uninstall/index.html create mode 100644 current/guide/custom-routes/index.html create mode 100644 current/guide/dual-stack/index.html create mode 100644 current/guide/eip-snat/index.html create mode 100644 current/guide/ippool/index.html create mode 100644 current/guide/loadbalancer-service/index.html create mode 100644 current/guide/mirror/index.html create mode 100644 current/guide/networkpolicy-log/index.html create mode 100644 current/guide/prometheus-grafana/index.html create mode 100644 current/guide/prometheus/index.html create mode 100644 current/guide/qos/index.html create mode 100644 current/guide/setup-options/index.html create mode 100644 current/guide/static-ip-mac/index.html create mode 100644 current/guide/subnet/index.html create mode 100644 current/guide/vpc-qos/index.html create mode 100644 current/guide/vpc/index.html create mode 100644 current/guide/webhook/index.html create mode 100644 current/index.html create mode 100644 current/ops/change-default-subnet/index.html create mode 100644 current/ops/change-join-subnet/index.html create mode 100644 current/ops/change-log-level/index.html create mode 100644 current/ops/change-ovn-central-node/index.html create mode 100644 current/ops/delete-worker-node/index.html create mode 100644 current/ops/faq/index.html create mode 100644 current/ops/from-calico/index.html create mode 100644 current/ops/kubectl-ko/index.html create mode 100644 current/ops/recover-db/index.html create mode 100644 current/reference/architecture/index.html create mode 100644 current/reference/dev-env/index.html create mode 100644 current/reference/document-convention/index.html create mode 100644 current/reference/feature-stage/index.html create mode 100644 current/reference/iptables-rules/index.html create mode 100644 current/reference/kube-ovn-api/index.html create mode 100644 current/reference/kube-ovn-pinger-args/index.html create mode 100644 current/reference/metrics/index.html create mode 100644 current/reference/ovs-ovn-customized/index.html create mode 100644 current/reference/tunnel-protocol/index.html create mode 100644 current/reference/underlay-topology/index.html create mode 100644 current/start/one-step-install/index.html create mode 100644 current/start/prepare/index.html create mode 100644 current/start/sealos-install/index.html create mode 100644 current/start/underlay/index.html create mode 100644 current/start/uninstall/index.html create mode 100644 current/zh/advance/accelerate-intra-node-tcp-with-ebpf/index.html create mode 100644 current/zh/advance/cilium-hubble-observe/index.html create mode 100644 current/zh/advance/cilium-networkpolicy/index.html create mode 100644 current/zh/advance/dhcp/index.html create mode 100644 current/zh/advance/dpdk/index.html create mode 100644 current/zh/advance/external-gateway/index.html create mode 100644 current/zh/advance/fastpath/index.html create mode 100644 current/zh/advance/multi-nic/index.html create mode 100644 current/zh/advance/nat-policy-rule/index.html create mode 100644 current/zh/advance/node-local-dns/index.html create mode 100644 current/zh/advance/offload-corigine/index.html create mode 100644 current/zh/advance/offload-mellanox/index.html create mode 100644 current/zh/advance/overlay-with-route/index.html create mode 100644 current/zh/advance/ovn-eip-fip-snat/index.html create mode 100644 current/zh/advance/ovn-ipsec/index.html create mode 100644 current/zh/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html create mode 100644 current/zh/advance/ovn-remote-port-mirroring/index.html create mode 100644 current/zh/advance/performance-tuning/index.html create mode 100644 current/zh/advance/security-group/index.html create mode 100644 current/zh/advance/vip/index.html create mode 100644 current/zh/advance/vpc-dns/index.html create mode 100644 current/zh/advance/vpc-internal-lb/index.html create mode 100644 current/zh/advance/vpc-peering/index.html create mode 100644 current/zh/advance/windows/index.html create mode 100644 current/zh/advance/with-bgp/index.html create mode 100644 current/zh/advance/with-cilium/index.html create mode 100644 current/zh/advance/with-openstack/index.html create mode 100644 current/zh/advance/with-ovn-ic/index.html create mode 100644 current/zh/advance/with-submariner/index.html create mode 100644 current/zh/contact/index.html create mode 100644 current/zh/guide/custom-routes/index.html create mode 100644 current/zh/guide/dual-stack/index.html create mode 100644 current/zh/guide/eip-snat/index.html create mode 100644 current/zh/guide/ippool/index.html create mode 100644 current/zh/guide/loadbalancer-service/index.html create mode 100644 current/zh/guide/mirror/index.html create mode 100644 current/zh/guide/networkpolicy-log/index.html create mode 100644 current/zh/guide/prometheus-grafana/index.html create mode 100644 current/zh/guide/prometheus/index.html create mode 100644 current/zh/guide/qos/index.html create mode 100644 current/zh/guide/setup-options/index.html create mode 100644 current/zh/guide/static-ip-mac/index.html create mode 100644 current/zh/guide/subnet/index.html create mode 100644 current/zh/guide/vpc-qos/index.html create mode 100644 current/zh/guide/vpc/index.html create mode 100644 current/zh/guide/webhook/index.html create mode 100644 current/zh/index.html create mode 100644 current/zh/ops/change-default-subnet/index.html create mode 100644 current/zh/ops/change-join-subnet/index.html create mode 100644 current/zh/ops/change-log-level/index.html create mode 100644 current/zh/ops/change-ovn-central-node/index.html create mode 100644 current/zh/ops/delete-worker-node/index.html create mode 100644 current/zh/ops/faq/index.html create mode 100644 current/zh/ops/from-calico/index.html create mode 100644 current/zh/ops/kubectl-ko/index.html create mode 100644 current/zh/ops/recover-db/index.html create mode 100644 current/zh/reference/architecture/index.html create mode 100644 current/zh/reference/dev-env/index.html create mode 100644 current/zh/reference/document-convention/index.html create mode 100644 current/zh/reference/feature-stage/index.html create mode 100644 current/zh/reference/iptables-rules/index.html create mode 100644 current/zh/reference/kube-ovn-api/index.html create mode 100644 current/zh/reference/kube-ovn-pinger-args/index.html create mode 100644 current/zh/reference/metrics/index.html create mode 100644 current/zh/reference/ovs-ovn-customized/index.html create mode 100644 current/zh/reference/tunnel-protocol/index.html create mode 100644 current/zh/reference/underlay-topology/index.html create mode 100644 current/zh/start/one-step-install/index.html create mode 100644 current/zh/start/prepare/index.html create mode 100644 current/zh/start/sealos-install/index.html create mode 100644 current/zh/start/underlay/index.html create mode 100644 current/zh/start/uninstall/index.html delete mode 120000 stable create mode 100644 stable/404.html create mode 100644 stable/advance/accelerate-intra-node-tcp-with-ebpf/index.html create mode 100644 stable/advance/cilium-hubble-observe/index.html create mode 100644 stable/advance/cilium-networkpolicy/index.html create mode 100644 stable/advance/dhcp/index.html create mode 100644 stable/advance/dpdk/index.html create mode 100644 stable/advance/external-gateway/index.html create mode 100644 stable/advance/fastpath/index.html create mode 100644 stable/advance/multi-nic/index.html create mode 100644 stable/advance/nat-policy-rule/index.html create mode 100644 stable/advance/node-local-dns/index.html create mode 100644 stable/advance/offload-corigine/index.html create mode 100644 stable/advance/offload-mellanox/index.html create mode 100644 stable/advance/overlay-with-route/index.html create mode 100644 stable/advance/ovn-eip-fip-snat/index.html create mode 100644 stable/advance/ovn-ipsec/index.html create mode 100644 stable/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html create mode 100644 stable/advance/ovn-remote-port-mirroring/index.html create mode 100644 stable/advance/performance-tuning/index.html create mode 100644 stable/advance/security-group/index.html create mode 100644 stable/advance/vip/index.html create mode 100644 stable/advance/vpc-dns/index.html create mode 100644 stable/advance/vpc-internal-lb/index.html create mode 100644 stable/advance/vpc-peering/index.html create mode 100644 stable/advance/windows/index.html create mode 100644 stable/advance/with-bgp/index.html create mode 100644 stable/advance/with-cilium/index.html create mode 100644 stable/advance/with-openstack/index.html create mode 100644 stable/advance/with-ovn-ic/index.html create mode 100644 stable/advance/with-submariner/index.html create mode 100644 stable/contact/index.html create mode 100644 stable/en/advance/accelerate-intra-node-tcp-with-ebpf/index.html create mode 100644 stable/en/advance/cilium-hubble-observe/index.html create mode 100644 stable/en/advance/cilium-networkpolicy/index.html create mode 100644 stable/en/advance/dhcp/index.html create mode 100644 stable/en/advance/dpdk/index.html create mode 100644 stable/en/advance/external-gateway/index.html create mode 100644 stable/en/advance/fastpath/index.html create mode 100644 stable/en/advance/multi-nic/index.html create mode 100644 stable/en/advance/nat-policy-rule/index.html create mode 100644 stable/en/advance/node-local-dns/index.html create mode 100644 stable/en/advance/offload-corigine/index.html create mode 100644 stable/en/advance/offload-mellanox/index.html create mode 100644 stable/en/advance/overlay-with-route/index.html create mode 100644 stable/en/advance/ovn-eip-fip-snat/index.html create mode 100644 stable/en/advance/ovn-ipsec/index.html create mode 100644 stable/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html create mode 100644 stable/en/advance/ovn-remote-port-mirroring/index.html create mode 100644 stable/en/advance/performance-tuning/index.html create mode 100644 stable/en/advance/security-group/index.html create mode 100644 stable/en/advance/vip/index.html create mode 100644 stable/en/advance/vpc-dns/index.html create mode 100644 stable/en/advance/vpc-internal-lb/index.html create mode 100644 stable/en/advance/vpc-peering/index.html create mode 100644 stable/en/advance/windows/index.html create mode 100644 stable/en/advance/with-bgp/index.html create mode 100644 stable/en/advance/with-cilium/index.html create mode 100644 stable/en/advance/with-openstack/index.html create mode 100644 stable/en/advance/with-ovn-ic/index.html create mode 100644 stable/en/advance/with-submariner/index.html create mode 100644 stable/en/contact/index.html create mode 100644 stable/en/guide/custom-routes/index.html create mode 100644 stable/en/guide/dual-stack/index.html create mode 100644 stable/en/guide/eip-snat/index.html create mode 100644 stable/en/guide/ippool/index.html create mode 100644 stable/en/guide/loadbalancer-service/index.html create mode 100644 stable/en/guide/mirror/index.html create mode 100644 stable/en/guide/networkpolicy-log/index.html create mode 100644 stable/en/guide/prometheus-grafana/index.html create mode 100644 stable/en/guide/prometheus/index.html create mode 100644 stable/en/guide/qos/index.html create mode 100644 stable/en/guide/setup-options/index.html create mode 100644 stable/en/guide/static-ip-mac/index.html create mode 100644 stable/en/guide/subnet/index.html create mode 100644 stable/en/guide/vpc-qos/index.html create mode 100644 stable/en/guide/vpc/index.html create mode 100644 stable/en/guide/webhook/index.html create mode 100644 stable/en/index.html create mode 100644 stable/en/ops/change-default-subnet/index.html create mode 100644 stable/en/ops/change-join-subnet/index.html create mode 100644 stable/en/ops/change-log-level/index.html create mode 100644 stable/en/ops/change-ovn-central-node/index.html create mode 100644 stable/en/ops/delete-worker-node/index.html create mode 100644 stable/en/ops/faq/index.html create mode 100644 stable/en/ops/from-calico/index.html create mode 100644 stable/en/ops/kubectl-ko/index.html create mode 100644 stable/en/ops/recover-db/index.html create mode 100644 stable/en/reference/architecture/index.html create mode 100644 stable/en/reference/dev-env/index.html create mode 100644 stable/en/reference/document-convention/index.html create mode 100644 stable/en/reference/feature-stage/index.html create mode 100644 stable/en/reference/iptables-rules/index.html create mode 100644 stable/en/reference/kube-ovn-api/index.html create mode 100644 stable/en/reference/kube-ovn-pinger-args/index.html create mode 100644 stable/en/reference/metrics/index.html create mode 100644 stable/en/reference/ovs-ovn-customized/index.html create mode 100644 stable/en/reference/tunnel-protocol/index.html create mode 100644 stable/en/reference/underlay-topology/index.html create mode 100644 stable/en/start/one-step-install/index.html create mode 100644 stable/en/start/prepare/index.html create mode 100644 stable/en/start/sealos-install/index.html create mode 100644 stable/en/start/underlay/index.html create mode 100644 stable/en/start/uninstall/index.html create mode 100644 stable/guide/custom-routes/index.html create mode 100644 stable/guide/dual-stack/index.html create mode 100644 stable/guide/eip-snat/index.html create mode 100644 stable/guide/ippool/index.html create mode 100644 stable/guide/loadbalancer-service/index.html create mode 100644 stable/guide/mirror/index.html create mode 100644 stable/guide/networkpolicy-log/index.html create mode 100644 stable/guide/prometheus-grafana/index.html create mode 100644 stable/guide/prometheus/index.html create mode 100644 stable/guide/qos/index.html create mode 100644 stable/guide/setup-options/index.html create mode 100644 stable/guide/static-ip-mac/index.html create mode 100644 stable/guide/subnet/index.html create mode 100644 stable/guide/vpc-qos/index.html create mode 100644 stable/guide/vpc/index.html create mode 100644 stable/guide/webhook/index.html create mode 100644 stable/index.html create mode 100644 stable/ops/change-default-subnet/index.html create mode 100644 stable/ops/change-join-subnet/index.html create mode 100644 stable/ops/change-log-level/index.html create mode 100644 stable/ops/change-ovn-central-node/index.html create mode 100644 stable/ops/delete-worker-node/index.html create mode 100644 stable/ops/faq/index.html create mode 100644 stable/ops/from-calico/index.html create mode 100644 stable/ops/kubectl-ko/index.html create mode 100644 stable/ops/recover-db/index.html create mode 100644 stable/reference/architecture/index.html create mode 100644 stable/reference/dev-env/index.html create mode 100644 stable/reference/document-convention/index.html create mode 100644 stable/reference/feature-stage/index.html create mode 100644 stable/reference/iptables-rules/index.html create mode 100644 stable/reference/kube-ovn-api/index.html create mode 100644 stable/reference/kube-ovn-pinger-args/index.html create mode 100644 stable/reference/metrics/index.html create mode 100644 stable/reference/ovs-ovn-customized/index.html create mode 100644 stable/reference/tunnel-protocol/index.html create mode 100644 stable/reference/underlay-topology/index.html create mode 100644 stable/start/one-step-install/index.html create mode 100644 stable/start/prepare/index.html create mode 100644 stable/start/sealos-install/index.html create mode 100644 stable/start/underlay/index.html create mode 100644 stable/start/uninstall/index.html create mode 100644 stable/zh/advance/accelerate-intra-node-tcp-with-ebpf/index.html create mode 100644 stable/zh/advance/cilium-hubble-observe/index.html create mode 100644 stable/zh/advance/cilium-networkpolicy/index.html create mode 100644 stable/zh/advance/dhcp/index.html create mode 100644 stable/zh/advance/dpdk/index.html create mode 100644 stable/zh/advance/external-gateway/index.html create mode 100644 stable/zh/advance/fastpath/index.html create mode 100644 stable/zh/advance/multi-nic/index.html create mode 100644 stable/zh/advance/nat-policy-rule/index.html create mode 100644 stable/zh/advance/node-local-dns/index.html create mode 100644 stable/zh/advance/offload-corigine/index.html create mode 100644 stable/zh/advance/offload-mellanox/index.html create mode 100644 stable/zh/advance/overlay-with-route/index.html create mode 100644 stable/zh/advance/ovn-eip-fip-snat/index.html create mode 100644 stable/zh/advance/ovn-ipsec/index.html create mode 100644 stable/zh/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html create mode 100644 stable/zh/advance/ovn-remote-port-mirroring/index.html create mode 100644 stable/zh/advance/performance-tuning/index.html create mode 100644 stable/zh/advance/security-group/index.html create mode 100644 stable/zh/advance/vip/index.html create mode 100644 stable/zh/advance/vpc-dns/index.html create mode 100644 stable/zh/advance/vpc-internal-lb/index.html create mode 100644 stable/zh/advance/vpc-peering/index.html create mode 100644 stable/zh/advance/windows/index.html create mode 100644 stable/zh/advance/with-bgp/index.html create mode 100644 stable/zh/advance/with-cilium/index.html create mode 100644 stable/zh/advance/with-openstack/index.html create mode 100644 stable/zh/advance/with-ovn-ic/index.html create mode 100644 stable/zh/advance/with-submariner/index.html create mode 100644 stable/zh/contact/index.html create mode 100644 stable/zh/guide/custom-routes/index.html create mode 100644 stable/zh/guide/dual-stack/index.html create mode 100644 stable/zh/guide/eip-snat/index.html create mode 100644 stable/zh/guide/ippool/index.html create mode 100644 stable/zh/guide/loadbalancer-service/index.html create mode 100644 stable/zh/guide/mirror/index.html create mode 100644 stable/zh/guide/networkpolicy-log/index.html create mode 100644 stable/zh/guide/prometheus-grafana/index.html create mode 100644 stable/zh/guide/prometheus/index.html create mode 100644 stable/zh/guide/qos/index.html create mode 100644 stable/zh/guide/setup-options/index.html create mode 100644 stable/zh/guide/static-ip-mac/index.html create mode 100644 stable/zh/guide/subnet/index.html create mode 100644 stable/zh/guide/vpc-qos/index.html create mode 100644 stable/zh/guide/vpc/index.html create mode 100644 stable/zh/guide/webhook/index.html create mode 100644 stable/zh/index.html create mode 100644 stable/zh/ops/change-default-subnet/index.html create mode 100644 stable/zh/ops/change-join-subnet/index.html create mode 100644 stable/zh/ops/change-log-level/index.html create mode 100644 stable/zh/ops/change-ovn-central-node/index.html create mode 100644 stable/zh/ops/delete-worker-node/index.html create mode 100644 stable/zh/ops/faq/index.html create mode 100644 stable/zh/ops/from-calico/index.html create mode 100644 stable/zh/ops/kubectl-ko/index.html create mode 100644 stable/zh/ops/recover-db/index.html create mode 100644 stable/zh/reference/architecture/index.html create mode 100644 stable/zh/reference/dev-env/index.html create mode 100644 stable/zh/reference/document-convention/index.html create mode 100644 stable/zh/reference/feature-stage/index.html create mode 100644 stable/zh/reference/iptables-rules/index.html create mode 100644 stable/zh/reference/kube-ovn-api/index.html create mode 100644 stable/zh/reference/kube-ovn-pinger-args/index.html create mode 100644 stable/zh/reference/metrics/index.html create mode 100644 stable/zh/reference/ovs-ovn-customized/index.html create mode 100644 stable/zh/reference/tunnel-protocol/index.html create mode 100644 stable/zh/reference/underlay-topology/index.html create mode 100644 stable/zh/start/one-step-install/index.html create mode 100644 stable/zh/start/prepare/index.html create mode 100644 stable/zh/start/sealos-install/index.html create mode 100644 stable/zh/start/underlay/index.html create mode 100644 stable/zh/start/uninstall/index.html diff --git a/current b/current deleted file mode 120000 index c41b369a3..000000000 --- a/current +++ /dev/null @@ -1 +0,0 @@ -v1.12.x \ No newline at end of file diff --git a/current/404.html b/current/404.html new file mode 100644 index 000000000..73cda290e --- /dev/null +++ b/current/404.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../v1.12.x/404.html... + + \ No newline at end of file diff --git a/current/advance/accelerate-intra-node-tcp-with-ebpf/index.html b/current/advance/accelerate-intra-node-tcp-with-ebpf/index.html new file mode 100644 index 000000000..a037abe52 --- /dev/null +++ b/current/advance/accelerate-intra-node-tcp-with-ebpf/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/accelerate-intra-node-tcp-with-ebpf/... + + \ No newline at end of file diff --git a/current/advance/cilium-hubble-observe/index.html b/current/advance/cilium-hubble-observe/index.html new file mode 100644 index 000000000..885ae3524 --- /dev/null +++ b/current/advance/cilium-hubble-observe/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/cilium-hubble-observe/... + + \ No newline at end of file diff --git a/current/advance/cilium-networkpolicy/index.html b/current/advance/cilium-networkpolicy/index.html new file mode 100644 index 000000000..cb9cfe33d --- /dev/null +++ b/current/advance/cilium-networkpolicy/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/cilium-networkpolicy/... + + \ No newline at end of file diff --git a/current/advance/dhcp/index.html b/current/advance/dhcp/index.html new file mode 100644 index 000000000..a6abbad4b --- /dev/null +++ b/current/advance/dhcp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/dhcp/... + + \ No newline at end of file diff --git a/current/advance/dpdk/index.html b/current/advance/dpdk/index.html new file mode 100644 index 000000000..e05fa53d7 --- /dev/null +++ b/current/advance/dpdk/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/dpdk/... + + \ No newline at end of file diff --git a/current/advance/external-gateway/index.html b/current/advance/external-gateway/index.html new file mode 100644 index 000000000..4b2e9b73d --- /dev/null +++ b/current/advance/external-gateway/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/external-gateway/... + + \ No newline at end of file diff --git a/current/advance/fastpath/index.html b/current/advance/fastpath/index.html new file mode 100644 index 000000000..5574d1550 --- /dev/null +++ b/current/advance/fastpath/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/fastpath/... + + \ No newline at end of file diff --git a/current/advance/multi-nic/index.html b/current/advance/multi-nic/index.html new file mode 100644 index 000000000..138cc6272 --- /dev/null +++ b/current/advance/multi-nic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/multi-nic/... + + \ No newline at end of file diff --git a/current/advance/nat-policy-rule/index.html b/current/advance/nat-policy-rule/index.html new file mode 100644 index 000000000..11e0a0ddf --- /dev/null +++ b/current/advance/nat-policy-rule/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/nat-policy-rule/... + + \ No newline at end of file diff --git a/current/advance/node-local-dns/index.html b/current/advance/node-local-dns/index.html new file mode 100644 index 000000000..e69ac0f31 --- /dev/null +++ b/current/advance/node-local-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/node-local-dns/... + + \ No newline at end of file diff --git a/current/advance/offload-corigine/index.html b/current/advance/offload-corigine/index.html new file mode 100644 index 000000000..97dbbaca2 --- /dev/null +++ b/current/advance/offload-corigine/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/offload-corigine/... + + \ No newline at end of file diff --git a/current/advance/offload-mellanox/index.html b/current/advance/offload-mellanox/index.html new file mode 100644 index 000000000..1b85a8b71 --- /dev/null +++ b/current/advance/offload-mellanox/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/offload-mellanox/... + + \ No newline at end of file diff --git a/current/advance/overlay-with-route/index.html b/current/advance/overlay-with-route/index.html new file mode 100644 index 000000000..c4961ad2f --- /dev/null +++ b/current/advance/overlay-with-route/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/overlay-with-route/... + + \ No newline at end of file diff --git a/current/advance/ovn-eip-fip-snat/index.html b/current/advance/ovn-eip-fip-snat/index.html new file mode 100644 index 000000000..091c4d135 --- /dev/null +++ b/current/advance/ovn-eip-fip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/ovn-eip-fip-snat/... + + \ No newline at end of file diff --git a/current/advance/ovn-ipsec/index.html b/current/advance/ovn-ipsec/index.html new file mode 100644 index 000000000..752f13af7 --- /dev/null +++ b/current/advance/ovn-ipsec/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/ovn-ipsec/... + + \ No newline at end of file diff --git a/current/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html b/current/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html new file mode 100644 index 000000000..d4070a30d --- /dev/null +++ b/current/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/ovn-l3-ha-based-ecmp-with-bfd/... + + \ No newline at end of file diff --git a/current/advance/ovn-remote-port-mirroring/index.html b/current/advance/ovn-remote-port-mirroring/index.html new file mode 100644 index 000000000..ca509f096 --- /dev/null +++ b/current/advance/ovn-remote-port-mirroring/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/ovn-remote-port-mirroring/... + + \ No newline at end of file diff --git a/current/advance/performance-tuning/index.html b/current/advance/performance-tuning/index.html new file mode 100644 index 000000000..a52993cd6 --- /dev/null +++ b/current/advance/performance-tuning/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/performance-tuning/... + + \ No newline at end of file diff --git a/current/advance/security-group/index.html b/current/advance/security-group/index.html new file mode 100644 index 000000000..e9099fbb3 --- /dev/null +++ b/current/advance/security-group/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/security-group/... + + \ No newline at end of file diff --git a/current/advance/vip/index.html b/current/advance/vip/index.html new file mode 100644 index 000000000..d54db1e0d --- /dev/null +++ b/current/advance/vip/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/vip/... + + \ No newline at end of file diff --git a/current/advance/vpc-dns/index.html b/current/advance/vpc-dns/index.html new file mode 100644 index 000000000..970d95eef --- /dev/null +++ b/current/advance/vpc-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/vpc-dns/... + + \ No newline at end of file diff --git a/current/advance/vpc-internal-lb/index.html b/current/advance/vpc-internal-lb/index.html new file mode 100644 index 000000000..36d16b2fa --- /dev/null +++ b/current/advance/vpc-internal-lb/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/vpc-internal-lb/... + + \ No newline at end of file diff --git a/current/advance/vpc-peering/index.html b/current/advance/vpc-peering/index.html new file mode 100644 index 000000000..eeb1d3d25 --- /dev/null +++ b/current/advance/vpc-peering/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/vpc-peering/... + + \ No newline at end of file diff --git a/current/advance/windows/index.html b/current/advance/windows/index.html new file mode 100644 index 000000000..b3c593332 --- /dev/null +++ b/current/advance/windows/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/windows/... + + \ No newline at end of file diff --git a/current/advance/with-bgp/index.html b/current/advance/with-bgp/index.html new file mode 100644 index 000000000..de63b0f97 --- /dev/null +++ b/current/advance/with-bgp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/with-bgp/... + + \ No newline at end of file diff --git a/current/advance/with-cilium/index.html b/current/advance/with-cilium/index.html new file mode 100644 index 000000000..f60c3380d --- /dev/null +++ b/current/advance/with-cilium/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/with-cilium/... + + \ No newline at end of file diff --git a/current/advance/with-openstack/index.html b/current/advance/with-openstack/index.html new file mode 100644 index 000000000..31e62e813 --- /dev/null +++ b/current/advance/with-openstack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/with-openstack/... + + \ No newline at end of file diff --git a/current/advance/with-ovn-ic/index.html b/current/advance/with-ovn-ic/index.html new file mode 100644 index 000000000..007a89a3f --- /dev/null +++ b/current/advance/with-ovn-ic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/with-ovn-ic/... + + \ No newline at end of file diff --git a/current/advance/with-submariner/index.html b/current/advance/with-submariner/index.html new file mode 100644 index 000000000..355931354 --- /dev/null +++ b/current/advance/with-submariner/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/with-submariner/... + + \ No newline at end of file diff --git a/current/contact/index.html b/current/contact/index.html new file mode 100644 index 000000000..1323b2f20 --- /dev/null +++ b/current/contact/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../v1.12.x/contact/... + + \ No newline at end of file diff --git a/current/en/advance/accelerate-intra-node-tcp-with-ebpf/index.html b/current/en/advance/accelerate-intra-node-tcp-with-ebpf/index.html new file mode 100644 index 000000000..a6f003b4a --- /dev/null +++ b/current/en/advance/accelerate-intra-node-tcp-with-ebpf/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/accelerate-intra-node-tcp-with-ebpf/... + + \ No newline at end of file diff --git a/current/en/advance/cilium-hubble-observe/index.html b/current/en/advance/cilium-hubble-observe/index.html new file mode 100644 index 000000000..09eb34bf3 --- /dev/null +++ b/current/en/advance/cilium-hubble-observe/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/cilium-hubble-observe/... + + \ No newline at end of file diff --git a/current/en/advance/cilium-networkpolicy/index.html b/current/en/advance/cilium-networkpolicy/index.html new file mode 100644 index 000000000..fd3efeebf --- /dev/null +++ b/current/en/advance/cilium-networkpolicy/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/cilium-networkpolicy/... + + \ No newline at end of file diff --git a/current/en/advance/dhcp/index.html b/current/en/advance/dhcp/index.html new file mode 100644 index 000000000..45e11d990 --- /dev/null +++ b/current/en/advance/dhcp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/dhcp/... + + \ No newline at end of file diff --git a/current/en/advance/dpdk/index.html b/current/en/advance/dpdk/index.html new file mode 100644 index 000000000..d69b0b1d6 --- /dev/null +++ b/current/en/advance/dpdk/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/dpdk/... + + \ No newline at end of file diff --git a/current/en/advance/external-gateway/index.html b/current/en/advance/external-gateway/index.html new file mode 100644 index 000000000..5318778f8 --- /dev/null +++ b/current/en/advance/external-gateway/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/external-gateway/... + + \ No newline at end of file diff --git a/current/en/advance/fastpath/index.html b/current/en/advance/fastpath/index.html new file mode 100644 index 000000000..3c8b3b0ee --- /dev/null +++ b/current/en/advance/fastpath/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/fastpath/... + + \ No newline at end of file diff --git a/current/en/advance/multi-nic/index.html b/current/en/advance/multi-nic/index.html new file mode 100644 index 000000000..9b86604af --- /dev/null +++ b/current/en/advance/multi-nic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/multi-nic/... + + \ No newline at end of file diff --git a/current/en/advance/nat-policy-rule/index.html b/current/en/advance/nat-policy-rule/index.html new file mode 100644 index 000000000..59508ec95 --- /dev/null +++ b/current/en/advance/nat-policy-rule/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/nat-policy-rule/... + + \ No newline at end of file diff --git a/current/en/advance/node-local-dns/index.html b/current/en/advance/node-local-dns/index.html new file mode 100644 index 000000000..dd6e81107 --- /dev/null +++ b/current/en/advance/node-local-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/node-local-dns/... + + \ No newline at end of file diff --git a/current/en/advance/offload-corigine/index.html b/current/en/advance/offload-corigine/index.html new file mode 100644 index 000000000..8457d1a1e --- /dev/null +++ b/current/en/advance/offload-corigine/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/offload-corigine/... + + \ No newline at end of file diff --git a/current/en/advance/offload-mellanox/index.html b/current/en/advance/offload-mellanox/index.html new file mode 100644 index 000000000..9bea10339 --- /dev/null +++ b/current/en/advance/offload-mellanox/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/offload-mellanox/... + + \ No newline at end of file diff --git a/current/en/advance/overlay-with-route/index.html b/current/en/advance/overlay-with-route/index.html new file mode 100644 index 000000000..b9e5d9bf1 --- /dev/null +++ b/current/en/advance/overlay-with-route/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/overlay-with-route/... + + \ No newline at end of file diff --git a/current/en/advance/ovn-eip-fip-snat/index.html b/current/en/advance/ovn-eip-fip-snat/index.html new file mode 100644 index 000000000..c22e404fd --- /dev/null +++ b/current/en/advance/ovn-eip-fip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/ovn-eip-fip-snat/... + + \ No newline at end of file diff --git a/current/en/advance/ovn-ipsec/index.html b/current/en/advance/ovn-ipsec/index.html new file mode 100644 index 000000000..39f1cd3ac --- /dev/null +++ b/current/en/advance/ovn-ipsec/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/ovn-ipsec/... + + \ No newline at end of file diff --git a/current/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html b/current/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html new file mode 100644 index 000000000..918d25091 --- /dev/null +++ b/current/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/ovn-l3-ha-based-ecmp-with-bfd/... + + \ No newline at end of file diff --git a/current/en/advance/ovn-remote-port-mirroring/index.html b/current/en/advance/ovn-remote-port-mirroring/index.html new file mode 100644 index 000000000..1933e0e89 --- /dev/null +++ b/current/en/advance/ovn-remote-port-mirroring/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/ovn-remote-port-mirroring/... + + \ No newline at end of file diff --git a/current/en/advance/performance-tuning/index.html b/current/en/advance/performance-tuning/index.html new file mode 100644 index 000000000..6dc2d10de --- /dev/null +++ b/current/en/advance/performance-tuning/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/performance-tuning/... + + \ No newline at end of file diff --git a/current/en/advance/security-group/index.html b/current/en/advance/security-group/index.html new file mode 100644 index 000000000..eeb4f1bbb --- /dev/null +++ b/current/en/advance/security-group/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/security-group/... + + \ No newline at end of file diff --git a/current/en/advance/vip/index.html b/current/en/advance/vip/index.html new file mode 100644 index 000000000..c40df47d2 --- /dev/null +++ b/current/en/advance/vip/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/vip/... + + \ No newline at end of file diff --git a/current/en/advance/vpc-dns/index.html b/current/en/advance/vpc-dns/index.html new file mode 100644 index 000000000..02304c71f --- /dev/null +++ b/current/en/advance/vpc-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/vpc-dns/... + + \ No newline at end of file diff --git a/current/en/advance/vpc-internal-lb/index.html b/current/en/advance/vpc-internal-lb/index.html new file mode 100644 index 000000000..933adbb30 --- /dev/null +++ b/current/en/advance/vpc-internal-lb/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/vpc-internal-lb/... + + \ No newline at end of file diff --git a/current/en/advance/vpc-peering/index.html b/current/en/advance/vpc-peering/index.html new file mode 100644 index 000000000..849b641bf --- /dev/null +++ b/current/en/advance/vpc-peering/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/vpc-peering/... + + \ No newline at end of file diff --git a/current/en/advance/windows/index.html b/current/en/advance/windows/index.html new file mode 100644 index 000000000..b8770a2cf --- /dev/null +++ b/current/en/advance/windows/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/windows/... + + \ No newline at end of file diff --git a/current/en/advance/with-bgp/index.html b/current/en/advance/with-bgp/index.html new file mode 100644 index 000000000..a10ae7075 --- /dev/null +++ b/current/en/advance/with-bgp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/with-bgp/... + + \ No newline at end of file diff --git a/current/en/advance/with-cilium/index.html b/current/en/advance/with-cilium/index.html new file mode 100644 index 000000000..db0befd78 --- /dev/null +++ b/current/en/advance/with-cilium/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/with-cilium/... + + \ No newline at end of file diff --git a/current/en/advance/with-openstack/index.html b/current/en/advance/with-openstack/index.html new file mode 100644 index 000000000..ea97ea31d --- /dev/null +++ b/current/en/advance/with-openstack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/with-openstack/... + + \ No newline at end of file diff --git a/current/en/advance/with-ovn-ic/index.html b/current/en/advance/with-ovn-ic/index.html new file mode 100644 index 000000000..dadc8a956 --- /dev/null +++ b/current/en/advance/with-ovn-ic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/with-ovn-ic/... + + \ No newline at end of file diff --git a/current/en/advance/with-submariner/index.html b/current/en/advance/with-submariner/index.html new file mode 100644 index 000000000..5ca3c84ae --- /dev/null +++ b/current/en/advance/with-submariner/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/with-submariner/... + + \ No newline at end of file diff --git a/current/en/contact/index.html b/current/en/contact/index.html new file mode 100644 index 000000000..422ec5bb0 --- /dev/null +++ b/current/en/contact/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/en/contact/... + + \ No newline at end of file diff --git a/current/en/guide/custom-routes/index.html b/current/en/guide/custom-routes/index.html new file mode 100644 index 000000000..249c9790f --- /dev/null +++ b/current/en/guide/custom-routes/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/custom-routes/... + + \ No newline at end of file diff --git a/current/en/guide/dual-stack/index.html b/current/en/guide/dual-stack/index.html new file mode 100644 index 000000000..2b8336bb7 --- /dev/null +++ b/current/en/guide/dual-stack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/dual-stack/... + + \ No newline at end of file diff --git a/current/en/guide/eip-snat/index.html b/current/en/guide/eip-snat/index.html new file mode 100644 index 000000000..a99ce4019 --- /dev/null +++ b/current/en/guide/eip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/eip-snat/... + + \ No newline at end of file diff --git a/current/en/guide/ippool/index.html b/current/en/guide/ippool/index.html new file mode 100644 index 000000000..7b1570ec5 --- /dev/null +++ b/current/en/guide/ippool/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/ippool/... + + \ No newline at end of file diff --git a/current/en/guide/loadbalancer-service/index.html b/current/en/guide/loadbalancer-service/index.html new file mode 100644 index 000000000..3437cdc2c --- /dev/null +++ b/current/en/guide/loadbalancer-service/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/loadbalancer-service/... + + \ No newline at end of file diff --git a/current/en/guide/mirror/index.html b/current/en/guide/mirror/index.html new file mode 100644 index 000000000..a5b0d0602 --- /dev/null +++ b/current/en/guide/mirror/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/mirror/... + + \ No newline at end of file diff --git a/current/en/guide/networkpolicy-log/index.html b/current/en/guide/networkpolicy-log/index.html new file mode 100644 index 000000000..2d559f8d9 --- /dev/null +++ b/current/en/guide/networkpolicy-log/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/networkpolicy-log/... + + \ No newline at end of file diff --git a/current/en/guide/prometheus-grafana/index.html b/current/en/guide/prometheus-grafana/index.html new file mode 100644 index 000000000..feb934a08 --- /dev/null +++ b/current/en/guide/prometheus-grafana/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/prometheus-grafana/... + + \ No newline at end of file diff --git a/current/en/guide/prometheus/index.html b/current/en/guide/prometheus/index.html new file mode 100644 index 000000000..988fa1ae3 --- /dev/null +++ b/current/en/guide/prometheus/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/prometheus/... + + \ No newline at end of file diff --git a/current/en/guide/qos/index.html b/current/en/guide/qos/index.html new file mode 100644 index 000000000..2d97ba4b9 --- /dev/null +++ b/current/en/guide/qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/qos/... + + \ No newline at end of file diff --git a/current/en/guide/setup-options/index.html b/current/en/guide/setup-options/index.html new file mode 100644 index 000000000..a875d623d --- /dev/null +++ b/current/en/guide/setup-options/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/setup-options/... + + \ No newline at end of file diff --git a/current/en/guide/static-ip-mac/index.html b/current/en/guide/static-ip-mac/index.html new file mode 100644 index 000000000..6f7260a24 --- /dev/null +++ b/current/en/guide/static-ip-mac/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/static-ip-mac/... + + \ No newline at end of file diff --git a/current/en/guide/subnet/index.html b/current/en/guide/subnet/index.html new file mode 100644 index 000000000..613ac5802 --- /dev/null +++ b/current/en/guide/subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/subnet/... + + \ No newline at end of file diff --git a/current/en/guide/vpc-qos/index.html b/current/en/guide/vpc-qos/index.html new file mode 100644 index 000000000..88f10b9c1 --- /dev/null +++ b/current/en/guide/vpc-qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/vpc-qos/... + + \ No newline at end of file diff --git a/current/en/guide/vpc/index.html b/current/en/guide/vpc/index.html new file mode 100644 index 000000000..a01510389 --- /dev/null +++ b/current/en/guide/vpc/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/vpc/... + + \ No newline at end of file diff --git a/current/en/guide/webhook/index.html b/current/en/guide/webhook/index.html new file mode 100644 index 000000000..64dcfebbe --- /dev/null +++ b/current/en/guide/webhook/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/webhook/... + + \ No newline at end of file diff --git a/current/en/index.html b/current/en/index.html new file mode 100644 index 000000000..a2b1f50e8 --- /dev/null +++ b/current/en/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../v1.12.x/en/... + + \ No newline at end of file diff --git a/current/en/ops/change-default-subnet/index.html b/current/en/ops/change-default-subnet/index.html new file mode 100644 index 000000000..7a38938c3 --- /dev/null +++ b/current/en/ops/change-default-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/change-default-subnet/... + + \ No newline at end of file diff --git a/current/en/ops/change-join-subnet/index.html b/current/en/ops/change-join-subnet/index.html new file mode 100644 index 000000000..3b8fba7da --- /dev/null +++ b/current/en/ops/change-join-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/change-join-subnet/... + + \ No newline at end of file diff --git a/current/en/ops/change-log-level/index.html b/current/en/ops/change-log-level/index.html new file mode 100644 index 000000000..39de671eb --- /dev/null +++ b/current/en/ops/change-log-level/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/change-log-level/... + + \ No newline at end of file diff --git a/current/en/ops/change-ovn-central-node/index.html b/current/en/ops/change-ovn-central-node/index.html new file mode 100644 index 000000000..e631180e0 --- /dev/null +++ b/current/en/ops/change-ovn-central-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/change-ovn-central-node/... + + \ No newline at end of file diff --git a/current/en/ops/delete-worker-node/index.html b/current/en/ops/delete-worker-node/index.html new file mode 100644 index 000000000..fdb8500f6 --- /dev/null +++ b/current/en/ops/delete-worker-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/delete-worker-node/... + + \ No newline at end of file diff --git a/current/en/ops/faq/index.html b/current/en/ops/faq/index.html new file mode 100644 index 000000000..20793ecbe --- /dev/null +++ b/current/en/ops/faq/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/faq/... + + \ No newline at end of file diff --git a/current/en/ops/from-calico/index.html b/current/en/ops/from-calico/index.html new file mode 100644 index 000000000..a550b9178 --- /dev/null +++ b/current/en/ops/from-calico/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/from-calico/... + + \ No newline at end of file diff --git a/current/en/ops/kubectl-ko/index.html b/current/en/ops/kubectl-ko/index.html new file mode 100644 index 000000000..369007b94 --- /dev/null +++ b/current/en/ops/kubectl-ko/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/kubectl-ko/... + + \ No newline at end of file diff --git a/current/en/ops/recover-db/index.html b/current/en/ops/recover-db/index.html new file mode 100644 index 000000000..f6042f8ea --- /dev/null +++ b/current/en/ops/recover-db/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/recover-db/... + + \ No newline at end of file diff --git a/current/en/reference/architecture/index.html b/current/en/reference/architecture/index.html new file mode 100644 index 000000000..3ec315144 --- /dev/null +++ b/current/en/reference/architecture/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/architecture/... + + \ No newline at end of file diff --git a/current/en/reference/dev-env/index.html b/current/en/reference/dev-env/index.html new file mode 100644 index 000000000..5d743f606 --- /dev/null +++ b/current/en/reference/dev-env/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/dev-env/... + + \ No newline at end of file diff --git a/current/en/reference/document-convention/index.html b/current/en/reference/document-convention/index.html new file mode 100644 index 000000000..b6eb91bb9 --- /dev/null +++ b/current/en/reference/document-convention/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/document-convention/... + + \ No newline at end of file diff --git a/current/en/reference/feature-stage/index.html b/current/en/reference/feature-stage/index.html new file mode 100644 index 000000000..dee3417a1 --- /dev/null +++ b/current/en/reference/feature-stage/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/feature-stage/... + + \ No newline at end of file diff --git a/current/en/reference/iptables-rules/index.html b/current/en/reference/iptables-rules/index.html new file mode 100644 index 000000000..3f3f94eab --- /dev/null +++ b/current/en/reference/iptables-rules/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/iptables-rules/... + + \ No newline at end of file diff --git a/current/en/reference/kube-ovn-api/index.html b/current/en/reference/kube-ovn-api/index.html new file mode 100644 index 000000000..71182cbdd --- /dev/null +++ b/current/en/reference/kube-ovn-api/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/kube-ovn-api/... + + \ No newline at end of file diff --git a/current/en/reference/kube-ovn-pinger-args/index.html b/current/en/reference/kube-ovn-pinger-args/index.html new file mode 100644 index 000000000..cf7c608aa --- /dev/null +++ b/current/en/reference/kube-ovn-pinger-args/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/kube-ovn-pinger-args/... + + \ No newline at end of file diff --git a/current/en/reference/metrics/index.html b/current/en/reference/metrics/index.html new file mode 100644 index 000000000..51bcfa02a --- /dev/null +++ b/current/en/reference/metrics/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/metrics/... + + \ No newline at end of file diff --git a/current/en/reference/ovs-ovn-customized/index.html b/current/en/reference/ovs-ovn-customized/index.html new file mode 100644 index 000000000..4cabd032f --- /dev/null +++ b/current/en/reference/ovs-ovn-customized/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/ovs-ovn-customized/... + + \ No newline at end of file diff --git a/current/en/reference/tunnel-protocol/index.html b/current/en/reference/tunnel-protocol/index.html new file mode 100644 index 000000000..8287d71c4 --- /dev/null +++ b/current/en/reference/tunnel-protocol/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/tunnel-protocol/... + + \ No newline at end of file diff --git a/current/en/reference/underlay-topology/index.html b/current/en/reference/underlay-topology/index.html new file mode 100644 index 000000000..1ef5cf333 --- /dev/null +++ b/current/en/reference/underlay-topology/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/underlay-topology/... + + \ No newline at end of file diff --git a/current/en/start/one-step-install/index.html b/current/en/start/one-step-install/index.html new file mode 100644 index 000000000..7f03d6f60 --- /dev/null +++ b/current/en/start/one-step-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/start/one-step-install/... + + \ No newline at end of file diff --git a/current/en/start/prepare/index.html b/current/en/start/prepare/index.html new file mode 100644 index 000000000..f5efd9b72 --- /dev/null +++ b/current/en/start/prepare/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/start/prepare/... + + \ No newline at end of file diff --git a/current/en/start/sealos-install/index.html b/current/en/start/sealos-install/index.html new file mode 100644 index 000000000..df3ccdbc4 --- /dev/null +++ b/current/en/start/sealos-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/start/sealos-install/... + + \ No newline at end of file diff --git a/current/en/start/underlay/index.html b/current/en/start/underlay/index.html new file mode 100644 index 000000000..0c3c09ddc --- /dev/null +++ b/current/en/start/underlay/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/start/underlay/... + + \ No newline at end of file diff --git a/current/en/start/uninstall/index.html b/current/en/start/uninstall/index.html new file mode 100644 index 000000000..75e7a0545 --- /dev/null +++ b/current/en/start/uninstall/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/start/uninstall/... + + \ No newline at end of file diff --git a/current/guide/custom-routes/index.html b/current/guide/custom-routes/index.html new file mode 100644 index 000000000..f0197caed --- /dev/null +++ b/current/guide/custom-routes/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/custom-routes/... + + \ No newline at end of file diff --git a/current/guide/dual-stack/index.html b/current/guide/dual-stack/index.html new file mode 100644 index 000000000..b96243664 --- /dev/null +++ b/current/guide/dual-stack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/dual-stack/... + + \ No newline at end of file diff --git a/current/guide/eip-snat/index.html b/current/guide/eip-snat/index.html new file mode 100644 index 000000000..1e5a50f01 --- /dev/null +++ b/current/guide/eip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/eip-snat/... + + \ No newline at end of file diff --git a/current/guide/ippool/index.html b/current/guide/ippool/index.html new file mode 100644 index 000000000..7dbe307cf --- /dev/null +++ b/current/guide/ippool/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/ippool/... + + \ No newline at end of file diff --git a/current/guide/loadbalancer-service/index.html b/current/guide/loadbalancer-service/index.html new file mode 100644 index 000000000..1a010db16 --- /dev/null +++ b/current/guide/loadbalancer-service/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/loadbalancer-service/... + + \ No newline at end of file diff --git a/current/guide/mirror/index.html b/current/guide/mirror/index.html new file mode 100644 index 000000000..3bcdd3be4 --- /dev/null +++ b/current/guide/mirror/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/mirror/... + + \ No newline at end of file diff --git a/current/guide/networkpolicy-log/index.html b/current/guide/networkpolicy-log/index.html new file mode 100644 index 000000000..eb3ecb184 --- /dev/null +++ b/current/guide/networkpolicy-log/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/networkpolicy-log/... + + \ No newline at end of file diff --git a/current/guide/prometheus-grafana/index.html b/current/guide/prometheus-grafana/index.html new file mode 100644 index 000000000..57b42e432 --- /dev/null +++ b/current/guide/prometheus-grafana/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/prometheus-grafana/... + + \ No newline at end of file diff --git a/current/guide/prometheus/index.html b/current/guide/prometheus/index.html new file mode 100644 index 000000000..6c4850021 --- /dev/null +++ b/current/guide/prometheus/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/prometheus/... + + \ No newline at end of file diff --git a/current/guide/qos/index.html b/current/guide/qos/index.html new file mode 100644 index 000000000..d8cd29301 --- /dev/null +++ b/current/guide/qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/qos/... + + \ No newline at end of file diff --git a/current/guide/setup-options/index.html b/current/guide/setup-options/index.html new file mode 100644 index 000000000..c39747e16 --- /dev/null +++ b/current/guide/setup-options/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/setup-options/... + + \ No newline at end of file diff --git a/current/guide/static-ip-mac/index.html b/current/guide/static-ip-mac/index.html new file mode 100644 index 000000000..531555a6c --- /dev/null +++ b/current/guide/static-ip-mac/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/static-ip-mac/... + + \ No newline at end of file diff --git a/current/guide/subnet/index.html b/current/guide/subnet/index.html new file mode 100644 index 000000000..5da6bdd55 --- /dev/null +++ b/current/guide/subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/subnet/... + + \ No newline at end of file diff --git a/current/guide/vpc-qos/index.html b/current/guide/vpc-qos/index.html new file mode 100644 index 000000000..6703eac37 --- /dev/null +++ b/current/guide/vpc-qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/vpc-qos/... + + \ No newline at end of file diff --git a/current/guide/vpc/index.html b/current/guide/vpc/index.html new file mode 100644 index 000000000..45b8f4a8e --- /dev/null +++ b/current/guide/vpc/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/vpc/... + + \ No newline at end of file diff --git a/current/guide/webhook/index.html b/current/guide/webhook/index.html new file mode 100644 index 000000000..2b93e7bea --- /dev/null +++ b/current/guide/webhook/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/webhook/... + + \ No newline at end of file diff --git a/current/index.html b/current/index.html new file mode 100644 index 000000000..7cd52a6fc --- /dev/null +++ b/current/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../v1.12.x/... + + \ No newline at end of file diff --git a/current/ops/change-default-subnet/index.html b/current/ops/change-default-subnet/index.html new file mode 100644 index 000000000..36ec1d134 --- /dev/null +++ b/current/ops/change-default-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/change-default-subnet/... + + \ No newline at end of file diff --git a/current/ops/change-join-subnet/index.html b/current/ops/change-join-subnet/index.html new file mode 100644 index 000000000..57cb0249c --- /dev/null +++ b/current/ops/change-join-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/change-join-subnet/... + + \ No newline at end of file diff --git a/current/ops/change-log-level/index.html b/current/ops/change-log-level/index.html new file mode 100644 index 000000000..fe7000fbb --- /dev/null +++ b/current/ops/change-log-level/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/change-log-level/... + + \ No newline at end of file diff --git a/current/ops/change-ovn-central-node/index.html b/current/ops/change-ovn-central-node/index.html new file mode 100644 index 000000000..05f163487 --- /dev/null +++ b/current/ops/change-ovn-central-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/change-ovn-central-node/... + + \ No newline at end of file diff --git a/current/ops/delete-worker-node/index.html b/current/ops/delete-worker-node/index.html new file mode 100644 index 000000000..190fed4ab --- /dev/null +++ b/current/ops/delete-worker-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/delete-worker-node/... + + \ No newline at end of file diff --git a/current/ops/faq/index.html b/current/ops/faq/index.html new file mode 100644 index 000000000..83c63ca5d --- /dev/null +++ b/current/ops/faq/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/faq/... + + \ No newline at end of file diff --git a/current/ops/from-calico/index.html b/current/ops/from-calico/index.html new file mode 100644 index 000000000..ea876a737 --- /dev/null +++ b/current/ops/from-calico/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/from-calico/... + + \ No newline at end of file diff --git a/current/ops/kubectl-ko/index.html b/current/ops/kubectl-ko/index.html new file mode 100644 index 000000000..23db07d0c --- /dev/null +++ b/current/ops/kubectl-ko/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/kubectl-ko/... + + \ No newline at end of file diff --git a/current/ops/recover-db/index.html b/current/ops/recover-db/index.html new file mode 100644 index 000000000..19c97b4f6 --- /dev/null +++ b/current/ops/recover-db/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/recover-db/... + + \ No newline at end of file diff --git a/current/reference/architecture/index.html b/current/reference/architecture/index.html new file mode 100644 index 000000000..ec6be5942 --- /dev/null +++ b/current/reference/architecture/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/architecture/... + + \ No newline at end of file diff --git a/current/reference/dev-env/index.html b/current/reference/dev-env/index.html new file mode 100644 index 000000000..3b1e4afe9 --- /dev/null +++ b/current/reference/dev-env/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/dev-env/... + + \ No newline at end of file diff --git a/current/reference/document-convention/index.html b/current/reference/document-convention/index.html new file mode 100644 index 000000000..429f26000 --- /dev/null +++ b/current/reference/document-convention/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/document-convention/... + + \ No newline at end of file diff --git a/current/reference/feature-stage/index.html b/current/reference/feature-stage/index.html new file mode 100644 index 000000000..25231dc79 --- /dev/null +++ b/current/reference/feature-stage/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/feature-stage/... + + \ No newline at end of file diff --git a/current/reference/iptables-rules/index.html b/current/reference/iptables-rules/index.html new file mode 100644 index 000000000..1e7007ce9 --- /dev/null +++ b/current/reference/iptables-rules/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/iptables-rules/... + + \ No newline at end of file diff --git a/current/reference/kube-ovn-api/index.html b/current/reference/kube-ovn-api/index.html new file mode 100644 index 000000000..a334ac263 --- /dev/null +++ b/current/reference/kube-ovn-api/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/kube-ovn-api/... + + \ No newline at end of file diff --git a/current/reference/kube-ovn-pinger-args/index.html b/current/reference/kube-ovn-pinger-args/index.html new file mode 100644 index 000000000..7540c326b --- /dev/null +++ b/current/reference/kube-ovn-pinger-args/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/kube-ovn-pinger-args/... + + \ No newline at end of file diff --git a/current/reference/metrics/index.html b/current/reference/metrics/index.html new file mode 100644 index 000000000..f21605633 --- /dev/null +++ b/current/reference/metrics/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/metrics/... + + \ No newline at end of file diff --git a/current/reference/ovs-ovn-customized/index.html b/current/reference/ovs-ovn-customized/index.html new file mode 100644 index 000000000..84f2b4644 --- /dev/null +++ b/current/reference/ovs-ovn-customized/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/ovs-ovn-customized/... + + \ No newline at end of file diff --git a/current/reference/tunnel-protocol/index.html b/current/reference/tunnel-protocol/index.html new file mode 100644 index 000000000..601e4ac01 --- /dev/null +++ b/current/reference/tunnel-protocol/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/tunnel-protocol/... + + \ No newline at end of file diff --git a/current/reference/underlay-topology/index.html b/current/reference/underlay-topology/index.html new file mode 100644 index 000000000..0faf02b1b --- /dev/null +++ b/current/reference/underlay-topology/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/underlay-topology/... + + \ No newline at end of file diff --git a/current/start/one-step-install/index.html b/current/start/one-step-install/index.html new file mode 100644 index 000000000..55a254df7 --- /dev/null +++ b/current/start/one-step-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/start/one-step-install/... + + \ No newline at end of file diff --git a/current/start/prepare/index.html b/current/start/prepare/index.html new file mode 100644 index 000000000..d7d01d523 --- /dev/null +++ b/current/start/prepare/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/start/prepare/... + + \ No newline at end of file diff --git a/current/start/sealos-install/index.html b/current/start/sealos-install/index.html new file mode 100644 index 000000000..cf5a9e222 --- /dev/null +++ b/current/start/sealos-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/start/sealos-install/... + + \ No newline at end of file diff --git a/current/start/underlay/index.html b/current/start/underlay/index.html new file mode 100644 index 000000000..cb4576f8b --- /dev/null +++ b/current/start/underlay/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/start/underlay/... + + \ No newline at end of file diff --git a/current/start/uninstall/index.html b/current/start/uninstall/index.html new file mode 100644 index 000000000..003d8c216 --- /dev/null +++ b/current/start/uninstall/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/start/uninstall/... + + \ No newline at end of file diff --git a/current/zh/advance/accelerate-intra-node-tcp-with-ebpf/index.html b/current/zh/advance/accelerate-intra-node-tcp-with-ebpf/index.html new file mode 100644 index 000000000..14f5adb12 --- /dev/null +++ b/current/zh/advance/accelerate-intra-node-tcp-with-ebpf/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/accelerate-intra-node-tcp-with-ebpf/... + + \ No newline at end of file diff --git a/current/zh/advance/cilium-hubble-observe/index.html b/current/zh/advance/cilium-hubble-observe/index.html new file mode 100644 index 000000000..a23993f82 --- /dev/null +++ b/current/zh/advance/cilium-hubble-observe/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/cilium-hubble-observe/... + + \ No newline at end of file diff --git a/current/zh/advance/cilium-networkpolicy/index.html b/current/zh/advance/cilium-networkpolicy/index.html new file mode 100644 index 000000000..b8915a2a1 --- /dev/null +++ b/current/zh/advance/cilium-networkpolicy/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/cilium-networkpolicy/... + + \ No newline at end of file diff --git a/current/zh/advance/dhcp/index.html b/current/zh/advance/dhcp/index.html new file mode 100644 index 000000000..3141bf521 --- /dev/null +++ b/current/zh/advance/dhcp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/dhcp/... + + \ No newline at end of file diff --git a/current/zh/advance/dpdk/index.html b/current/zh/advance/dpdk/index.html new file mode 100644 index 000000000..5acc21d44 --- /dev/null +++ b/current/zh/advance/dpdk/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/dpdk/... + + \ No newline at end of file diff --git a/current/zh/advance/external-gateway/index.html b/current/zh/advance/external-gateway/index.html new file mode 100644 index 000000000..f83b55a6b --- /dev/null +++ b/current/zh/advance/external-gateway/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/external-gateway/... + + \ No newline at end of file diff --git a/current/zh/advance/fastpath/index.html b/current/zh/advance/fastpath/index.html new file mode 100644 index 000000000..1de49304b --- /dev/null +++ b/current/zh/advance/fastpath/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/fastpath/... + + \ No newline at end of file diff --git a/current/zh/advance/multi-nic/index.html b/current/zh/advance/multi-nic/index.html new file mode 100644 index 000000000..5266913c3 --- /dev/null +++ b/current/zh/advance/multi-nic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/multi-nic/... + + \ No newline at end of file diff --git a/current/zh/advance/nat-policy-rule/index.html b/current/zh/advance/nat-policy-rule/index.html new file mode 100644 index 000000000..d67da37c6 --- /dev/null +++ b/current/zh/advance/nat-policy-rule/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/nat-policy-rule/... + + \ No newline at end of file diff --git a/current/zh/advance/node-local-dns/index.html b/current/zh/advance/node-local-dns/index.html new file mode 100644 index 000000000..3051124bd --- /dev/null +++ b/current/zh/advance/node-local-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/node-local-dns/... + + \ No newline at end of file diff --git a/current/zh/advance/offload-corigine/index.html b/current/zh/advance/offload-corigine/index.html new file mode 100644 index 000000000..6fce35f21 --- /dev/null +++ b/current/zh/advance/offload-corigine/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/offload-corigine/... + + \ No newline at end of file diff --git a/current/zh/advance/offload-mellanox/index.html b/current/zh/advance/offload-mellanox/index.html new file mode 100644 index 000000000..8b6a040d6 --- /dev/null +++ b/current/zh/advance/offload-mellanox/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/offload-mellanox/... + + \ No newline at end of file diff --git a/current/zh/advance/overlay-with-route/index.html b/current/zh/advance/overlay-with-route/index.html new file mode 100644 index 000000000..02167523c --- /dev/null +++ b/current/zh/advance/overlay-with-route/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/overlay-with-route/... + + \ No newline at end of file diff --git a/current/zh/advance/ovn-eip-fip-snat/index.html b/current/zh/advance/ovn-eip-fip-snat/index.html new file mode 100644 index 000000000..219a63ad2 --- /dev/null +++ b/current/zh/advance/ovn-eip-fip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/ovn-eip-fip-snat/... + + \ No newline at end of file diff --git a/current/zh/advance/ovn-ipsec/index.html b/current/zh/advance/ovn-ipsec/index.html new file mode 100644 index 000000000..d31f32fb0 --- /dev/null +++ b/current/zh/advance/ovn-ipsec/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/ovn-ipsec/... + + \ No newline at end of file diff --git a/current/zh/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html b/current/zh/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html new file mode 100644 index 000000000..3ea3e6711 --- /dev/null +++ b/current/zh/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/ovn-l3-ha-based-ecmp-with-bfd/... + + \ No newline at end of file diff --git a/current/zh/advance/ovn-remote-port-mirroring/index.html b/current/zh/advance/ovn-remote-port-mirroring/index.html new file mode 100644 index 000000000..97793b57c --- /dev/null +++ b/current/zh/advance/ovn-remote-port-mirroring/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/ovn-remote-port-mirroring/... + + \ No newline at end of file diff --git a/current/zh/advance/performance-tuning/index.html b/current/zh/advance/performance-tuning/index.html new file mode 100644 index 000000000..164845f97 --- /dev/null +++ b/current/zh/advance/performance-tuning/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/performance-tuning/... + + \ No newline at end of file diff --git a/current/zh/advance/security-group/index.html b/current/zh/advance/security-group/index.html new file mode 100644 index 000000000..b68353a18 --- /dev/null +++ b/current/zh/advance/security-group/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/security-group/... + + \ No newline at end of file diff --git a/current/zh/advance/vip/index.html b/current/zh/advance/vip/index.html new file mode 100644 index 000000000..36bfc6094 --- /dev/null +++ b/current/zh/advance/vip/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/vip/... + + \ No newline at end of file diff --git a/current/zh/advance/vpc-dns/index.html b/current/zh/advance/vpc-dns/index.html new file mode 100644 index 000000000..08190b013 --- /dev/null +++ b/current/zh/advance/vpc-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/vpc-dns/... + + \ No newline at end of file diff --git a/current/zh/advance/vpc-internal-lb/index.html b/current/zh/advance/vpc-internal-lb/index.html new file mode 100644 index 000000000..6dd7c63d3 --- /dev/null +++ b/current/zh/advance/vpc-internal-lb/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/vpc-internal-lb/... + + \ No newline at end of file diff --git a/current/zh/advance/vpc-peering/index.html b/current/zh/advance/vpc-peering/index.html new file mode 100644 index 000000000..68ac77d69 --- /dev/null +++ b/current/zh/advance/vpc-peering/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/vpc-peering/... + + \ No newline at end of file diff --git a/current/zh/advance/windows/index.html b/current/zh/advance/windows/index.html new file mode 100644 index 000000000..fa6caebae --- /dev/null +++ b/current/zh/advance/windows/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/windows/... + + \ No newline at end of file diff --git a/current/zh/advance/with-bgp/index.html b/current/zh/advance/with-bgp/index.html new file mode 100644 index 000000000..92442d689 --- /dev/null +++ b/current/zh/advance/with-bgp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/with-bgp/... + + \ No newline at end of file diff --git a/current/zh/advance/with-cilium/index.html b/current/zh/advance/with-cilium/index.html new file mode 100644 index 000000000..2951ab7ef --- /dev/null +++ b/current/zh/advance/with-cilium/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/with-cilium/... + + \ No newline at end of file diff --git a/current/zh/advance/with-openstack/index.html b/current/zh/advance/with-openstack/index.html new file mode 100644 index 000000000..29a62942a --- /dev/null +++ b/current/zh/advance/with-openstack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/with-openstack/... + + \ No newline at end of file diff --git a/current/zh/advance/with-ovn-ic/index.html b/current/zh/advance/with-ovn-ic/index.html new file mode 100644 index 000000000..4f666854d --- /dev/null +++ b/current/zh/advance/with-ovn-ic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/with-ovn-ic/... + + \ No newline at end of file diff --git a/current/zh/advance/with-submariner/index.html b/current/zh/advance/with-submariner/index.html new file mode 100644 index 000000000..0604326c5 --- /dev/null +++ b/current/zh/advance/with-submariner/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/with-submariner/... + + \ No newline at end of file diff --git a/current/zh/contact/index.html b/current/zh/contact/index.html new file mode 100644 index 000000000..df555ec4d --- /dev/null +++ b/current/zh/contact/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/zh/contact/... + + \ No newline at end of file diff --git a/current/zh/guide/custom-routes/index.html b/current/zh/guide/custom-routes/index.html new file mode 100644 index 000000000..088f388c5 --- /dev/null +++ b/current/zh/guide/custom-routes/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/custom-routes/... + + \ No newline at end of file diff --git a/current/zh/guide/dual-stack/index.html b/current/zh/guide/dual-stack/index.html new file mode 100644 index 000000000..31d8bbf85 --- /dev/null +++ b/current/zh/guide/dual-stack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/dual-stack/... + + \ No newline at end of file diff --git a/current/zh/guide/eip-snat/index.html b/current/zh/guide/eip-snat/index.html new file mode 100644 index 000000000..03c728c07 --- /dev/null +++ b/current/zh/guide/eip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/eip-snat/... + + \ No newline at end of file diff --git a/current/zh/guide/ippool/index.html b/current/zh/guide/ippool/index.html new file mode 100644 index 000000000..3cafb7b54 --- /dev/null +++ b/current/zh/guide/ippool/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/ippool/... + + \ No newline at end of file diff --git a/current/zh/guide/loadbalancer-service/index.html b/current/zh/guide/loadbalancer-service/index.html new file mode 100644 index 000000000..c6e558917 --- /dev/null +++ b/current/zh/guide/loadbalancer-service/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/loadbalancer-service/... + + \ No newline at end of file diff --git a/current/zh/guide/mirror/index.html b/current/zh/guide/mirror/index.html new file mode 100644 index 000000000..f80e0b149 --- /dev/null +++ b/current/zh/guide/mirror/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/mirror/... + + \ No newline at end of file diff --git a/current/zh/guide/networkpolicy-log/index.html b/current/zh/guide/networkpolicy-log/index.html new file mode 100644 index 000000000..96b14ce65 --- /dev/null +++ b/current/zh/guide/networkpolicy-log/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/networkpolicy-log/... + + \ No newline at end of file diff --git a/current/zh/guide/prometheus-grafana/index.html b/current/zh/guide/prometheus-grafana/index.html new file mode 100644 index 000000000..1eeacddd7 --- /dev/null +++ b/current/zh/guide/prometheus-grafana/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/prometheus-grafana/... + + \ No newline at end of file diff --git a/current/zh/guide/prometheus/index.html b/current/zh/guide/prometheus/index.html new file mode 100644 index 000000000..905d09e37 --- /dev/null +++ b/current/zh/guide/prometheus/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/prometheus/... + + \ No newline at end of file diff --git a/current/zh/guide/qos/index.html b/current/zh/guide/qos/index.html new file mode 100644 index 000000000..f2eab1d4e --- /dev/null +++ b/current/zh/guide/qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/qos/... + + \ No newline at end of file diff --git a/current/zh/guide/setup-options/index.html b/current/zh/guide/setup-options/index.html new file mode 100644 index 000000000..d495edc45 --- /dev/null +++ b/current/zh/guide/setup-options/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/setup-options/... + + \ No newline at end of file diff --git a/current/zh/guide/static-ip-mac/index.html b/current/zh/guide/static-ip-mac/index.html new file mode 100644 index 000000000..4cbe0604f --- /dev/null +++ b/current/zh/guide/static-ip-mac/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/static-ip-mac/... + + \ No newline at end of file diff --git a/current/zh/guide/subnet/index.html b/current/zh/guide/subnet/index.html new file mode 100644 index 000000000..e1427d2c6 --- /dev/null +++ b/current/zh/guide/subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/subnet/... + + \ No newline at end of file diff --git a/current/zh/guide/vpc-qos/index.html b/current/zh/guide/vpc-qos/index.html new file mode 100644 index 000000000..5889e9525 --- /dev/null +++ b/current/zh/guide/vpc-qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/vpc-qos/... + + \ No newline at end of file diff --git a/current/zh/guide/vpc/index.html b/current/zh/guide/vpc/index.html new file mode 100644 index 000000000..761c8ae8e --- /dev/null +++ b/current/zh/guide/vpc/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/vpc/... + + \ No newline at end of file diff --git a/current/zh/guide/webhook/index.html b/current/zh/guide/webhook/index.html new file mode 100644 index 000000000..69ea92a42 --- /dev/null +++ b/current/zh/guide/webhook/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/webhook/... + + \ No newline at end of file diff --git a/current/zh/index.html b/current/zh/index.html new file mode 100644 index 000000000..ff2f66646 --- /dev/null +++ b/current/zh/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../v1.12.x/zh/... + + \ No newline at end of file diff --git a/current/zh/ops/change-default-subnet/index.html b/current/zh/ops/change-default-subnet/index.html new file mode 100644 index 000000000..b2fe616c8 --- /dev/null +++ b/current/zh/ops/change-default-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/change-default-subnet/... + + \ No newline at end of file diff --git a/current/zh/ops/change-join-subnet/index.html b/current/zh/ops/change-join-subnet/index.html new file mode 100644 index 000000000..a26a063de --- /dev/null +++ b/current/zh/ops/change-join-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/change-join-subnet/... + + \ No newline at end of file diff --git a/current/zh/ops/change-log-level/index.html b/current/zh/ops/change-log-level/index.html new file mode 100644 index 000000000..fe2b503df --- /dev/null +++ b/current/zh/ops/change-log-level/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/change-log-level/... + + \ No newline at end of file diff --git a/current/zh/ops/change-ovn-central-node/index.html b/current/zh/ops/change-ovn-central-node/index.html new file mode 100644 index 000000000..bc41fc3f2 --- /dev/null +++ b/current/zh/ops/change-ovn-central-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/change-ovn-central-node/... + + \ No newline at end of file diff --git a/current/zh/ops/delete-worker-node/index.html b/current/zh/ops/delete-worker-node/index.html new file mode 100644 index 000000000..129447e3e --- /dev/null +++ b/current/zh/ops/delete-worker-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/delete-worker-node/... + + \ No newline at end of file diff --git a/current/zh/ops/faq/index.html b/current/zh/ops/faq/index.html new file mode 100644 index 000000000..fe10d5152 --- /dev/null +++ b/current/zh/ops/faq/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/faq/... + + \ No newline at end of file diff --git a/current/zh/ops/from-calico/index.html b/current/zh/ops/from-calico/index.html new file mode 100644 index 000000000..feb6ae642 --- /dev/null +++ b/current/zh/ops/from-calico/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/from-calico/... + + \ No newline at end of file diff --git a/current/zh/ops/kubectl-ko/index.html b/current/zh/ops/kubectl-ko/index.html new file mode 100644 index 000000000..1f4a8082d --- /dev/null +++ b/current/zh/ops/kubectl-ko/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/kubectl-ko/... + + \ No newline at end of file diff --git a/current/zh/ops/recover-db/index.html b/current/zh/ops/recover-db/index.html new file mode 100644 index 000000000..64c636f70 --- /dev/null +++ b/current/zh/ops/recover-db/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/recover-db/... + + \ No newline at end of file diff --git a/current/zh/reference/architecture/index.html b/current/zh/reference/architecture/index.html new file mode 100644 index 000000000..0b3d5d801 --- /dev/null +++ b/current/zh/reference/architecture/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/architecture/... + + \ No newline at end of file diff --git a/current/zh/reference/dev-env/index.html b/current/zh/reference/dev-env/index.html new file mode 100644 index 000000000..259ca66d3 --- /dev/null +++ b/current/zh/reference/dev-env/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/dev-env/... + + \ No newline at end of file diff --git a/current/zh/reference/document-convention/index.html b/current/zh/reference/document-convention/index.html new file mode 100644 index 000000000..70a6d571b --- /dev/null +++ b/current/zh/reference/document-convention/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/document-convention/... + + \ No newline at end of file diff --git a/current/zh/reference/feature-stage/index.html b/current/zh/reference/feature-stage/index.html new file mode 100644 index 000000000..9a1c88802 --- /dev/null +++ b/current/zh/reference/feature-stage/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/feature-stage/... + + \ No newline at end of file diff --git a/current/zh/reference/iptables-rules/index.html b/current/zh/reference/iptables-rules/index.html new file mode 100644 index 000000000..37d102b06 --- /dev/null +++ b/current/zh/reference/iptables-rules/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/iptables-rules/... + + \ No newline at end of file diff --git a/current/zh/reference/kube-ovn-api/index.html b/current/zh/reference/kube-ovn-api/index.html new file mode 100644 index 000000000..2f5dc6727 --- /dev/null +++ b/current/zh/reference/kube-ovn-api/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/kube-ovn-api/... + + \ No newline at end of file diff --git a/current/zh/reference/kube-ovn-pinger-args/index.html b/current/zh/reference/kube-ovn-pinger-args/index.html new file mode 100644 index 000000000..6a6ed7a81 --- /dev/null +++ b/current/zh/reference/kube-ovn-pinger-args/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/kube-ovn-pinger-args/... + + \ No newline at end of file diff --git a/current/zh/reference/metrics/index.html b/current/zh/reference/metrics/index.html new file mode 100644 index 000000000..bc0da3a1d --- /dev/null +++ b/current/zh/reference/metrics/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/metrics/... + + \ No newline at end of file diff --git a/current/zh/reference/ovs-ovn-customized/index.html b/current/zh/reference/ovs-ovn-customized/index.html new file mode 100644 index 000000000..2ae42c606 --- /dev/null +++ b/current/zh/reference/ovs-ovn-customized/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/ovs-ovn-customized/... + + \ No newline at end of file diff --git a/current/zh/reference/tunnel-protocol/index.html b/current/zh/reference/tunnel-protocol/index.html new file mode 100644 index 000000000..017e90896 --- /dev/null +++ b/current/zh/reference/tunnel-protocol/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/tunnel-protocol/... + + \ No newline at end of file diff --git a/current/zh/reference/underlay-topology/index.html b/current/zh/reference/underlay-topology/index.html new file mode 100644 index 000000000..48b4912c2 --- /dev/null +++ b/current/zh/reference/underlay-topology/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/underlay-topology/... + + \ No newline at end of file diff --git a/current/zh/start/one-step-install/index.html b/current/zh/start/one-step-install/index.html new file mode 100644 index 000000000..cee63fd8f --- /dev/null +++ b/current/zh/start/one-step-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/start/one-step-install/... + + \ No newline at end of file diff --git a/current/zh/start/prepare/index.html b/current/zh/start/prepare/index.html new file mode 100644 index 000000000..5b91f99c6 --- /dev/null +++ b/current/zh/start/prepare/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/start/prepare/... + + \ No newline at end of file diff --git a/current/zh/start/sealos-install/index.html b/current/zh/start/sealos-install/index.html new file mode 100644 index 000000000..c7a57c196 --- /dev/null +++ b/current/zh/start/sealos-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/start/sealos-install/... + + \ No newline at end of file diff --git a/current/zh/start/underlay/index.html b/current/zh/start/underlay/index.html new file mode 100644 index 000000000..72f05fba6 --- /dev/null +++ b/current/zh/start/underlay/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/start/underlay/... + + \ No newline at end of file diff --git a/current/zh/start/uninstall/index.html b/current/zh/start/uninstall/index.html new file mode 100644 index 000000000..6d96076b9 --- /dev/null +++ b/current/zh/start/uninstall/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/start/uninstall/... + + \ No newline at end of file diff --git a/stable b/stable deleted file mode 120000 index c41b369a3..000000000 --- a/stable +++ /dev/null @@ -1 +0,0 @@ -v1.12.x \ No newline at end of file diff --git a/stable/404.html b/stable/404.html new file mode 100644 index 000000000..73cda290e --- /dev/null +++ b/stable/404.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../v1.12.x/404.html... + + \ No newline at end of file diff --git a/stable/advance/accelerate-intra-node-tcp-with-ebpf/index.html b/stable/advance/accelerate-intra-node-tcp-with-ebpf/index.html new file mode 100644 index 000000000..a037abe52 --- /dev/null +++ b/stable/advance/accelerate-intra-node-tcp-with-ebpf/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/accelerate-intra-node-tcp-with-ebpf/... + + \ No newline at end of file diff --git a/stable/advance/cilium-hubble-observe/index.html b/stable/advance/cilium-hubble-observe/index.html new file mode 100644 index 000000000..885ae3524 --- /dev/null +++ b/stable/advance/cilium-hubble-observe/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/cilium-hubble-observe/... + + \ No newline at end of file diff --git a/stable/advance/cilium-networkpolicy/index.html b/stable/advance/cilium-networkpolicy/index.html new file mode 100644 index 000000000..cb9cfe33d --- /dev/null +++ b/stable/advance/cilium-networkpolicy/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/cilium-networkpolicy/... + + \ No newline at end of file diff --git a/stable/advance/dhcp/index.html b/stable/advance/dhcp/index.html new file mode 100644 index 000000000..a6abbad4b --- /dev/null +++ b/stable/advance/dhcp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/dhcp/... + + \ No newline at end of file diff --git a/stable/advance/dpdk/index.html b/stable/advance/dpdk/index.html new file mode 100644 index 000000000..e05fa53d7 --- /dev/null +++ b/stable/advance/dpdk/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/dpdk/... + + \ No newline at end of file diff --git a/stable/advance/external-gateway/index.html b/stable/advance/external-gateway/index.html new file mode 100644 index 000000000..4b2e9b73d --- /dev/null +++ b/stable/advance/external-gateway/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/external-gateway/... + + \ No newline at end of file diff --git a/stable/advance/fastpath/index.html b/stable/advance/fastpath/index.html new file mode 100644 index 000000000..5574d1550 --- /dev/null +++ b/stable/advance/fastpath/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/fastpath/... + + \ No newline at end of file diff --git a/stable/advance/multi-nic/index.html b/stable/advance/multi-nic/index.html new file mode 100644 index 000000000..138cc6272 --- /dev/null +++ b/stable/advance/multi-nic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/multi-nic/... + + \ No newline at end of file diff --git a/stable/advance/nat-policy-rule/index.html b/stable/advance/nat-policy-rule/index.html new file mode 100644 index 000000000..11e0a0ddf --- /dev/null +++ b/stable/advance/nat-policy-rule/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/nat-policy-rule/... + + \ No newline at end of file diff --git a/stable/advance/node-local-dns/index.html b/stable/advance/node-local-dns/index.html new file mode 100644 index 000000000..e69ac0f31 --- /dev/null +++ b/stable/advance/node-local-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/node-local-dns/... + + \ No newline at end of file diff --git a/stable/advance/offload-corigine/index.html b/stable/advance/offload-corigine/index.html new file mode 100644 index 000000000..97dbbaca2 --- /dev/null +++ b/stable/advance/offload-corigine/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/offload-corigine/... + + \ No newline at end of file diff --git a/stable/advance/offload-mellanox/index.html b/stable/advance/offload-mellanox/index.html new file mode 100644 index 000000000..1b85a8b71 --- /dev/null +++ b/stable/advance/offload-mellanox/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/offload-mellanox/... + + \ No newline at end of file diff --git a/stable/advance/overlay-with-route/index.html b/stable/advance/overlay-with-route/index.html new file mode 100644 index 000000000..c4961ad2f --- /dev/null +++ b/stable/advance/overlay-with-route/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/overlay-with-route/... + + \ No newline at end of file diff --git a/stable/advance/ovn-eip-fip-snat/index.html b/stable/advance/ovn-eip-fip-snat/index.html new file mode 100644 index 000000000..091c4d135 --- /dev/null +++ b/stable/advance/ovn-eip-fip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/ovn-eip-fip-snat/... + + \ No newline at end of file diff --git a/stable/advance/ovn-ipsec/index.html b/stable/advance/ovn-ipsec/index.html new file mode 100644 index 000000000..752f13af7 --- /dev/null +++ b/stable/advance/ovn-ipsec/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/ovn-ipsec/... + + \ No newline at end of file diff --git a/stable/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html b/stable/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html new file mode 100644 index 000000000..d4070a30d --- /dev/null +++ b/stable/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/ovn-l3-ha-based-ecmp-with-bfd/... + + \ No newline at end of file diff --git a/stable/advance/ovn-remote-port-mirroring/index.html b/stable/advance/ovn-remote-port-mirroring/index.html new file mode 100644 index 000000000..ca509f096 --- /dev/null +++ b/stable/advance/ovn-remote-port-mirroring/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/ovn-remote-port-mirroring/... + + \ No newline at end of file diff --git a/stable/advance/performance-tuning/index.html b/stable/advance/performance-tuning/index.html new file mode 100644 index 000000000..a52993cd6 --- /dev/null +++ b/stable/advance/performance-tuning/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/performance-tuning/... + + \ No newline at end of file diff --git a/stable/advance/security-group/index.html b/stable/advance/security-group/index.html new file mode 100644 index 000000000..e9099fbb3 --- /dev/null +++ b/stable/advance/security-group/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/security-group/... + + \ No newline at end of file diff --git a/stable/advance/vip/index.html b/stable/advance/vip/index.html new file mode 100644 index 000000000..d54db1e0d --- /dev/null +++ b/stable/advance/vip/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/vip/... + + \ No newline at end of file diff --git a/stable/advance/vpc-dns/index.html b/stable/advance/vpc-dns/index.html new file mode 100644 index 000000000..970d95eef --- /dev/null +++ b/stable/advance/vpc-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/vpc-dns/... + + \ No newline at end of file diff --git a/stable/advance/vpc-internal-lb/index.html b/stable/advance/vpc-internal-lb/index.html new file mode 100644 index 000000000..36d16b2fa --- /dev/null +++ b/stable/advance/vpc-internal-lb/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/vpc-internal-lb/... + + \ No newline at end of file diff --git a/stable/advance/vpc-peering/index.html b/stable/advance/vpc-peering/index.html new file mode 100644 index 000000000..eeb1d3d25 --- /dev/null +++ b/stable/advance/vpc-peering/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/vpc-peering/... + + \ No newline at end of file diff --git a/stable/advance/windows/index.html b/stable/advance/windows/index.html new file mode 100644 index 000000000..b3c593332 --- /dev/null +++ b/stable/advance/windows/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/windows/... + + \ No newline at end of file diff --git a/stable/advance/with-bgp/index.html b/stable/advance/with-bgp/index.html new file mode 100644 index 000000000..de63b0f97 --- /dev/null +++ b/stable/advance/with-bgp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/with-bgp/... + + \ No newline at end of file diff --git a/stable/advance/with-cilium/index.html b/stable/advance/with-cilium/index.html new file mode 100644 index 000000000..f60c3380d --- /dev/null +++ b/stable/advance/with-cilium/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/with-cilium/... + + \ No newline at end of file diff --git a/stable/advance/with-openstack/index.html b/stable/advance/with-openstack/index.html new file mode 100644 index 000000000..31e62e813 --- /dev/null +++ b/stable/advance/with-openstack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/with-openstack/... + + \ No newline at end of file diff --git a/stable/advance/with-ovn-ic/index.html b/stable/advance/with-ovn-ic/index.html new file mode 100644 index 000000000..007a89a3f --- /dev/null +++ b/stable/advance/with-ovn-ic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/with-ovn-ic/... + + \ No newline at end of file diff --git a/stable/advance/with-submariner/index.html b/stable/advance/with-submariner/index.html new file mode 100644 index 000000000..355931354 --- /dev/null +++ b/stable/advance/with-submariner/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/advance/with-submariner/... + + \ No newline at end of file diff --git a/stable/contact/index.html b/stable/contact/index.html new file mode 100644 index 000000000..1323b2f20 --- /dev/null +++ b/stable/contact/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../v1.12.x/contact/... + + \ No newline at end of file diff --git a/stable/en/advance/accelerate-intra-node-tcp-with-ebpf/index.html b/stable/en/advance/accelerate-intra-node-tcp-with-ebpf/index.html new file mode 100644 index 000000000..a6f003b4a --- /dev/null +++ b/stable/en/advance/accelerate-intra-node-tcp-with-ebpf/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/accelerate-intra-node-tcp-with-ebpf/... + + \ No newline at end of file diff --git a/stable/en/advance/cilium-hubble-observe/index.html b/stable/en/advance/cilium-hubble-observe/index.html new file mode 100644 index 000000000..09eb34bf3 --- /dev/null +++ b/stable/en/advance/cilium-hubble-observe/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/cilium-hubble-observe/... + + \ No newline at end of file diff --git a/stable/en/advance/cilium-networkpolicy/index.html b/stable/en/advance/cilium-networkpolicy/index.html new file mode 100644 index 000000000..fd3efeebf --- /dev/null +++ b/stable/en/advance/cilium-networkpolicy/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/cilium-networkpolicy/... + + \ No newline at end of file diff --git a/stable/en/advance/dhcp/index.html b/stable/en/advance/dhcp/index.html new file mode 100644 index 000000000..45e11d990 --- /dev/null +++ b/stable/en/advance/dhcp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/dhcp/... + + \ No newline at end of file diff --git a/stable/en/advance/dpdk/index.html b/stable/en/advance/dpdk/index.html new file mode 100644 index 000000000..d69b0b1d6 --- /dev/null +++ b/stable/en/advance/dpdk/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/dpdk/... + + \ No newline at end of file diff --git a/stable/en/advance/external-gateway/index.html b/stable/en/advance/external-gateway/index.html new file mode 100644 index 000000000..5318778f8 --- /dev/null +++ b/stable/en/advance/external-gateway/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/external-gateway/... + + \ No newline at end of file diff --git a/stable/en/advance/fastpath/index.html b/stable/en/advance/fastpath/index.html new file mode 100644 index 000000000..3c8b3b0ee --- /dev/null +++ b/stable/en/advance/fastpath/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/fastpath/... + + \ No newline at end of file diff --git a/stable/en/advance/multi-nic/index.html b/stable/en/advance/multi-nic/index.html new file mode 100644 index 000000000..9b86604af --- /dev/null +++ b/stable/en/advance/multi-nic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/multi-nic/... + + \ No newline at end of file diff --git a/stable/en/advance/nat-policy-rule/index.html b/stable/en/advance/nat-policy-rule/index.html new file mode 100644 index 000000000..59508ec95 --- /dev/null +++ b/stable/en/advance/nat-policy-rule/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/nat-policy-rule/... + + \ No newline at end of file diff --git a/stable/en/advance/node-local-dns/index.html b/stable/en/advance/node-local-dns/index.html new file mode 100644 index 000000000..dd6e81107 --- /dev/null +++ b/stable/en/advance/node-local-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/node-local-dns/... + + \ No newline at end of file diff --git a/stable/en/advance/offload-corigine/index.html b/stable/en/advance/offload-corigine/index.html new file mode 100644 index 000000000..8457d1a1e --- /dev/null +++ b/stable/en/advance/offload-corigine/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/offload-corigine/... + + \ No newline at end of file diff --git a/stable/en/advance/offload-mellanox/index.html b/stable/en/advance/offload-mellanox/index.html new file mode 100644 index 000000000..9bea10339 --- /dev/null +++ b/stable/en/advance/offload-mellanox/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/offload-mellanox/... + + \ No newline at end of file diff --git a/stable/en/advance/overlay-with-route/index.html b/stable/en/advance/overlay-with-route/index.html new file mode 100644 index 000000000..b9e5d9bf1 --- /dev/null +++ b/stable/en/advance/overlay-with-route/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/overlay-with-route/... + + \ No newline at end of file diff --git a/stable/en/advance/ovn-eip-fip-snat/index.html b/stable/en/advance/ovn-eip-fip-snat/index.html new file mode 100644 index 000000000..c22e404fd --- /dev/null +++ b/stable/en/advance/ovn-eip-fip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/ovn-eip-fip-snat/... + + \ No newline at end of file diff --git a/stable/en/advance/ovn-ipsec/index.html b/stable/en/advance/ovn-ipsec/index.html new file mode 100644 index 000000000..39f1cd3ac --- /dev/null +++ b/stable/en/advance/ovn-ipsec/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/ovn-ipsec/... + + \ No newline at end of file diff --git a/stable/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html b/stable/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html new file mode 100644 index 000000000..918d25091 --- /dev/null +++ b/stable/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/ovn-l3-ha-based-ecmp-with-bfd/... + + \ No newline at end of file diff --git a/stable/en/advance/ovn-remote-port-mirroring/index.html b/stable/en/advance/ovn-remote-port-mirroring/index.html new file mode 100644 index 000000000..1933e0e89 --- /dev/null +++ b/stable/en/advance/ovn-remote-port-mirroring/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/ovn-remote-port-mirroring/... + + \ No newline at end of file diff --git a/stable/en/advance/performance-tuning/index.html b/stable/en/advance/performance-tuning/index.html new file mode 100644 index 000000000..6dc2d10de --- /dev/null +++ b/stable/en/advance/performance-tuning/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/performance-tuning/... + + \ No newline at end of file diff --git a/stable/en/advance/security-group/index.html b/stable/en/advance/security-group/index.html new file mode 100644 index 000000000..eeb4f1bbb --- /dev/null +++ b/stable/en/advance/security-group/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/security-group/... + + \ No newline at end of file diff --git a/stable/en/advance/vip/index.html b/stable/en/advance/vip/index.html new file mode 100644 index 000000000..c40df47d2 --- /dev/null +++ b/stable/en/advance/vip/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/vip/... + + \ No newline at end of file diff --git a/stable/en/advance/vpc-dns/index.html b/stable/en/advance/vpc-dns/index.html new file mode 100644 index 000000000..02304c71f --- /dev/null +++ b/stable/en/advance/vpc-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/vpc-dns/... + + \ No newline at end of file diff --git a/stable/en/advance/vpc-internal-lb/index.html b/stable/en/advance/vpc-internal-lb/index.html new file mode 100644 index 000000000..933adbb30 --- /dev/null +++ b/stable/en/advance/vpc-internal-lb/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/vpc-internal-lb/... + + \ No newline at end of file diff --git a/stable/en/advance/vpc-peering/index.html b/stable/en/advance/vpc-peering/index.html new file mode 100644 index 000000000..849b641bf --- /dev/null +++ b/stable/en/advance/vpc-peering/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/vpc-peering/... + + \ No newline at end of file diff --git a/stable/en/advance/windows/index.html b/stable/en/advance/windows/index.html new file mode 100644 index 000000000..b8770a2cf --- /dev/null +++ b/stable/en/advance/windows/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/windows/... + + \ No newline at end of file diff --git a/stable/en/advance/with-bgp/index.html b/stable/en/advance/with-bgp/index.html new file mode 100644 index 000000000..a10ae7075 --- /dev/null +++ b/stable/en/advance/with-bgp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/with-bgp/... + + \ No newline at end of file diff --git a/stable/en/advance/with-cilium/index.html b/stable/en/advance/with-cilium/index.html new file mode 100644 index 000000000..db0befd78 --- /dev/null +++ b/stable/en/advance/with-cilium/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/with-cilium/... + + \ No newline at end of file diff --git a/stable/en/advance/with-openstack/index.html b/stable/en/advance/with-openstack/index.html new file mode 100644 index 000000000..ea97ea31d --- /dev/null +++ b/stable/en/advance/with-openstack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/with-openstack/... + + \ No newline at end of file diff --git a/stable/en/advance/with-ovn-ic/index.html b/stable/en/advance/with-ovn-ic/index.html new file mode 100644 index 000000000..dadc8a956 --- /dev/null +++ b/stable/en/advance/with-ovn-ic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/with-ovn-ic/... + + \ No newline at end of file diff --git a/stable/en/advance/with-submariner/index.html b/stable/en/advance/with-submariner/index.html new file mode 100644 index 000000000..5ca3c84ae --- /dev/null +++ b/stable/en/advance/with-submariner/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/advance/with-submariner/... + + \ No newline at end of file diff --git a/stable/en/contact/index.html b/stable/en/contact/index.html new file mode 100644 index 000000000..422ec5bb0 --- /dev/null +++ b/stable/en/contact/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/en/contact/... + + \ No newline at end of file diff --git a/stable/en/guide/custom-routes/index.html b/stable/en/guide/custom-routes/index.html new file mode 100644 index 000000000..249c9790f --- /dev/null +++ b/stable/en/guide/custom-routes/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/custom-routes/... + + \ No newline at end of file diff --git a/stable/en/guide/dual-stack/index.html b/stable/en/guide/dual-stack/index.html new file mode 100644 index 000000000..2b8336bb7 --- /dev/null +++ b/stable/en/guide/dual-stack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/dual-stack/... + + \ No newline at end of file diff --git a/stable/en/guide/eip-snat/index.html b/stable/en/guide/eip-snat/index.html new file mode 100644 index 000000000..a99ce4019 --- /dev/null +++ b/stable/en/guide/eip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/eip-snat/... + + \ No newline at end of file diff --git a/stable/en/guide/ippool/index.html b/stable/en/guide/ippool/index.html new file mode 100644 index 000000000..7b1570ec5 --- /dev/null +++ b/stable/en/guide/ippool/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/ippool/... + + \ No newline at end of file diff --git a/stable/en/guide/loadbalancer-service/index.html b/stable/en/guide/loadbalancer-service/index.html new file mode 100644 index 000000000..3437cdc2c --- /dev/null +++ b/stable/en/guide/loadbalancer-service/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/loadbalancer-service/... + + \ No newline at end of file diff --git a/stable/en/guide/mirror/index.html b/stable/en/guide/mirror/index.html new file mode 100644 index 000000000..a5b0d0602 --- /dev/null +++ b/stable/en/guide/mirror/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/mirror/... + + \ No newline at end of file diff --git a/stable/en/guide/networkpolicy-log/index.html b/stable/en/guide/networkpolicy-log/index.html new file mode 100644 index 000000000..2d559f8d9 --- /dev/null +++ b/stable/en/guide/networkpolicy-log/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/networkpolicy-log/... + + \ No newline at end of file diff --git a/stable/en/guide/prometheus-grafana/index.html b/stable/en/guide/prometheus-grafana/index.html new file mode 100644 index 000000000..feb934a08 --- /dev/null +++ b/stable/en/guide/prometheus-grafana/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/prometheus-grafana/... + + \ No newline at end of file diff --git a/stable/en/guide/prometheus/index.html b/stable/en/guide/prometheus/index.html new file mode 100644 index 000000000..988fa1ae3 --- /dev/null +++ b/stable/en/guide/prometheus/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/prometheus/... + + \ No newline at end of file diff --git a/stable/en/guide/qos/index.html b/stable/en/guide/qos/index.html new file mode 100644 index 000000000..2d97ba4b9 --- /dev/null +++ b/stable/en/guide/qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/qos/... + + \ No newline at end of file diff --git a/stable/en/guide/setup-options/index.html b/stable/en/guide/setup-options/index.html new file mode 100644 index 000000000..a875d623d --- /dev/null +++ b/stable/en/guide/setup-options/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/setup-options/... + + \ No newline at end of file diff --git a/stable/en/guide/static-ip-mac/index.html b/stable/en/guide/static-ip-mac/index.html new file mode 100644 index 000000000..6f7260a24 --- /dev/null +++ b/stable/en/guide/static-ip-mac/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/static-ip-mac/... + + \ No newline at end of file diff --git a/stable/en/guide/subnet/index.html b/stable/en/guide/subnet/index.html new file mode 100644 index 000000000..613ac5802 --- /dev/null +++ b/stable/en/guide/subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/subnet/... + + \ No newline at end of file diff --git a/stable/en/guide/vpc-qos/index.html b/stable/en/guide/vpc-qos/index.html new file mode 100644 index 000000000..88f10b9c1 --- /dev/null +++ b/stable/en/guide/vpc-qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/vpc-qos/... + + \ No newline at end of file diff --git a/stable/en/guide/vpc/index.html b/stable/en/guide/vpc/index.html new file mode 100644 index 000000000..a01510389 --- /dev/null +++ b/stable/en/guide/vpc/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/vpc/... + + \ No newline at end of file diff --git a/stable/en/guide/webhook/index.html b/stable/en/guide/webhook/index.html new file mode 100644 index 000000000..64dcfebbe --- /dev/null +++ b/stable/en/guide/webhook/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/guide/webhook/... + + \ No newline at end of file diff --git a/stable/en/index.html b/stable/en/index.html new file mode 100644 index 000000000..a2b1f50e8 --- /dev/null +++ b/stable/en/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../v1.12.x/en/... + + \ No newline at end of file diff --git a/stable/en/ops/change-default-subnet/index.html b/stable/en/ops/change-default-subnet/index.html new file mode 100644 index 000000000..7a38938c3 --- /dev/null +++ b/stable/en/ops/change-default-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/change-default-subnet/... + + \ No newline at end of file diff --git a/stable/en/ops/change-join-subnet/index.html b/stable/en/ops/change-join-subnet/index.html new file mode 100644 index 000000000..3b8fba7da --- /dev/null +++ b/stable/en/ops/change-join-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/change-join-subnet/... + + \ No newline at end of file diff --git a/stable/en/ops/change-log-level/index.html b/stable/en/ops/change-log-level/index.html new file mode 100644 index 000000000..39de671eb --- /dev/null +++ b/stable/en/ops/change-log-level/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/change-log-level/... + + \ No newline at end of file diff --git a/stable/en/ops/change-ovn-central-node/index.html b/stable/en/ops/change-ovn-central-node/index.html new file mode 100644 index 000000000..e631180e0 --- /dev/null +++ b/stable/en/ops/change-ovn-central-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/change-ovn-central-node/... + + \ No newline at end of file diff --git a/stable/en/ops/delete-worker-node/index.html b/stable/en/ops/delete-worker-node/index.html new file mode 100644 index 000000000..fdb8500f6 --- /dev/null +++ b/stable/en/ops/delete-worker-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/delete-worker-node/... + + \ No newline at end of file diff --git a/stable/en/ops/faq/index.html b/stable/en/ops/faq/index.html new file mode 100644 index 000000000..20793ecbe --- /dev/null +++ b/stable/en/ops/faq/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/faq/... + + \ No newline at end of file diff --git a/stable/en/ops/from-calico/index.html b/stable/en/ops/from-calico/index.html new file mode 100644 index 000000000..a550b9178 --- /dev/null +++ b/stable/en/ops/from-calico/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/from-calico/... + + \ No newline at end of file diff --git a/stable/en/ops/kubectl-ko/index.html b/stable/en/ops/kubectl-ko/index.html new file mode 100644 index 000000000..369007b94 --- /dev/null +++ b/stable/en/ops/kubectl-ko/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/kubectl-ko/... + + \ No newline at end of file diff --git a/stable/en/ops/recover-db/index.html b/stable/en/ops/recover-db/index.html new file mode 100644 index 000000000..f6042f8ea --- /dev/null +++ b/stable/en/ops/recover-db/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/ops/recover-db/... + + \ No newline at end of file diff --git a/stable/en/reference/architecture/index.html b/stable/en/reference/architecture/index.html new file mode 100644 index 000000000..3ec315144 --- /dev/null +++ b/stable/en/reference/architecture/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/architecture/... + + \ No newline at end of file diff --git a/stable/en/reference/dev-env/index.html b/stable/en/reference/dev-env/index.html new file mode 100644 index 000000000..5d743f606 --- /dev/null +++ b/stable/en/reference/dev-env/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/dev-env/... + + \ No newline at end of file diff --git a/stable/en/reference/document-convention/index.html b/stable/en/reference/document-convention/index.html new file mode 100644 index 000000000..b6eb91bb9 --- /dev/null +++ b/stable/en/reference/document-convention/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/document-convention/... + + \ No newline at end of file diff --git a/stable/en/reference/feature-stage/index.html b/stable/en/reference/feature-stage/index.html new file mode 100644 index 000000000..dee3417a1 --- /dev/null +++ b/stable/en/reference/feature-stage/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/feature-stage/... + + \ No newline at end of file diff --git a/stable/en/reference/iptables-rules/index.html b/stable/en/reference/iptables-rules/index.html new file mode 100644 index 000000000..3f3f94eab --- /dev/null +++ b/stable/en/reference/iptables-rules/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/iptables-rules/... + + \ No newline at end of file diff --git a/stable/en/reference/kube-ovn-api/index.html b/stable/en/reference/kube-ovn-api/index.html new file mode 100644 index 000000000..71182cbdd --- /dev/null +++ b/stable/en/reference/kube-ovn-api/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/kube-ovn-api/... + + \ No newline at end of file diff --git a/stable/en/reference/kube-ovn-pinger-args/index.html b/stable/en/reference/kube-ovn-pinger-args/index.html new file mode 100644 index 000000000..cf7c608aa --- /dev/null +++ b/stable/en/reference/kube-ovn-pinger-args/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/kube-ovn-pinger-args/... + + \ No newline at end of file diff --git a/stable/en/reference/metrics/index.html b/stable/en/reference/metrics/index.html new file mode 100644 index 000000000..51bcfa02a --- /dev/null +++ b/stable/en/reference/metrics/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/metrics/... + + \ No newline at end of file diff --git a/stable/en/reference/ovs-ovn-customized/index.html b/stable/en/reference/ovs-ovn-customized/index.html new file mode 100644 index 000000000..4cabd032f --- /dev/null +++ b/stable/en/reference/ovs-ovn-customized/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/ovs-ovn-customized/... + + \ No newline at end of file diff --git a/stable/en/reference/tunnel-protocol/index.html b/stable/en/reference/tunnel-protocol/index.html new file mode 100644 index 000000000..8287d71c4 --- /dev/null +++ b/stable/en/reference/tunnel-protocol/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/tunnel-protocol/... + + \ No newline at end of file diff --git a/stable/en/reference/underlay-topology/index.html b/stable/en/reference/underlay-topology/index.html new file mode 100644 index 000000000..1ef5cf333 --- /dev/null +++ b/stable/en/reference/underlay-topology/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/reference/underlay-topology/... + + \ No newline at end of file diff --git a/stable/en/start/one-step-install/index.html b/stable/en/start/one-step-install/index.html new file mode 100644 index 000000000..7f03d6f60 --- /dev/null +++ b/stable/en/start/one-step-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/start/one-step-install/... + + \ No newline at end of file diff --git a/stable/en/start/prepare/index.html b/stable/en/start/prepare/index.html new file mode 100644 index 000000000..f5efd9b72 --- /dev/null +++ b/stable/en/start/prepare/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/start/prepare/... + + \ No newline at end of file diff --git a/stable/en/start/sealos-install/index.html b/stable/en/start/sealos-install/index.html new file mode 100644 index 000000000..df3ccdbc4 --- /dev/null +++ b/stable/en/start/sealos-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/start/sealos-install/... + + \ No newline at end of file diff --git a/stable/en/start/underlay/index.html b/stable/en/start/underlay/index.html new file mode 100644 index 000000000..0c3c09ddc --- /dev/null +++ b/stable/en/start/underlay/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/start/underlay/... + + \ No newline at end of file diff --git a/stable/en/start/uninstall/index.html b/stable/en/start/uninstall/index.html new file mode 100644 index 000000000..75e7a0545 --- /dev/null +++ b/stable/en/start/uninstall/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/en/start/uninstall/... + + \ No newline at end of file diff --git a/stable/guide/custom-routes/index.html b/stable/guide/custom-routes/index.html new file mode 100644 index 000000000..f0197caed --- /dev/null +++ b/stable/guide/custom-routes/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/custom-routes/... + + \ No newline at end of file diff --git a/stable/guide/dual-stack/index.html b/stable/guide/dual-stack/index.html new file mode 100644 index 000000000..b96243664 --- /dev/null +++ b/stable/guide/dual-stack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/dual-stack/... + + \ No newline at end of file diff --git a/stable/guide/eip-snat/index.html b/stable/guide/eip-snat/index.html new file mode 100644 index 000000000..1e5a50f01 --- /dev/null +++ b/stable/guide/eip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/eip-snat/... + + \ No newline at end of file diff --git a/stable/guide/ippool/index.html b/stable/guide/ippool/index.html new file mode 100644 index 000000000..7dbe307cf --- /dev/null +++ b/stable/guide/ippool/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/ippool/... + + \ No newline at end of file diff --git a/stable/guide/loadbalancer-service/index.html b/stable/guide/loadbalancer-service/index.html new file mode 100644 index 000000000..1a010db16 --- /dev/null +++ b/stable/guide/loadbalancer-service/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/loadbalancer-service/... + + \ No newline at end of file diff --git a/stable/guide/mirror/index.html b/stable/guide/mirror/index.html new file mode 100644 index 000000000..3bcdd3be4 --- /dev/null +++ b/stable/guide/mirror/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/mirror/... + + \ No newline at end of file diff --git a/stable/guide/networkpolicy-log/index.html b/stable/guide/networkpolicy-log/index.html new file mode 100644 index 000000000..eb3ecb184 --- /dev/null +++ b/stable/guide/networkpolicy-log/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/networkpolicy-log/... + + \ No newline at end of file diff --git a/stable/guide/prometheus-grafana/index.html b/stable/guide/prometheus-grafana/index.html new file mode 100644 index 000000000..57b42e432 --- /dev/null +++ b/stable/guide/prometheus-grafana/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/prometheus-grafana/... + + \ No newline at end of file diff --git a/stable/guide/prometheus/index.html b/stable/guide/prometheus/index.html new file mode 100644 index 000000000..6c4850021 --- /dev/null +++ b/stable/guide/prometheus/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/prometheus/... + + \ No newline at end of file diff --git a/stable/guide/qos/index.html b/stable/guide/qos/index.html new file mode 100644 index 000000000..d8cd29301 --- /dev/null +++ b/stable/guide/qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/qos/... + + \ No newline at end of file diff --git a/stable/guide/setup-options/index.html b/stable/guide/setup-options/index.html new file mode 100644 index 000000000..c39747e16 --- /dev/null +++ b/stable/guide/setup-options/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/setup-options/... + + \ No newline at end of file diff --git a/stable/guide/static-ip-mac/index.html b/stable/guide/static-ip-mac/index.html new file mode 100644 index 000000000..531555a6c --- /dev/null +++ b/stable/guide/static-ip-mac/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/static-ip-mac/... + + \ No newline at end of file diff --git a/stable/guide/subnet/index.html b/stable/guide/subnet/index.html new file mode 100644 index 000000000..5da6bdd55 --- /dev/null +++ b/stable/guide/subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/subnet/... + + \ No newline at end of file diff --git a/stable/guide/vpc-qos/index.html b/stable/guide/vpc-qos/index.html new file mode 100644 index 000000000..6703eac37 --- /dev/null +++ b/stable/guide/vpc-qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/vpc-qos/... + + \ No newline at end of file diff --git a/stable/guide/vpc/index.html b/stable/guide/vpc/index.html new file mode 100644 index 000000000..45b8f4a8e --- /dev/null +++ b/stable/guide/vpc/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/vpc/... + + \ No newline at end of file diff --git a/stable/guide/webhook/index.html b/stable/guide/webhook/index.html new file mode 100644 index 000000000..2b93e7bea --- /dev/null +++ b/stable/guide/webhook/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/guide/webhook/... + + \ No newline at end of file diff --git a/stable/index.html b/stable/index.html new file mode 100644 index 000000000..7cd52a6fc --- /dev/null +++ b/stable/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../v1.12.x/... + + \ No newline at end of file diff --git a/stable/ops/change-default-subnet/index.html b/stable/ops/change-default-subnet/index.html new file mode 100644 index 000000000..36ec1d134 --- /dev/null +++ b/stable/ops/change-default-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/change-default-subnet/... + + \ No newline at end of file diff --git a/stable/ops/change-join-subnet/index.html b/stable/ops/change-join-subnet/index.html new file mode 100644 index 000000000..57cb0249c --- /dev/null +++ b/stable/ops/change-join-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/change-join-subnet/... + + \ No newline at end of file diff --git a/stable/ops/change-log-level/index.html b/stable/ops/change-log-level/index.html new file mode 100644 index 000000000..fe7000fbb --- /dev/null +++ b/stable/ops/change-log-level/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/change-log-level/... + + \ No newline at end of file diff --git a/stable/ops/change-ovn-central-node/index.html b/stable/ops/change-ovn-central-node/index.html new file mode 100644 index 000000000..05f163487 --- /dev/null +++ b/stable/ops/change-ovn-central-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/change-ovn-central-node/... + + \ No newline at end of file diff --git a/stable/ops/delete-worker-node/index.html b/stable/ops/delete-worker-node/index.html new file mode 100644 index 000000000..190fed4ab --- /dev/null +++ b/stable/ops/delete-worker-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/delete-worker-node/... + + \ No newline at end of file diff --git a/stable/ops/faq/index.html b/stable/ops/faq/index.html new file mode 100644 index 000000000..83c63ca5d --- /dev/null +++ b/stable/ops/faq/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/faq/... + + \ No newline at end of file diff --git a/stable/ops/from-calico/index.html b/stable/ops/from-calico/index.html new file mode 100644 index 000000000..ea876a737 --- /dev/null +++ b/stable/ops/from-calico/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/from-calico/... + + \ No newline at end of file diff --git a/stable/ops/kubectl-ko/index.html b/stable/ops/kubectl-ko/index.html new file mode 100644 index 000000000..23db07d0c --- /dev/null +++ b/stable/ops/kubectl-ko/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/kubectl-ko/... + + \ No newline at end of file diff --git a/stable/ops/recover-db/index.html b/stable/ops/recover-db/index.html new file mode 100644 index 000000000..19c97b4f6 --- /dev/null +++ b/stable/ops/recover-db/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/ops/recover-db/... + + \ No newline at end of file diff --git a/stable/reference/architecture/index.html b/stable/reference/architecture/index.html new file mode 100644 index 000000000..ec6be5942 --- /dev/null +++ b/stable/reference/architecture/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/architecture/... + + \ No newline at end of file diff --git a/stable/reference/dev-env/index.html b/stable/reference/dev-env/index.html new file mode 100644 index 000000000..3b1e4afe9 --- /dev/null +++ b/stable/reference/dev-env/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/dev-env/... + + \ No newline at end of file diff --git a/stable/reference/document-convention/index.html b/stable/reference/document-convention/index.html new file mode 100644 index 000000000..429f26000 --- /dev/null +++ b/stable/reference/document-convention/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/document-convention/... + + \ No newline at end of file diff --git a/stable/reference/feature-stage/index.html b/stable/reference/feature-stage/index.html new file mode 100644 index 000000000..25231dc79 --- /dev/null +++ b/stable/reference/feature-stage/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/feature-stage/... + + \ No newline at end of file diff --git a/stable/reference/iptables-rules/index.html b/stable/reference/iptables-rules/index.html new file mode 100644 index 000000000..1e7007ce9 --- /dev/null +++ b/stable/reference/iptables-rules/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/iptables-rules/... + + \ No newline at end of file diff --git a/stable/reference/kube-ovn-api/index.html b/stable/reference/kube-ovn-api/index.html new file mode 100644 index 000000000..a334ac263 --- /dev/null +++ b/stable/reference/kube-ovn-api/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/kube-ovn-api/... + + \ No newline at end of file diff --git a/stable/reference/kube-ovn-pinger-args/index.html b/stable/reference/kube-ovn-pinger-args/index.html new file mode 100644 index 000000000..7540c326b --- /dev/null +++ b/stable/reference/kube-ovn-pinger-args/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/kube-ovn-pinger-args/... + + \ No newline at end of file diff --git a/stable/reference/metrics/index.html b/stable/reference/metrics/index.html new file mode 100644 index 000000000..f21605633 --- /dev/null +++ b/stable/reference/metrics/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/metrics/... + + \ No newline at end of file diff --git a/stable/reference/ovs-ovn-customized/index.html b/stable/reference/ovs-ovn-customized/index.html new file mode 100644 index 000000000..84f2b4644 --- /dev/null +++ b/stable/reference/ovs-ovn-customized/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/ovs-ovn-customized/... + + \ No newline at end of file diff --git a/stable/reference/tunnel-protocol/index.html b/stable/reference/tunnel-protocol/index.html new file mode 100644 index 000000000..601e4ac01 --- /dev/null +++ b/stable/reference/tunnel-protocol/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/tunnel-protocol/... + + \ No newline at end of file diff --git a/stable/reference/underlay-topology/index.html b/stable/reference/underlay-topology/index.html new file mode 100644 index 000000000..0faf02b1b --- /dev/null +++ b/stable/reference/underlay-topology/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/reference/underlay-topology/... + + \ No newline at end of file diff --git a/stable/start/one-step-install/index.html b/stable/start/one-step-install/index.html new file mode 100644 index 000000000..55a254df7 --- /dev/null +++ b/stable/start/one-step-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/start/one-step-install/... + + \ No newline at end of file diff --git a/stable/start/prepare/index.html b/stable/start/prepare/index.html new file mode 100644 index 000000000..d7d01d523 --- /dev/null +++ b/stable/start/prepare/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/start/prepare/... + + \ No newline at end of file diff --git a/stable/start/sealos-install/index.html b/stable/start/sealos-install/index.html new file mode 100644 index 000000000..cf5a9e222 --- /dev/null +++ b/stable/start/sealos-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/start/sealos-install/... + + \ No newline at end of file diff --git a/stable/start/underlay/index.html b/stable/start/underlay/index.html new file mode 100644 index 000000000..cb4576f8b --- /dev/null +++ b/stable/start/underlay/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/start/underlay/... + + \ No newline at end of file diff --git a/stable/start/uninstall/index.html b/stable/start/uninstall/index.html new file mode 100644 index 000000000..003d8c216 --- /dev/null +++ b/stable/start/uninstall/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/start/uninstall/... + + \ No newline at end of file diff --git a/stable/zh/advance/accelerate-intra-node-tcp-with-ebpf/index.html b/stable/zh/advance/accelerate-intra-node-tcp-with-ebpf/index.html new file mode 100644 index 000000000..14f5adb12 --- /dev/null +++ b/stable/zh/advance/accelerate-intra-node-tcp-with-ebpf/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/accelerate-intra-node-tcp-with-ebpf/... + + \ No newline at end of file diff --git a/stable/zh/advance/cilium-hubble-observe/index.html b/stable/zh/advance/cilium-hubble-observe/index.html new file mode 100644 index 000000000..a23993f82 --- /dev/null +++ b/stable/zh/advance/cilium-hubble-observe/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/cilium-hubble-observe/... + + \ No newline at end of file diff --git a/stable/zh/advance/cilium-networkpolicy/index.html b/stable/zh/advance/cilium-networkpolicy/index.html new file mode 100644 index 000000000..b8915a2a1 --- /dev/null +++ b/stable/zh/advance/cilium-networkpolicy/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/cilium-networkpolicy/... + + \ No newline at end of file diff --git a/stable/zh/advance/dhcp/index.html b/stable/zh/advance/dhcp/index.html new file mode 100644 index 000000000..3141bf521 --- /dev/null +++ b/stable/zh/advance/dhcp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/dhcp/... + + \ No newline at end of file diff --git a/stable/zh/advance/dpdk/index.html b/stable/zh/advance/dpdk/index.html new file mode 100644 index 000000000..5acc21d44 --- /dev/null +++ b/stable/zh/advance/dpdk/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/dpdk/... + + \ No newline at end of file diff --git a/stable/zh/advance/external-gateway/index.html b/stable/zh/advance/external-gateway/index.html new file mode 100644 index 000000000..f83b55a6b --- /dev/null +++ b/stable/zh/advance/external-gateway/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/external-gateway/... + + \ No newline at end of file diff --git a/stable/zh/advance/fastpath/index.html b/stable/zh/advance/fastpath/index.html new file mode 100644 index 000000000..1de49304b --- /dev/null +++ b/stable/zh/advance/fastpath/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/fastpath/... + + \ No newline at end of file diff --git a/stable/zh/advance/multi-nic/index.html b/stable/zh/advance/multi-nic/index.html new file mode 100644 index 000000000..5266913c3 --- /dev/null +++ b/stable/zh/advance/multi-nic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/multi-nic/... + + \ No newline at end of file diff --git a/stable/zh/advance/nat-policy-rule/index.html b/stable/zh/advance/nat-policy-rule/index.html new file mode 100644 index 000000000..d67da37c6 --- /dev/null +++ b/stable/zh/advance/nat-policy-rule/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/nat-policy-rule/... + + \ No newline at end of file diff --git a/stable/zh/advance/node-local-dns/index.html b/stable/zh/advance/node-local-dns/index.html new file mode 100644 index 000000000..3051124bd --- /dev/null +++ b/stable/zh/advance/node-local-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/node-local-dns/... + + \ No newline at end of file diff --git a/stable/zh/advance/offload-corigine/index.html b/stable/zh/advance/offload-corigine/index.html new file mode 100644 index 000000000..6fce35f21 --- /dev/null +++ b/stable/zh/advance/offload-corigine/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/offload-corigine/... + + \ No newline at end of file diff --git a/stable/zh/advance/offload-mellanox/index.html b/stable/zh/advance/offload-mellanox/index.html new file mode 100644 index 000000000..8b6a040d6 --- /dev/null +++ b/stable/zh/advance/offload-mellanox/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/offload-mellanox/... + + \ No newline at end of file diff --git a/stable/zh/advance/overlay-with-route/index.html b/stable/zh/advance/overlay-with-route/index.html new file mode 100644 index 000000000..02167523c --- /dev/null +++ b/stable/zh/advance/overlay-with-route/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/overlay-with-route/... + + \ No newline at end of file diff --git a/stable/zh/advance/ovn-eip-fip-snat/index.html b/stable/zh/advance/ovn-eip-fip-snat/index.html new file mode 100644 index 000000000..219a63ad2 --- /dev/null +++ b/stable/zh/advance/ovn-eip-fip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/ovn-eip-fip-snat/... + + \ No newline at end of file diff --git a/stable/zh/advance/ovn-ipsec/index.html b/stable/zh/advance/ovn-ipsec/index.html new file mode 100644 index 000000000..d31f32fb0 --- /dev/null +++ b/stable/zh/advance/ovn-ipsec/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/ovn-ipsec/... + + \ No newline at end of file diff --git a/stable/zh/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html b/stable/zh/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html new file mode 100644 index 000000000..3ea3e6711 --- /dev/null +++ b/stable/zh/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/ovn-l3-ha-based-ecmp-with-bfd/... + + \ No newline at end of file diff --git a/stable/zh/advance/ovn-remote-port-mirroring/index.html b/stable/zh/advance/ovn-remote-port-mirroring/index.html new file mode 100644 index 000000000..97793b57c --- /dev/null +++ b/stable/zh/advance/ovn-remote-port-mirroring/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/ovn-remote-port-mirroring/... + + \ No newline at end of file diff --git a/stable/zh/advance/performance-tuning/index.html b/stable/zh/advance/performance-tuning/index.html new file mode 100644 index 000000000..164845f97 --- /dev/null +++ b/stable/zh/advance/performance-tuning/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/performance-tuning/... + + \ No newline at end of file diff --git a/stable/zh/advance/security-group/index.html b/stable/zh/advance/security-group/index.html new file mode 100644 index 000000000..b68353a18 --- /dev/null +++ b/stable/zh/advance/security-group/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/security-group/... + + \ No newline at end of file diff --git a/stable/zh/advance/vip/index.html b/stable/zh/advance/vip/index.html new file mode 100644 index 000000000..36bfc6094 --- /dev/null +++ b/stable/zh/advance/vip/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/vip/... + + \ No newline at end of file diff --git a/stable/zh/advance/vpc-dns/index.html b/stable/zh/advance/vpc-dns/index.html new file mode 100644 index 000000000..08190b013 --- /dev/null +++ b/stable/zh/advance/vpc-dns/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/vpc-dns/... + + \ No newline at end of file diff --git a/stable/zh/advance/vpc-internal-lb/index.html b/stable/zh/advance/vpc-internal-lb/index.html new file mode 100644 index 000000000..6dd7c63d3 --- /dev/null +++ b/stable/zh/advance/vpc-internal-lb/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/vpc-internal-lb/... + + \ No newline at end of file diff --git a/stable/zh/advance/vpc-peering/index.html b/stable/zh/advance/vpc-peering/index.html new file mode 100644 index 000000000..68ac77d69 --- /dev/null +++ b/stable/zh/advance/vpc-peering/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/vpc-peering/... + + \ No newline at end of file diff --git a/stable/zh/advance/windows/index.html b/stable/zh/advance/windows/index.html new file mode 100644 index 000000000..fa6caebae --- /dev/null +++ b/stable/zh/advance/windows/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/windows/... + + \ No newline at end of file diff --git a/stable/zh/advance/with-bgp/index.html b/stable/zh/advance/with-bgp/index.html new file mode 100644 index 000000000..92442d689 --- /dev/null +++ b/stable/zh/advance/with-bgp/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/with-bgp/... + + \ No newline at end of file diff --git a/stable/zh/advance/with-cilium/index.html b/stable/zh/advance/with-cilium/index.html new file mode 100644 index 000000000..2951ab7ef --- /dev/null +++ b/stable/zh/advance/with-cilium/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/with-cilium/... + + \ No newline at end of file diff --git a/stable/zh/advance/with-openstack/index.html b/stable/zh/advance/with-openstack/index.html new file mode 100644 index 000000000..29a62942a --- /dev/null +++ b/stable/zh/advance/with-openstack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/with-openstack/... + + \ No newline at end of file diff --git a/stable/zh/advance/with-ovn-ic/index.html b/stable/zh/advance/with-ovn-ic/index.html new file mode 100644 index 000000000..4f666854d --- /dev/null +++ b/stable/zh/advance/with-ovn-ic/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/with-ovn-ic/... + + \ No newline at end of file diff --git a/stable/zh/advance/with-submariner/index.html b/stable/zh/advance/with-submariner/index.html new file mode 100644 index 000000000..0604326c5 --- /dev/null +++ b/stable/zh/advance/with-submariner/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/advance/with-submariner/... + + \ No newline at end of file diff --git a/stable/zh/contact/index.html b/stable/zh/contact/index.html new file mode 100644 index 000000000..df555ec4d --- /dev/null +++ b/stable/zh/contact/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../v1.12.x/zh/contact/... + + \ No newline at end of file diff --git a/stable/zh/guide/custom-routes/index.html b/stable/zh/guide/custom-routes/index.html new file mode 100644 index 000000000..088f388c5 --- /dev/null +++ b/stable/zh/guide/custom-routes/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/custom-routes/... + + \ No newline at end of file diff --git a/stable/zh/guide/dual-stack/index.html b/stable/zh/guide/dual-stack/index.html new file mode 100644 index 000000000..31d8bbf85 --- /dev/null +++ b/stable/zh/guide/dual-stack/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/dual-stack/... + + \ No newline at end of file diff --git a/stable/zh/guide/eip-snat/index.html b/stable/zh/guide/eip-snat/index.html new file mode 100644 index 000000000..03c728c07 --- /dev/null +++ b/stable/zh/guide/eip-snat/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/eip-snat/... + + \ No newline at end of file diff --git a/stable/zh/guide/ippool/index.html b/stable/zh/guide/ippool/index.html new file mode 100644 index 000000000..3cafb7b54 --- /dev/null +++ b/stable/zh/guide/ippool/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/ippool/... + + \ No newline at end of file diff --git a/stable/zh/guide/loadbalancer-service/index.html b/stable/zh/guide/loadbalancer-service/index.html new file mode 100644 index 000000000..c6e558917 --- /dev/null +++ b/stable/zh/guide/loadbalancer-service/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/loadbalancer-service/... + + \ No newline at end of file diff --git a/stable/zh/guide/mirror/index.html b/stable/zh/guide/mirror/index.html new file mode 100644 index 000000000..f80e0b149 --- /dev/null +++ b/stable/zh/guide/mirror/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/mirror/... + + \ No newline at end of file diff --git a/stable/zh/guide/networkpolicy-log/index.html b/stable/zh/guide/networkpolicy-log/index.html new file mode 100644 index 000000000..96b14ce65 --- /dev/null +++ b/stable/zh/guide/networkpolicy-log/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/networkpolicy-log/... + + \ No newline at end of file diff --git a/stable/zh/guide/prometheus-grafana/index.html b/stable/zh/guide/prometheus-grafana/index.html new file mode 100644 index 000000000..1eeacddd7 --- /dev/null +++ b/stable/zh/guide/prometheus-grafana/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/prometheus-grafana/... + + \ No newline at end of file diff --git a/stable/zh/guide/prometheus/index.html b/stable/zh/guide/prometheus/index.html new file mode 100644 index 000000000..905d09e37 --- /dev/null +++ b/stable/zh/guide/prometheus/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/prometheus/... + + \ No newline at end of file diff --git a/stable/zh/guide/qos/index.html b/stable/zh/guide/qos/index.html new file mode 100644 index 000000000..f2eab1d4e --- /dev/null +++ b/stable/zh/guide/qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/qos/... + + \ No newline at end of file diff --git a/stable/zh/guide/setup-options/index.html b/stable/zh/guide/setup-options/index.html new file mode 100644 index 000000000..d495edc45 --- /dev/null +++ b/stable/zh/guide/setup-options/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/setup-options/... + + \ No newline at end of file diff --git a/stable/zh/guide/static-ip-mac/index.html b/stable/zh/guide/static-ip-mac/index.html new file mode 100644 index 000000000..4cbe0604f --- /dev/null +++ b/stable/zh/guide/static-ip-mac/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/static-ip-mac/... + + \ No newline at end of file diff --git a/stable/zh/guide/subnet/index.html b/stable/zh/guide/subnet/index.html new file mode 100644 index 000000000..e1427d2c6 --- /dev/null +++ b/stable/zh/guide/subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/subnet/... + + \ No newline at end of file diff --git a/stable/zh/guide/vpc-qos/index.html b/stable/zh/guide/vpc-qos/index.html new file mode 100644 index 000000000..5889e9525 --- /dev/null +++ b/stable/zh/guide/vpc-qos/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/vpc-qos/... + + \ No newline at end of file diff --git a/stable/zh/guide/vpc/index.html b/stable/zh/guide/vpc/index.html new file mode 100644 index 000000000..761c8ae8e --- /dev/null +++ b/stable/zh/guide/vpc/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/vpc/... + + \ No newline at end of file diff --git a/stable/zh/guide/webhook/index.html b/stable/zh/guide/webhook/index.html new file mode 100644 index 000000000..69ea92a42 --- /dev/null +++ b/stable/zh/guide/webhook/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/guide/webhook/... + + \ No newline at end of file diff --git a/stable/zh/index.html b/stable/zh/index.html new file mode 100644 index 000000000..ff2f66646 --- /dev/null +++ b/stable/zh/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../v1.12.x/zh/... + + \ No newline at end of file diff --git a/stable/zh/ops/change-default-subnet/index.html b/stable/zh/ops/change-default-subnet/index.html new file mode 100644 index 000000000..b2fe616c8 --- /dev/null +++ b/stable/zh/ops/change-default-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/change-default-subnet/... + + \ No newline at end of file diff --git a/stable/zh/ops/change-join-subnet/index.html b/stable/zh/ops/change-join-subnet/index.html new file mode 100644 index 000000000..a26a063de --- /dev/null +++ b/stable/zh/ops/change-join-subnet/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/change-join-subnet/... + + \ No newline at end of file diff --git a/stable/zh/ops/change-log-level/index.html b/stable/zh/ops/change-log-level/index.html new file mode 100644 index 000000000..fe2b503df --- /dev/null +++ b/stable/zh/ops/change-log-level/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/change-log-level/... + + \ No newline at end of file diff --git a/stable/zh/ops/change-ovn-central-node/index.html b/stable/zh/ops/change-ovn-central-node/index.html new file mode 100644 index 000000000..bc41fc3f2 --- /dev/null +++ b/stable/zh/ops/change-ovn-central-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/change-ovn-central-node/... + + \ No newline at end of file diff --git a/stable/zh/ops/delete-worker-node/index.html b/stable/zh/ops/delete-worker-node/index.html new file mode 100644 index 000000000..129447e3e --- /dev/null +++ b/stable/zh/ops/delete-worker-node/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/delete-worker-node/... + + \ No newline at end of file diff --git a/stable/zh/ops/faq/index.html b/stable/zh/ops/faq/index.html new file mode 100644 index 000000000..fe10d5152 --- /dev/null +++ b/stable/zh/ops/faq/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/faq/... + + \ No newline at end of file diff --git a/stable/zh/ops/from-calico/index.html b/stable/zh/ops/from-calico/index.html new file mode 100644 index 000000000..feb6ae642 --- /dev/null +++ b/stable/zh/ops/from-calico/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/from-calico/... + + \ No newline at end of file diff --git a/stable/zh/ops/kubectl-ko/index.html b/stable/zh/ops/kubectl-ko/index.html new file mode 100644 index 000000000..1f4a8082d --- /dev/null +++ b/stable/zh/ops/kubectl-ko/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/kubectl-ko/... + + \ No newline at end of file diff --git a/stable/zh/ops/recover-db/index.html b/stable/zh/ops/recover-db/index.html new file mode 100644 index 000000000..64c636f70 --- /dev/null +++ b/stable/zh/ops/recover-db/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/ops/recover-db/... + + \ No newline at end of file diff --git a/stable/zh/reference/architecture/index.html b/stable/zh/reference/architecture/index.html new file mode 100644 index 000000000..0b3d5d801 --- /dev/null +++ b/stable/zh/reference/architecture/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/architecture/... + + \ No newline at end of file diff --git a/stable/zh/reference/dev-env/index.html b/stable/zh/reference/dev-env/index.html new file mode 100644 index 000000000..259ca66d3 --- /dev/null +++ b/stable/zh/reference/dev-env/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/dev-env/... + + \ No newline at end of file diff --git a/stable/zh/reference/document-convention/index.html b/stable/zh/reference/document-convention/index.html new file mode 100644 index 000000000..70a6d571b --- /dev/null +++ b/stable/zh/reference/document-convention/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/document-convention/... + + \ No newline at end of file diff --git a/stable/zh/reference/feature-stage/index.html b/stable/zh/reference/feature-stage/index.html new file mode 100644 index 000000000..9a1c88802 --- /dev/null +++ b/stable/zh/reference/feature-stage/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/feature-stage/... + + \ No newline at end of file diff --git a/stable/zh/reference/iptables-rules/index.html b/stable/zh/reference/iptables-rules/index.html new file mode 100644 index 000000000..37d102b06 --- /dev/null +++ b/stable/zh/reference/iptables-rules/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/iptables-rules/... + + \ No newline at end of file diff --git a/stable/zh/reference/kube-ovn-api/index.html b/stable/zh/reference/kube-ovn-api/index.html new file mode 100644 index 000000000..2f5dc6727 --- /dev/null +++ b/stable/zh/reference/kube-ovn-api/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/kube-ovn-api/... + + \ No newline at end of file diff --git a/stable/zh/reference/kube-ovn-pinger-args/index.html b/stable/zh/reference/kube-ovn-pinger-args/index.html new file mode 100644 index 000000000..6a6ed7a81 --- /dev/null +++ b/stable/zh/reference/kube-ovn-pinger-args/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/kube-ovn-pinger-args/... + + \ No newline at end of file diff --git a/stable/zh/reference/metrics/index.html b/stable/zh/reference/metrics/index.html new file mode 100644 index 000000000..bc0da3a1d --- /dev/null +++ b/stable/zh/reference/metrics/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/metrics/... + + \ No newline at end of file diff --git a/stable/zh/reference/ovs-ovn-customized/index.html b/stable/zh/reference/ovs-ovn-customized/index.html new file mode 100644 index 000000000..2ae42c606 --- /dev/null +++ b/stable/zh/reference/ovs-ovn-customized/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/ovs-ovn-customized/... + + \ No newline at end of file diff --git a/stable/zh/reference/tunnel-protocol/index.html b/stable/zh/reference/tunnel-protocol/index.html new file mode 100644 index 000000000..017e90896 --- /dev/null +++ b/stable/zh/reference/tunnel-protocol/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/tunnel-protocol/... + + \ No newline at end of file diff --git a/stable/zh/reference/underlay-topology/index.html b/stable/zh/reference/underlay-topology/index.html new file mode 100644 index 000000000..48b4912c2 --- /dev/null +++ b/stable/zh/reference/underlay-topology/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/reference/underlay-topology/... + + \ No newline at end of file diff --git a/stable/zh/start/one-step-install/index.html b/stable/zh/start/one-step-install/index.html new file mode 100644 index 000000000..cee63fd8f --- /dev/null +++ b/stable/zh/start/one-step-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/start/one-step-install/... + + \ No newline at end of file diff --git a/stable/zh/start/prepare/index.html b/stable/zh/start/prepare/index.html new file mode 100644 index 000000000..5b91f99c6 --- /dev/null +++ b/stable/zh/start/prepare/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/start/prepare/... + + \ No newline at end of file diff --git a/stable/zh/start/sealos-install/index.html b/stable/zh/start/sealos-install/index.html new file mode 100644 index 000000000..c7a57c196 --- /dev/null +++ b/stable/zh/start/sealos-install/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/start/sealos-install/... + + \ No newline at end of file diff --git a/stable/zh/start/underlay/index.html b/stable/zh/start/underlay/index.html new file mode 100644 index 000000000..72f05fba6 --- /dev/null +++ b/stable/zh/start/underlay/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/start/underlay/... + + \ No newline at end of file diff --git a/stable/zh/start/uninstall/index.html b/stable/zh/start/uninstall/index.html new file mode 100644 index 000000000..6d96076b9 --- /dev/null +++ b/stable/zh/start/uninstall/index.html @@ -0,0 +1,16 @@ + + + + + Redirecting + + + + + Redirecting to ../../../../v1.12.x/zh/start/uninstall/... + + \ No newline at end of file diff --git a/v1.12.x/404.html b/v1.12.x/404.html index 91f5891a6..abedd6848 100644 --- a/v1.12.x/404.html +++ b/v1.12.x/404.html @@ -1 +1 @@ - Kube-OVN 文档

404 - Not found

回到页面顶部
\ No newline at end of file + Kube-OVN 文档

404 - Not found

回到页面顶部
\ No newline at end of file diff --git a/v1.12.x/advance/accelerate-intra-node-tcp-with-ebpf/index.html b/v1.12.x/advance/accelerate-intra-node-tcp-with-ebpf/index.html index 32a20c964..bc0bdfbf5 100644 --- a/v1.12.x/advance/accelerate-intra-node-tcp-with-ebpf/index.html +++ b/v1.12.x/advance/accelerate-intra-node-tcp-with-ebpf/index.html @@ -1,4 +1,4 @@ - 使用 eBPF 加速节点内 TCP 通信 - Kube-OVN 文档
跳转至

Accelerate TCP Communication in Node with eBPF

At some edge and 5G scenarios, there will be a lot of TCP communication between Pods on the same node. By using the open source istio-tcpip-bypass project from Intel, Pods can use the ability of eBPF to bypass the host's TCP/IP protocol stack and communicate directly through sockets, thereby greatly reducing latency and improving throughput.

Basic Principle

At present, two Pods on the same host need to go through a lot of network stacks, including TCP/IP, netfilter, OVS, etc., as shown in the following figure:

without eBPF

istio-tcpip-bypass plugin can automatically analyze and identify TCP communication within the same host, and bypass the complex kernel stack so that socket data transmission can be performed directly to reduce network stack processing overhead, as shown in the following figure:

with eBPF

Due to the fact that this component can automatically identify TCP communication within the same host and optimize it. In the Service Mesh environment based on the proxy mode, this component can also enhance the performance of Service Mesh.

For more technical implementation details, please refer to Tanzu Service Mesh Acceleration using eBPF.

Prerequisites

eBPF requires a kernel version of at least 5.4.0-74-generic. It is recommended to use Ubuntu 20.04 and Linux 5.4.0-74-generic kernel version for testing.

Experimental Steps

Deploy two performance test Pods on the same node. If there are multiple machines in the cluster, you need to specify nodeSelector:

# kubectl create deployment perf --image=kubeovn/perf:dev --replicas=2
+    

Accelerate TCP Communication in Node with eBPF

At some edge and 5G scenarios, there will be a lot of TCP communication between Pods on the same node. By using the open source istio-tcpip-bypass project from Intel, Pods can use the ability of eBPF to bypass the host's TCP/IP protocol stack and communicate directly through sockets, thereby greatly reducing latency and improving throughput.

Basic Principle

At present, two Pods on the same host need to go through a lot of network stacks, including TCP/IP, netfilter, OVS, etc., as shown in the following figure:

without eBPF

istio-tcpip-bypass plugin can automatically analyze and identify TCP communication within the same host, and bypass the complex kernel stack so that socket data transmission can be performed directly to reduce network stack processing overhead, as shown in the following figure:

with eBPF

Due to the fact that this component can automatically identify TCP communication within the same host and optimize it. In the Service Mesh environment based on the proxy mode, this component can also enhance the performance of Service Mesh.

For more technical implementation details, please refer to Tanzu Service Mesh Acceleration using eBPF.

Prerequisites

eBPF requires a kernel version of at least 5.4.0-74-generic. It is recommended to use Ubuntu 20.04 and Linux 5.4.0-74-generic kernel version for testing.

Experimental Steps

Deploy two performance test Pods on the same node. If there are multiple machines in the cluster, you need to specify nodeSelector:

# kubectl create deployment perf --image=kubeovn/perf:dev --replicas=2
 deployment.apps/perf created
 # kubectl get pod -o wide
 NAME                    READY   STATUS    RESTARTS   AGE   IP           NODE     NOMINATED NODE   READINESS GATES
@@ -20,7 +20,7 @@
 

Deploy the istio-tcpip-bypass plugin:

kubectl apply -f https://raw.githubusercontent.com/intel/istio-tcpip-bypass/main/bypass-tcpip-daemonset.yaml
 

Enter the perf client container again for performance testing:

# kubectl exec -it perf-7697bc6ddf-p2xpt sh
 / # qperf -t 60 100.64.0.3 -ub -oo msg_size:1:16K:*4 -vu tcp_lat tcp_bw
-

Test Results

According to the test results, the TCP latency will decrease by 40% ~ 60% under different packet sizes, and the throughput will increase by 40% ~ 80% when the packet size is greater than 1024 bytes.

Packet Size (byte) eBPF tcp_lat (us) Default tcp_lat (us) eBPF tcp_bw (Mb/s) Default tcp_bw(Mb/s)
1 20.2 44.5 1.36 4.27
4 20.2 48.7 5.48 16.7
16 19.6 41.6 21.7 63.5
64 18.8 41.3 96.8 201
256 19.2 36 395 539
1024 18.3 42.4 1360 846
4096 16.5 62.6 4460 2430
16384 20.2 58.8 9600 6900

In the hardware environment under test, when the packet size is less than 512 bytes, the throughput indicator optimized by eBPF is lower than the throughput under the default configuration. This situation may be related to the TCP aggregation optimization of the network card under the default configuration. If the application scenario is sensitive to small packet throughput, you need to test in the corresponding environment Determine whether to enable eBPF optimization. We will also optimize the throughput of eBPF TCP small packet scenarios in the future.

References

  1. istio-tcpip-bypass
  2. Deep Dive TCP/IP Bypass with eBPF in Service Mesh
  3. Tanzu Service Mesh Acceleration using eBPF

微信群 Slack Twitter Support


最后更新: June 20, 2023
创建日期: June 20, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/cilium-hubble-observe/index.html b/v1.12.x/en/advance/cilium-hubble-observe/index.html index 0b37c9577..80c350842 100644 --- a/v1.12.x/en/advance/cilium-hubble-observe/index.html +++ b/v1.12.x/en/advance/cilium-hubble-observe/index.html @@ -1,4 +1,4 @@ - Cilium Network Traffic Observation - Kube-OVN Document

Cilium Network Traffic Observation

Kube-OVN supports Cilium integration, please refer to Cilium integration for details.

Cilium provides rich network traffic observation capabilities, and the flow observability is provided by Hubble. Hubble can observe the traffic across nodes, clusters, and even multi-cluster scenarios.

Install Hubble

In the default Cilium integration installation, the Hubble related components are not installed, so to support traffic observation, you need to supplement the installation of Hubble on the environment.

Execute the following command to install Hubble using helm:

helm upgrade cilium cilium/cilium --version 1.11.6 \
+    

Cilium Network Traffic Observation

Kube-OVN supports Cilium integration, please refer to Cilium integration for details.

Cilium provides rich network traffic observation capabilities, and the flow observability is provided by Hubble. Hubble can observe the traffic across nodes, clusters, and even multi-cluster scenarios.

Install Hubble

In the default Cilium integration installation, the Hubble related components are not installed, so to support traffic observation, you need to supplement the installation of Hubble on the environment.

Execute the following command to install Hubble using helm:

helm upgrade cilium cilium/cilium --version 1.11.6 \
    --namespace kube-system \
    --reuse-values \
    --set hubble.relay.enabled=true \
@@ -124,7 +124,7 @@
 hubble_tcp_flags_total{family="IPv4",flag="RST"} 301
 hubble_tcp_flags_total{family="IPv4",flag="SYN"} 1169
 hubble_tcp_flags_total{family="IPv4",flag="SYN-ACK"} 1169
-

微信群 Slack Twitter Support


最后更新: June 20, 2023
创建日期: June 20, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/cilium-networkpolicy/index.html b/v1.12.x/en/advance/cilium-networkpolicy/index.html index 4be341c24..1de7c4926 100644 --- a/v1.12.x/en/advance/cilium-networkpolicy/index.html +++ b/v1.12.x/en/advance/cilium-networkpolicy/index.html @@ -1,4 +1,4 @@ - Cilium NetworkPolicy Support - Kube-OVN Document

Cilium NetworkPolicy Support

Kube-OVN currently supports integration with Cilium, and the specific operation can refer to Cilium integration.

After integrating Cilium, you can use Cilium's excellent network policy capabilities to control the access of Pods in the cluster.The following documents provide integration verification of Cilium L3 and L4 network policy capabilities.

Verification Steps

Create test Pod

Create namespace test. Refer to the following yaml, create Pod with label app=test in namespace test as the destination Pod for testing access.

apiVersion: apps/v1
+    

Cilium NetworkPolicy Support

Kube-OVN currently supports integration with Cilium, and the specific operation can refer to Cilium integration.

After integrating Cilium, you can use Cilium's excellent network policy capabilities to control the access of Pods in the cluster.The following documents provide integration verification of Cilium L3 and L4 network policy capabilities.

Verification Steps

Create test Pod

Create namespace test. Refer to the following yaml, create Pod with label app=test in namespace test as the destination Pod for testing access.

apiVersion: apps/v1
 kind: Deployment
 metadata:
   labels:
@@ -197,7 +197,7 @@
 * Connection timeout after 10001 ms
 * Closing connection 0
 curl: (28) Connection timeout after 10001 ms
-

After the network policy takes effect, cross-namespace access is still prohibited, which is consistent with the L3 network policy test results.

After the L4 network policy takes effect, ping cannot be used, but TCP access that meets the policy rules can be executed normally.

About the restriction of ICMP, please refer to the official description L4 Limitation Description.

L7 Network Policy Test

chaining mode, L7 network policy currently has problems. In the Cilium official document, there is an explanation for this situation, please refer to Generic Veth Chaining.

This problem is tracked using issue 12454, and it has not been resolved yet.

微信群 Slack Twitter Support


最后更新: June 20, 2023
创建日期: June 20, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/dhcp/index.html b/v1.12.x/en/advance/dhcp/index.html index 41d7d14d8..d05d0ea1e 100644 --- a/v1.12.x/en/advance/dhcp/index.html +++ b/v1.12.x/en/advance/dhcp/index.html @@ -1,4 +1,4 @@ - DHCP - Kube-OVN Document

DHCP

When using SR-IOV or DPDK type networks, KubeVirt's built-in DHCP does not work in this network mode. Kube-OVN can use the DHCP capabilities of OVN to set DHCP options at the subnet level to help KubeVirt VMs of these network types to properly use DHCP to obtain assigned IP addresses. Kube-OVN supports both DHCPv4 and DHCPv6.

The subnet DHCP is configured as follows:

apiVersion: kubeovn.io/v1
+    

DHCP

When using SR-IOV or DPDK type networks, KubeVirt's built-in DHCP does not work in this network mode. Kube-OVN can use the DHCP capabilities of OVN to set DHCP options at the subnet level to help KubeVirt VMs of these network types to properly use DHCP to obtain assigned IP addresses. Kube-OVN supports both DHCPv4 and DHCPv6.

The subnet DHCP is configured as follows:

apiVersion: kubeovn.io/v1
 kind: Subnet
 metadata:
   name: sn-dual
@@ -31,7 +31,7 @@
   dhcpV6Options: "server_id=00:00:00:2E:2F:C5"
   enableIPv6RA: true
   ipv6RAConfigs: "address_mode=dhcpv6_stateful,max_interval=30,min_interval=5,send_periodic=true"
-
  • enableDHCP: Whether to enable the DHCP function for the subnet.
  • dhcpV4Options,dhcpV6Options: This field directly exposes DHCP-related options within ovn-nb, please reade DHCP Options for more detail. The default value is "lease_time=3600, router=$ipv4_gateway, server_id=169.254.0.254, server_mac=$random_mac" and server_id=$random_mac
  • enableIPv6RA: Whether to enable the route broadcast function of DHCPv6.
  • ipv6RAConfigs:This field directly exposes DHCP-related options within ovn-nb Logical_Router_Port, please read Logical Router Port for more detail. The default value is address_mode=dhcpv6_stateful, max_interval=30, min_interval=5, send_periodic=true

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/dpdk/index.html b/v1.12.x/en/advance/dpdk/index.html index 63e5e9531..fe2e4469d 100644 --- a/v1.12.x/en/advance/dpdk/index.html +++ b/v1.12.x/en/advance/dpdk/index.html @@ -1,4 +1,4 @@ - DPDK Support - Kube-OVN Document

DPDK Support

This document describes how Kube-OVN combines with OVS-DPDK to provide a DPDK-type network interface to KubeVirt's virtual machines.

Upstream KubeVirt does not currently support OVS-DPDK, users need to use the downstream patch Vhostuser implementation to build KubeVirt by themselves or KVM Device Plugin to use OVS-DPDK.

Prerequisites

  • The node needs to provide a dedicated NIC for the DPDK driver to run.
  • The node needs to have Hugepages enabled.

Set DPDK driver

Here we use driverctl for example, please refer to the DPDK documentation for specific parameters and other driver usage:

driverctl set-override 0000:00:0b.0 uio_pci_generic
+    

DPDK Support

This document describes how Kube-OVN combines with OVS-DPDK to provide a DPDK-type network interface to KubeVirt's virtual machines.

Upstream KubeVirt does not currently support OVS-DPDK, users need to use the downstream patch Vhostuser implementation to build KubeVirt by themselves or KVM Device Plugin to use OVS-DPDK.

Prerequisites

  • The node needs to provide a dedicated NIC for the DPDK driver to run.
  • The node needs to have Hugepages enabled.

Set DPDK driver

Here we use driverctl for example, please refer to the DPDK documentation for specific parameters and other driver usage:

driverctl set-override 0000:00:0b.0 uio_pci_generic
 

Configure Nodes

Labeling OVS-DPDK-enabled nodes for Kube-OVN to recognize:

kubectl label nodes <node> ovn.kubernetes.io/ovs_dp_type="userspace"
 

Create the configuration file ovs-dpdk-config in the /opt/ovs-config directory on nodes that support DPDK.

ENCAP_IP=192.168.122.193/24
 DPDK_DEV=0000:00:0b.0
@@ -204,7 +204,7 @@
 ip addr add 10.16.0.96/16 dev eth0
 ip ro add default via 10.16.0.1
 ping 114.114.114.114
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/external-gateway/index.html b/v1.12.x/en/advance/external-gateway/index.html index ece52b07e..60f2de42a 100644 --- a/v1.12.x/en/advance/external-gateway/index.html +++ b/v1.12.x/en/advance/external-gateway/index.html @@ -1,4 +1,4 @@ - External Gateway - Kube-OVN Document

External Gateway

In some scenarios, all container traffic access to the outside needs to be managed and audited through an external gateway. Kube-OVN can forward outbound traffic to the corresponding external gateway by configuring the appropriate routes in the subnet.

Usage

kind: Subnet
+    

External Gateway

In some scenarios, all container traffic access to the outside needs to be managed and audited through an external gateway. Kube-OVN can forward outbound traffic to the corresponding external gateway by configuring the appropriate routes in the subnet.

Usage

kind: Subnet
 apiVersion: kubeovn.io/v1
 metadata:
   name: external
@@ -17,7 +17,7 @@
   externalEgressGateway: 192.168.0.1
   policyRoutingTableID: 1000
   policyRoutingPriority: 1500
-
  • natOutgoing: needs to be set to false.
  • externalEgressGateway: Set to the address of the external gateway, which needs to be in the same Layer 2 reachable domain as the gateway node.
  • policyRoutingTableID: The TableID of the local policy routing table used needs to be different for each subnet to avoid conflicts.
  • policyRoutingPriority: Route priority, in order to avoid subsequent user customization of other routing operations conflict, here you can specify the route priority. If no special needs, you can fill in any value.

微信群 Slack Twitter Support


最后更新: July 3, 2022
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/fastpath/index.html b/v1.12.x/en/advance/fastpath/index.html index 4aa5c073c..fb7e7851e 100644 --- a/v1.12.x/en/advance/fastpath/index.html +++ b/v1.12.x/en/advance/fastpath/index.html @@ -1,4 +1,4 @@ - Compile FastPath Module - Kube-OVN Document

Compile FastPath Module

After a data plane performance profile, netfilter consumes about 20% of CPU resources for related processing within the container and on the host. The FastPath module can bypass netfilter to reduce CPU consumption and latency, and increase throughput. This document will describe how to compile the FastPath module manually.

git clone --depth=1 https://github.com/kubeovn/kube-ovn.git
+    

Compile FastPath Module

After a data plane performance profile, netfilter consumes about 20% of CPU resources for related processing within the container and on the host. The FastPath module can bypass netfilter to reduce CPU consumption and latency, and increase throughput. This document will describe how to compile the FastPath module manually.

git clone --depth=1 https://github.com/kubeovn/kube-ovn.git
 

Install Dependencies

Here is an example of CentOS dependencies to download:

yum install -y kernel-devel-$(uname -r) gcc elfutils-libelf-devel
 

Compile the Module

For the 3.x kernel:

cd kube-ovn/fastpath
 make all
@@ -20,7 +20,7 @@
 [619631.323800] init_module,kube_ovn_fastpath_pre_routing
 [619631.323801] init_module,kube_ovn_fastpath_local_in
 

To uninstall a module, use the following command.

rmmod kube_ovn_fastpath.ko
-

This module will not be loaded automatically after machine reboot. If you want to load it automatically, please write the corresponding autostart script according to the system configuration.

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/multi-nic/index.html b/v1.12.x/en/advance/multi-nic/index.html index 1a8aef812..11770c530 100644 --- a/v1.12.x/en/advance/multi-nic/index.html +++ b/v1.12.x/en/advance/multi-nic/index.html @@ -1,4 +1,4 @@ - Manage Multiple Interface - Kube-OVN Document

Manage Multiple Interface

Kube-OVN can provide cluster-level IPAM capabilities for other CNI network plugins such as macvlan, vlan, host-device, etc. Other network plugins can then use the subnet and fixed IP capabilities in Kube-OVN.

Kube-OVN also supports address management when multiple NICs are all of Kube-OVN type.

Working Principle

By using Multus CNI, we can add multiple NICs of different networks to a Pod. However, we still lack the ability to manage the IP addresses of different networks within a cluster. In Kube-OVN, we have been able to perform advanced IP management such as subnet management, IP reservation, random assignment, fixed assignment, etc. through CRD of Subnet and IP. Now Kube-OVN extend the subnet to integrate with other different network plugins, so that other network plugins can also use the IPAM functionality of Kube-OVN.

Workflow

work-flow

The above diagram shows how to manage the IP addresses of other network plugins via Kube-OVN. The eth0 NIC of the container is connected to the OVN network and the net1 NIC is connected to other CNI networks. The network definition for the net1 network is taken from the NetworkAttachmentDefinition resource definition in multus-cni.

When a Pod is created, kube-ovn-controller will get the Pod add event, find the corresponding Subnet according to the annotation in the Pod, then manage the address from it, and write the address information assigned to the Pod back to the Pod annotation.

The CNI on the container machine can configure kube-ovn-cni as the ipam plugin. kube-ovn-cni will read the Pod annotation and return the address information to the corresponding CNI plugin using the standard format of the CNI protocol.

Usage

Install Kube-OVN and Multus

Please refer One-Click Installation and Multus how to use to install Kube-OVN and Multus-CNI.

Provide IPAM for other types of CNI

Create NetworkAttachmentDefinition

Here we use macvlan as the second network of the container network and set its ipam to kube-ovn:

apiVersion: "k8s.cni.cncf.io/v1"
+    

Manage Multiple Interface

Kube-OVN can provide cluster-level IPAM capabilities for other CNI network plugins such as macvlan, vlan, host-device, etc. Other network plugins can then use the subnet and fixed IP capabilities in Kube-OVN.

Kube-OVN also supports address management when multiple NICs are all of Kube-OVN type.

Working Principle

By using Multus CNI, we can add multiple NICs of different networks to a Pod. However, we still lack the ability to manage the IP addresses of different networks within a cluster. In Kube-OVN, we have been able to perform advanced IP management such as subnet management, IP reservation, random assignment, fixed assignment, etc. through CRD of Subnet and IP. Now Kube-OVN extend the subnet to integrate with other different network plugins, so that other network plugins can also use the IPAM functionality of Kube-OVN.

Workflow

work-flow

The above diagram shows how to manage the IP addresses of other network plugins via Kube-OVN. The eth0 NIC of the container is connected to the OVN network and the net1 NIC is connected to other CNI networks. The network definition for the net1 network is taken from the NetworkAttachmentDefinition resource definition in multus-cni.

When a Pod is created, kube-ovn-controller will get the Pod add event, find the corresponding Subnet according to the annotation in the Pod, then manage the address from it, and write the address information assigned to the Pod back to the Pod annotation.

The CNI on the container machine can configure kube-ovn-cni as the ipam plugin. kube-ovn-cni will read the Pod annotation and return the address information to the corresponding CNI plugin using the standard format of the CNI protocol.

Usage

Install Kube-OVN and Multus

Please refer One-Click Installation and Multus how to use to install Kube-OVN and Multus-CNI.

Provide IPAM for other types of CNI

Create NetworkAttachmentDefinition

Here we use macvlan as the second network of the container network and set its ipam to kube-ovn:

apiVersion: "k8s.cni.cncf.io/v1"
 kind: NetworkAttachmentDefinition
 metadata:
   name: macvlan
@@ -108,7 +108,7 @@
       containers:
       - name: static-workload
         image: docker.io/library/nginx:alpine
-

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/nat-policy-rule/index.html b/v1.12.x/en/advance/nat-policy-rule/index.html index 7a9a93f5b..fc3377106 100644 --- a/v1.12.x/en/advance/nat-policy-rule/index.html +++ b/v1.12.x/en/advance/nat-policy-rule/index.html @@ -1,4 +1,4 @@ - Default VPC NAT Policy Rule - Kube-OVN Document

Default VPC NAT Policy Rule

Purpose

In the Overlay Subnet under the default VPC, when the natOutgoing switch is turned on, all Pods in the subnet need to do SNAT to access the external network, but in some scenarios we do not want all Pods in the subnet to access the external network by SNAT.

So the NAT Policy Rule is to provide a way for users to decide which CIDRs or IPs in the subnet to access the external network need SNAT.

How to use NAT Policy Rules

Enable the natOutgoing switch in subnet.Spec, and add the field natOutgoingPolicyRules as follows:

spec:
+    

Default VPC NAT Policy Rule

Purpose

In the Overlay Subnet under the default VPC, when the natOutgoing switch is turned on, all Pods in the subnet need to do SNAT to access the external network, but in some scenarios we do not want all Pods in the subnet to access the external network by SNAT.

So the NAT Policy Rule is to provide a way for users to decide which CIDRs or IPs in the subnet to access the external network need SNAT.

How to use NAT Policy Rules

Enable the natOutgoing switch in subnet.Spec, and add the field natOutgoingPolicyRules as follows:

spec:
   natOutgoing: true
   natOutgoingPolicyRules:
     - action: forward
@@ -16,7 +16,7 @@
       match:
         srcIPs: 10.0.11.128/26
         dstIPs: 114.114.114.114,8.8.8.8
-

The above case shows that there are two NAT policy rules:

  1. Packets with source IP 10.0.11.0/30 or 10.0.11.254 will not perform SNAT when accessing the external network.
  2. When a packet with source IP 10.0.11.128/26 and destination IP 114.114.114.114 or 8.8.8.8 accesses the external network, SNAT will be performed.

Field description:

action: The action that will be executed for packets that meets the corresponding conditions of the match. The action is divided into two types: forward and nat. When natOutgoingPolicyRules is not configured, packets are still SNAT by default.

match: Indicates the matching segment of the message, the matching segment includes srcIPs and dstIPs, here indicates the source IP and destination IP of the message from the subnet to the external network. match.srcIPs and match.dstIPs support multiple cidr and ip, separated by commas. If multiple match rules overlap, the action that is matched first will be executed according to the order of the natOutgoingPolicyRules array.

微信群 Slack Twitter Support


最后更新: September 1, 2023
创建日期: June 5, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/node-local-dns/index.html b/v1.12.x/en/advance/node-local-dns/index.html index b693b52fa..b003ce6ce 100644 --- a/v1.12.x/en/advance/node-local-dns/index.html +++ b/v1.12.x/en/advance/node-local-dns/index.html @@ -1,4 +1,4 @@ - Node Local DNS Cache and Kube-OVN Adaptation - Kube-OVN Document

NodeLocal DNSCache and Kube-OVN adaptation

NodeLocal DNSCache improves cluster DNS performance by running DNS cache as a DaemonSet on cluster nodes. This function can also be adapted to Kube-OVN.

Nodelocal DNSCache deployment

Deploy Kubernetes NodeLocal DNScache

This step refers to Kubernetes official website configuration nodelocaldnscache.

Deploy with the following script:

#!bin/bash
+    

NodeLocal DNSCache and Kube-OVN adaptation

NodeLocal DNSCache improves cluster DNS performance by running DNS cache as a DaemonSet on cluster nodes. This function can also be adapted to Kube-OVN.

Nodelocal DNSCache deployment

Deploy Kubernetes NodeLocal DNScache

This step refers to Kubernetes official website configuration nodelocaldnscache.

Deploy with the following script:

#!bin/bash
 
 localdns=169.254.20.10
 domain=cluster.local
@@ -34,7 +34,7 @@
 06:20:00.442219 659246098c56_h Out ifindex 17 00:00:00:ea:b3:5e ethertype IPv4 (0x0800), length 145: 169.254.20.10.53 > 10.16.0.2.40230: 1611* 0/1/0 (97)
 06:20:00.442273 ovn0  Out ifindex 7 00:00:00:52:99:d8 ethertype IPv4 (0x0800), length 125: 169.254.20.10.53 > 10.16.0.2.40230: 1291* 2/0/0 A 39.156.66.10, A 110.242.68.66 (77)
 06:20:00.442278 659246098c56_h Out ifindex 17 00:00:00:ea:b3:5e ethertype IPv4 (0x0800), length 125: 169.254.20.10.53 > 10.16.0.2.40230: 1291* 2/0/0 A 39.156.66.10, A 110.242.68.66 (77)
-

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: May 5, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/offload-corigine/index.html b/v1.12.x/en/advance/offload-corigine/index.html index 43479e00f..5b244a74c 100644 --- a/v1.12.x/en/advance/offload-corigine/index.html +++ b/v1.12.x/en/advance/offload-corigine/index.html @@ -1,4 +1,4 @@ - Offload with Corigine - Kube-OVN Document

Offload with Corigine

Kube-OVN uses OVS for traffic forwarding in the final data plane, and the associated flow table matching, tunnel encapsulation and other functions are CPU-intensive, which consumes a lot of CPU resources and leads to higher latency and lower throughput under heavy traffic. Corigine Agilio CX series SmartNIC can offload OVS-related operations to the hardware. This technology can shorten the data path without modifying the OVS control plane, avoiding the use of host CPU resources, which dramatically reduce latency and significantly increase the throughput.

Prerequisites

  • Corigine Agilio CX series SmartNIC.
  • CentOS 8 Stream or Linux 5.7 above.
  • Since the current NIC does not support dp_hash and hash operation offload, OVN LB function should be disabled.

Setup SR-IOV

Please read Agilio Open vSwitch TC User Guide for the detail usage of this SmartNIC.

The following scripts are saved for subsequent execution of firmware-related operations:

#!/bin/bash
+    

Offload with Corigine

Kube-OVN uses OVS for traffic forwarding in the final data plane, and the associated flow table matching, tunnel encapsulation and other functions are CPU-intensive, which consumes a lot of CPU resources and leads to higher latency and lower throughput under heavy traffic. Corigine Agilio CX series SmartNIC can offload OVS-related operations to the hardware. This technology can shorten the data path without modifying the OVS control plane, avoiding the use of host CPU resources, which dramatically reduce latency and significantly increase the throughput.

Prerequisites

  • Corigine Agilio CX series SmartNIC.
  • CentOS 8 Stream or Linux 5.7 above.
  • Since the current NIC does not support dp_hash and hash operation offload, OVN LB function should be disabled.

Setup SR-IOV

Please read Agilio Open vSwitch TC User Guide for the detail usage of this SmartNIC.

The following scripts are saved for subsequent execution of firmware-related operations:

#!/bin/bash
 DEVICE=${1}
 DEFAULT_ASSY=scan
 ASSY=${2:-${DEFAULT_ASSY}}
@@ -131,7 +131,7 @@
 
  • v1.multus-cni.io/default-network: should be the {namespace}/{name} of related NetworkAttachmentDefinition.

Running the following command in the ovs-ovn container of the Pod run node to observe if offload success.

# ovs-appctl dpctl/dump-flows -m type=offloaded
 ufid:91cc45de-e7e9-4935-8f82-1890430b0f66, skb_priority(0/0),skb_mark(0/0),ct_state(0/0x23),ct_zone(0/0),ct_mark(0/0),ct_label(0/0x1),recirc_id(0),dp_hash(0/0),in_port(5b45c61b307e_h),packet_type(ns=0/0,id=0/0),eth(src=00:00:00:c5:6d:4e,dst=00:00:00:e7:16:ce),eth_type(0x0800),ipv4(src=0.0.0.0/0.0.0.0,dst=0.0.0.0/0.0.0.0,proto=0/0,tos=0/0,ttl=0/0,frag=no), packets:941539, bytes:62142230, used:0.260s, offloaded:yes, dp:tc, actions:54235e5753b8_h
 ufid:e00768d7-e652-4d79-8182-3291d852b791, skb_priority(0/0),skb_mark(0/0),ct_state(0/0x23),ct_zone(0/0),ct_mark(0/0),ct_label(0/0x1),recirc_id(0),dp_hash(0/0),in_port(54235e5753b8_h),packet_type(ns=0/0,id=0/0),eth(src=00:00:00:e7:16:ce,dst=00:00:00:c5:6d:4e),eth_type(0x0800),ipv4(src=0.0.0.0/0.0.0.0,dst=0.0.0.0/0.0.0.0,proto=0/0,tos=0/0,ttl=0/0,frag=no), packets:82386659, bytes:115944854173, used:0.260s, offloaded:yes, dp:tc, actions:5b45c61b307e_h
-

If there is offloaded:yes, dp:tc content, the offloading is successful.

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/offload-mellanox/index.html b/v1.12.x/en/advance/offload-mellanox/index.html index 34e3b1782..faea3fc4f 100644 --- a/v1.12.x/en/advance/offload-mellanox/index.html +++ b/v1.12.x/en/advance/offload-mellanox/index.html @@ -1,4 +1,4 @@ - Offload with Mellanox - Kube-OVN Document

Offload with Mellanox

Kube-OVN uses OVS for traffic forwarding in the final data plane, and the associated flow table matching, tunnel encapsulation and other functions are CPU-intensive, which consumes a lot of CPU resources and leads to higher latency and lower throughput under heavy traffic. Mellanox Accelerated Switching And Packet Processing (ASAP²) technology offloads OVS-related operations to an eSwitch within the eSwitch in the hardware. This technology can shorten the data path without modifying the OVS control plane, avoiding the use of host CPU resources, which dramatically reduce latency and significantly increase the throughput.

Prerequisites

  • Mellanox CX5/CX6/BlueField that support ASAP².
  • CentOS 8 Stream or Linux 5.7 above.
  • Since the current NIC does not support dp_hash and hash operation offload, OVN LB function should be disabled.
  • In order to support offload mode, the NIC cannot do bond.

Setup SR-IOV

Check the device ID of the NIC, in the following example it is 42:00.0:

# lspci -nn | grep ConnectX-5
+    

Offload with Mellanox

Kube-OVN uses OVS for traffic forwarding in the final data plane, and the associated flow table matching, tunnel encapsulation and other functions are CPU-intensive, which consumes a lot of CPU resources and leads to higher latency and lower throughput under heavy traffic. Mellanox Accelerated Switching And Packet Processing (ASAP²) technology offloads OVS-related operations to an eSwitch within the eSwitch in the hardware. This technology can shorten the data path without modifying the OVS control plane, avoiding the use of host CPU resources, which dramatically reduce latency and significantly increase the throughput.

Prerequisites

  • Mellanox CX5/CX6/BlueField that support ASAP².
  • CentOS 8 Stream or Linux 5.7 above.
  • Since the current NIC does not support dp_hash and hash operation offload, OVN LB function should be disabled.
  • In order to support offload mode, the NIC cannot do bond.

Setup SR-IOV

Check the device ID of the NIC, in the following example it is 42:00.0:

# lspci -nn | grep ConnectX-5
 42:00.0 Ethernet controller [0200]: Mellanox Technologies MT27800 Family [ConnectX-5] [15b3:1017]
 

Find the corresponding NIC by its device ID:

# ls -l /sys/class/net/ | grep 42:00.0
 lrwxrwxrwx. 1 root root 0 Jul 22 23:16 p4p1 -> ../../devices/pci0000:40/0000:40:02.0/0000:42:00.0/net/p4p1
@@ -115,7 +115,7 @@
 
  • v1.multus-cni.io/default-network: should be the {namespace}/{name} of related NetworkAttachmentDefinition.

Running the following command in the ovs-ovn container of the Pod run node to observe if offload success.

# ovs-appctl dpctl/dump-flows -m type=offloaded
 ufid:91cc45de-e7e9-4935-8f82-1890430b0f66, skb_priority(0/0),skb_mark(0/0),ct_state(0/0x23),ct_zone(0/0),ct_mark(0/0),ct_label(0/0x1),recirc_id(0),dp_hash(0/0),in_port(5b45c61b307e_h),packet_type(ns=0/0,id=0/0),eth(src=00:00:00:c5:6d:4e,dst=00:00:00:e7:16:ce),eth_type(0x0800),ipv4(src=0.0.0.0/0.0.0.0,dst=0.0.0.0/0.0.0.0,proto=0/0,tos=0/0,ttl=0/0,frag=no), packets:941539, bytes:62142230, used:0.260s, offloaded:yes, dp:tc, actions:54235e5753b8_h
 ufid:e00768d7-e652-4d79-8182-3291d852b791, skb_priority(0/0),skb_mark(0/0),ct_state(0/0x23),ct_zone(0/0),ct_mark(0/0),ct_label(0/0x1),recirc_id(0),dp_hash(0/0),in_port(54235e5753b8_h),packet_type(ns=0/0,id=0/0),eth(src=00:00:00:e7:16:ce,dst=00:00:00:c5:6d:4e),eth_type(0x0800),ipv4(src=0.0.0.0/0.0.0.0,dst=0.0.0.0/0.0.0.0,proto=0/0,tos=0/0,ttl=0/0,frag=no), packets:82386659, bytes:115944854173, used:0.260s, offloaded:yes, dp:tc, actions:5b45c61b307e_h
-

If there is offloaded:yes, dp:tc content, the offloading is successful.

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/overlay-with-route/index.html b/v1.12.x/en/advance/overlay-with-route/index.html index 007f5fc9b..d7059fe04 100644 --- a/v1.12.x/en/advance/overlay-with-route/index.html +++ b/v1.12.x/en/advance/overlay-with-route/index.html @@ -1,4 +1,4 @@ - Interconnection with Routes in Overlay Mode - Kube-OVN Document

Interconnection with Routes in Overlay Mode

In some scenarios, the network environment does not support Underlay mode, but still need Pods and external devices directly access through IP, then you can use the routing method to connect the container network and the external.

Only Overlay Subnets in default VPC support this method. In this case, the Pod IP goes directly to the underlying network, which needs to disable IP checks for source and destination addresses.

Prerequisites

  • In this mode, the host needs to open the ip_forward.
  • Check if there is a Drop rule in the forward chain in the host iptables that should be modified for container-related traffic.
  • Due to the possibility of asymmetric routing, the host needs to allow packets with a ct status of INVALID.

Steps

For subnets that require direct external routing, you need to set natOutgoing of the subnet to false to turn off nat mapping and make the Pod IP directly accessible to the external network.

apiVersion: kubeovn.io/v1
+    

Interconnection with Routes in Overlay Mode

In some scenarios, the network environment does not support Underlay mode, but still need Pods and external devices directly access through IP, then you can use the routing method to connect the container network and the external.

Only Overlay Subnets in default VPC support this method. In this case, the Pod IP goes directly to the underlying network, which needs to disable IP checks for source and destination addresses.

Prerequisites

  • In this mode, the host needs to open the ip_forward.
  • Check if there is a Drop rule in the forward chain in the host iptables that should be modified for container-related traffic.
  • Due to the possibility of asymmetric routing, the host needs to allow packets with a ct status of INVALID.

Steps

For subnets that require direct external routing, you need to set natOutgoing of the subnet to false to turn off nat mapping and make the Pod IP directly accessible to the external network.

apiVersion: kubeovn.io/v1
 kind: Subnet
 metadata:
   name: routed
@@ -34,7 +34,7 @@
   gatewayType: centralized
   gatewayNode: "node1"
   natOutgoing: false
-

If you still want to perform NAT processing for some traffic, such as traffic accessing the Internet, please refer to the Default VPC NAT Policy Rule.

微信群 Slack Twitter Support


最后更新: September 1, 2023
创建日期: July 6, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/ovn-eip-fip-snat/index.html b/v1.12.x/en/advance/ovn-eip-fip-snat/index.html index 8c0f8559c..333372c70 100644 --- a/v1.12.x/en/advance/ovn-eip-fip-snat/index.html +++ b/v1.12.x/en/advance/ovn-eip-fip-snat/index.html @@ -1,4 +1,4 @@ - Support OVN EIP,FIP and SNAT - Kube-OVN Document

Support OVN EIP,FIP and SNAT

Note: Due to api changes, the OVN EIP FIP DNAT function cannot be continued in the '1.12' branch, if necessary, please refer to the branch after 1.12 or the master branch. Due to the evolution of the master branch quickly, now provides a special 1.12-mc branch, used to guarantee stability.

graph LR
+    

Support OVN EIP,FIP and SNAT

Note: Due to api changes, the OVN EIP FIP DNAT function cannot be continued in the '1.12' branch, if necessary, please refer to the branch after 1.12 or the master branch. Due to the evolution of the master branch quickly, now provides a special 1.12-mc branch, used to guarantee stability.

graph LR
 
 
 pod-->vpc1-subnet-->vpc1-->snat-->lrp-->external-subnet-->gw-node-external-nic

The pod access the public network based on the snat

graph LR
@@ -419,7 +419,7 @@
 # kubectl get odnat eip-dnat 
 NAME       EIP        PROTOCOL   V4EIP       V4IP          INTERNALPORT   EXTERNALPORT   IPNAME          READY
 eip-dnat   eip-dnat   tcp        10.5.49.4   192.168.0.4   22             22             test-dnat-vip   true
-

微信群 Slack Twitter Support


最后更新: December 21, 2023
创建日期: March 3, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/ovn-ipsec/index.html b/v1.12.x/en/advance/ovn-ipsec/index.html index 349a36287..1f34eb288 100644 --- a/v1.12.x/en/advance/ovn-ipsec/index.html +++ b/v1.12.x/en/advance/ovn-ipsec/index.html @@ -1,4 +1,4 @@ - OVN IPsec Support - Kube-OVN Document

Encrypt inter-node communication using IPsec

This function is supported after v1.10.11 and v1.11.4, the kernel version is at least 3.10.0 or above, and UDP ports 500 and 4500 are available.

Start IPsec

Copy the script from the Kube-OVN source code ipsec.sh, execute the command as follows, the script will call ovs-pki to generate and distribute the certificate required for encryption:

bash ipsec.sh init
+    

Encrypt inter-node communication using IPsec

This function is supported after v1.10.11 and v1.11.4, the kernel version is at least 3.10.0 or above, and UDP ports 500 and 4500 are available.

Start IPsec

Copy the script from the Kube-OVN source code ipsec.sh, execute the command as follows, the script will call ovs-pki to generate and distribute the certificate required for encryption:

bash ipsec.sh init
 

After the execution is completed, the nodes will negotiate for a period of time to establish an IPsec tunnel. The experience value is between ten seconds and one minute.You can check the IPsec status with the following command:

# bash ipsec.sh status
  Pod {ovs-ovn-d7hdt} ipsec status...
 Interface name: ovn-a4718e-0 v1 (CONFIGURED)
@@ -70,7 +70,7 @@
 10:01:40.350015 IP kube-ovn-control-plane.kind > kube-ovn-worker: ESP(spi=0xc8df4221,seq=0x1d37), length 156
 

After executing the script, you can turn off IPsec by executing the command:

# bash ipsec.sh stop
 

Or execute the command to open it again:

# bash ipsec.sh start
-

微信群 Slack Twitter Support


最后更新: December 5, 2023
创建日期: April 18, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html b/v1.12.x/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html index b8daae278..a6ba6cad6 100644 --- a/v1.12.x/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html +++ b/v1.12.x/en/advance/ovn-l3-ha-based-ecmp-with-bfd/index.html @@ -1,4 +1,4 @@ - Support OVN SNAT L3 HA Based ECMP and BFD Static Route - Kube-OVN Document

Support OVN SNAT L3 HA Based ECMP and BFD Static Route

Custom vpc based on ovn snat after ecmp based static route hash to multiple gw node ovnext0 NICs out of the public network

  • Supports bfd-based high availability
  • Only supports hash load balancing
graph LR
+    

Support OVN SNAT L3 HA Based ECMP and BFD Static Route

Custom vpc based on ovn snat after ecmp based static route hash to multiple gw node ovnext0 NICs out of the public network

  • Supports bfd-based high availability
  • Only supports hash load balancing
graph LR
 
 pod-->vpc-subnet-->vpc-->snat-->ecmp-->external-subnet-->gw-node1-ovnext0--> node1-external-switch
 external-subnet-->gw-node2-ovnext0--> node2-external-switch
@@ -250,7 +250,7 @@
 # After application the route will switch back to the normal default static route
 # nbctl list bfd, the bfd session associated with lrp has been removed
 # And the opposite side of the bfd session in ovnext ns is automatically removed
-

微信群 Slack Twitter Support


最后更新: August 8, 2023
创建日期: March 3, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/ovn-remote-port-mirroring/index.html b/v1.12.x/en/advance/ovn-remote-port-mirroring/index.html index 18f681d8a..bc13613f9 100644 --- a/v1.12.x/en/advance/ovn-remote-port-mirroring/index.html +++ b/v1.12.x/en/advance/ovn-remote-port-mirroring/index.html @@ -1,4 +1,4 @@ - OVN Remote Port Mirroring - Kube-OVN Document

OVN Remote Port Mirroring

This feature provides ability to mirror the traffic of the specified Pod and direction, and to send the mirrored traffic to a remote destination.

This feature requires Kube-OVN version not lower than v1.12.

Install Multus-CNI

Install Multus-CNI by referring the Multus-CNI Document.

Create NetworkAttachmentDefinition

Create the following NetworkAttachmentDefinition:

apiVersion: "k8s.cni.cncf.io/v1"
+    

OVN Remote Port Mirroring

This feature provides ability to mirror the traffic of the specified Pod and direction, and to send the mirrored traffic to a remote destination.

This feature requires Kube-OVN version not lower than v1.12.

Install Multus-CNI

Install Multus-CNI by referring the Multus-CNI Document.

Create NetworkAttachmentDefinition

Create the following NetworkAttachmentDefinition:

apiVersion: "k8s.cni.cncf.io/v1"
 kind: NetworkAttachmentDefinition
 metadata:
   name: attachnet
@@ -103,7 +103,7 @@
     10.16.0.4.53 > 10.16.0.6.45214: 61875 NXDomain*- 0/1/1 (159)
 05:13:30.566023 00:00:00:a3:f5:e2 > 00:00:00:55:e4:4e, ethertype IPv4 (0x0800), length 80: (tos 0x0, ttl 64, id 45937, offset 0, flags [DF], proto UDP (17), length 66)
     10.16.0.4.44116 > 172.18.0.1.53: 16025+ [1au] AAAA? alauda.cn. (38)
-

Notice

  1. If you are using ERSPAN as the encapsulation protocol, the Linux kernel version of the OVN nodes and remote devices must not be lower than 4.14. If you are using ERSPAN as the encapsulation protocol and using IPv6 as the transport network, the Linux kernel version must not be lower than 4.16.
  2. The transmission of mirrored traffic is unidirectional, so you only need to ensure that the OVN node can access the remote device.

微信群 Slack Twitter Support


最后更新: July 24, 2023
创建日期: April 20, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/performance-tuning/index.html b/v1.12.x/en/advance/performance-tuning/index.html index 615ad3dd7..25444880e 100644 --- a/v1.12.x/en/advance/performance-tuning/index.html +++ b/v1.12.x/en/advance/performance-tuning/index.html @@ -1,4 +1,4 @@ - Performance Tuning - Kube-OVN Document

Performance Tuning

To keep the installation simple and feature-complete, the default installation script for Kube-OVN does not have performance-specific optimizations. If the applications are sensitive to latency and throughput, administrators can use this document to make specific performance optimizations.

The community will continue to iterate on the performance. Some general performance optimizations have been integrated into the latest version, so it is recommended to use the latest version to get better default performance.

For more on the process and methodology of performance optimization, please watch the video Kube-OVN 容器性能优化之旅

Benchmarking

Because the hardware and software environments vary greatly, the performance test data provided here can only be used as a reference, and the actual test results may differ significantly from the results in this document. It is recommended to compare the performance test results before and after optimization, and the performance comparison between the host network and the container network.

Overlay Performance Comparison before and after Optimization

Environment:

  • Kubernetes: 1.22.0
  • OS: CentOS 7
  • Kube-OVN: 1.8.0 Overlay Mode
  • CPU: Intel(R) Xeon(R) E-2278G
  • Network: 2*10Gbps, xmit_hash_policy=layer3+4

We use qperf -t 60 <server ip> -ub -oo msg_size:1 -vu tcp_lat tcp_bw udp_lat udp_bw to test bandwidth and latency of tcp/udp in 1-byte packets and the host network, respectively.

Type tcp_lat (us) udp_lat (us) tcp_bw (Mb/s) udp_bw(Mb/s)
Kube-OVN Default 25.7 22.9 27.1 1.59
Kube-OVN Optimized 13.9 12.9 27.6 5.57
HOST Network 13.1 12.4 28.2 6.02

Overlay, Underlay and Calico Comparison

Next, we compare the overlay and underlay performance of the optimized Kube-OVN at different packet sizes with Calico's IPIP Always, IPIP never and the host network.

Environment:

  • Kubernetes: 1.22.0
  • OS: CentOS 7
  • Kube-OVN: 1.8.0
  • CPU: AMD EPYC 7402P 24-Core Processor
  • Network: Intel Corporation Ethernet Controller XXV710 for 25GbE SFP28

qperf -t 60 <server ip> -ub -oo msg_size:1 -vu tcp_lat tcp_bw udp_lat udp_bw

Type tcp_lat (us) udp_lat (us) tcp_bw (Mb/s) udp_bw(Mb/s)
Kube-OVN Overlay 15.2 14.6 23.6 2.65
Kube-OVN Underlay 14.3 13.8 24.2 3.46
Calico IPIP 21.4 20.2 23.6 1.18
Calico NoEncap 19.3 16.9 23.6 1.76
HOST Network 16.6 15.4 24.8 2.64

qperf -t 60 <server ip> -ub -oo msg_size:1K -vu tcp_lat tcp_bw udp_lat udp_bw

Type tcp_lat (us) udp_lat (us) tcp_bw (Gb/s) udp_bw(Gb/s)
Kube-OVN Overlay 16.5 15.8 10.2 2.77
Kube-OVN Underlay 15.9 14.5 9.6 3.22
Calico IPIP 22.5 21.5 1.45 1.14
Calico NoEncap 19.4 18.3 3.76 1.63
HOST Network 18.1 16.6 9.32 2.66

qperf -t 60 <server ip> -ub -oo msg_size:4K -vu tcp_lat tcp_bw udp_lat udp_bw

Type tcp_lat (us) udp_lat (us) tcp_bw (Gb/s) udp_bw(Gb/s)
Kube-OVN Overlay 34.7 41.6 16.0 9.23
Kube-OVN Underlay 32.6 44 15.1 6.71
Calico IPIP 44.8 52.9 2.94 3.26
Calico NoEncap 40 49.6 6.56 4.19
HOST Network 35.9 45.9 14.6 5.59

In some cases the container network outperforms the host network, this is because the container network path is optimized to completely bypass netfilter. Due to the existence of kube-proxy, all packets in host network have to go through netfilter, which will lead to more CPU consumption, so that container network in some environments has better performance.

Dataplane performance optimization methods

The optimization methods described here are related to the hardware and software environment and the desired functionality, so please carefully understand the prerequisites for optimization before attempting it.

CPU Performance Mode Tuning

In some environments the CPU is running in power saving mode, performance in this mode will be unstable and latency will increase significantly, it is recommended to use the CPU's performance mode for more stable performance.

cpupower frequency-set -g performance
+    

Performance Tuning

To keep the installation simple and feature-complete, the default installation script for Kube-OVN does not have performance-specific optimizations. If the applications are sensitive to latency and throughput, administrators can use this document to make specific performance optimizations.

The community will continue to iterate on the performance. Some general performance optimizations have been integrated into the latest version, so it is recommended to use the latest version to get better default performance.

For more on the process and methodology of performance optimization, please watch the video Kube-OVN 容器性能优化之旅

Benchmarking

Because the hardware and software environments vary greatly, the performance test data provided here can only be used as a reference, and the actual test results may differ significantly from the results in this document. It is recommended to compare the performance test results before and after optimization, and the performance comparison between the host network and the container network.

Overlay Performance Comparison before and after Optimization

Environment:

  • Kubernetes: 1.22.0
  • OS: CentOS 7
  • Kube-OVN: 1.8.0 Overlay Mode
  • CPU: Intel(R) Xeon(R) E-2278G
  • Network: 2*10Gbps, xmit_hash_policy=layer3+4

We use qperf -t 60 <server ip> -ub -oo msg_size:1 -vu tcp_lat tcp_bw udp_lat udp_bw to test bandwidth and latency of tcp/udp in 1-byte packets and the host network, respectively.

Type tcp_lat (us) udp_lat (us) tcp_bw (Mb/s) udp_bw(Mb/s)
Kube-OVN Default 25.7 22.9 27.1 1.59
Kube-OVN Optimized 13.9 12.9 27.6 5.57
HOST Network 13.1 12.4 28.2 6.02

Overlay, Underlay and Calico Comparison

Next, we compare the overlay and underlay performance of the optimized Kube-OVN at different packet sizes with Calico's IPIP Always, IPIP never and the host network.

Environment:

  • Kubernetes: 1.22.0
  • OS: CentOS 7
  • Kube-OVN: 1.8.0
  • CPU: AMD EPYC 7402P 24-Core Processor
  • Network: Intel Corporation Ethernet Controller XXV710 for 25GbE SFP28

qperf -t 60 <server ip> -ub -oo msg_size:1 -vu tcp_lat tcp_bw udp_lat udp_bw

Type tcp_lat (us) udp_lat (us) tcp_bw (Mb/s) udp_bw(Mb/s)
Kube-OVN Overlay 15.2 14.6 23.6 2.65
Kube-OVN Underlay 14.3 13.8 24.2 3.46
Calico IPIP 21.4 20.2 23.6 1.18
Calico NoEncap 19.3 16.9 23.6 1.76
HOST Network 16.6 15.4 24.8 2.64

qperf -t 60 <server ip> -ub -oo msg_size:1K -vu tcp_lat tcp_bw udp_lat udp_bw

Type tcp_lat (us) udp_lat (us) tcp_bw (Gb/s) udp_bw(Gb/s)
Kube-OVN Overlay 16.5 15.8 10.2 2.77
Kube-OVN Underlay 15.9 14.5 9.6 3.22
Calico IPIP 22.5 21.5 1.45 1.14
Calico NoEncap 19.4 18.3 3.76 1.63
HOST Network 18.1 16.6 9.32 2.66

qperf -t 60 <server ip> -ub -oo msg_size:4K -vu tcp_lat tcp_bw udp_lat udp_bw

Type tcp_lat (us) udp_lat (us) tcp_bw (Gb/s) udp_bw(Gb/s)
Kube-OVN Overlay 34.7 41.6 16.0 9.23
Kube-OVN Underlay 32.6 44 15.1 6.71
Calico IPIP 44.8 52.9 2.94 3.26
Calico NoEncap 40 49.6 6.56 4.19
HOST Network 35.9 45.9 14.6 5.59

In some cases the container network outperforms the host network, this is because the container network path is optimized to completely bypass netfilter. Due to the existence of kube-proxy, all packets in host network have to go through netfilter, which will lead to more CPU consumption, so that container network in some environments has better performance.

Dataplane performance optimization methods

The optimization methods described here are related to the hardware and software environment and the desired functionality, so please carefully understand the prerequisites for optimization before attempting it.

CPU Performance Mode Tuning

In some environments the CPU is running in power saving mode, performance in this mode will be unstable and latency will increase significantly, it is recommended to use the CPU's performance mode for more stable performance.

cpupower frequency-set -g performance
 

NIC Hardware Queue Adjustment

In the case of increased traffic, a small buffer queue may lead to significant performance degradation due to a high packet loss rate and needs to be tuned.

Check the current NIC queue length:

# ethtool -g eno1
  Ring parameters for eno1:
  Pre-set maximums:
@@ -70,7 +70,7 @@
 

If you have previously started Kube-OVN and the older version of the OVS module has been loaded into the kernel. It is recommended to reboot the machine to reload the new version of the kernel module.

Using STT Type Tunnel

Common tunnel encapsulation protocols such as Geneve and Vxlan use the UDP protocol to encapsulate packets and are well supported in the kernel. However, when TCP packets are encapsulated using UDP, the optimization and offload features of modern operating systems and network cards for the TCP protocol do not work well, resulting in a significant drop in TCP throughput. In some virtualization scenarios, due to CPU limitations, TCP packet throughput may even be a tenth of that of the host network.

STT provides an innovative tunneling protocol that uses TCP formatted header for encapsulation. This encapsulation only emulates the TCP protocol header format without actually establishing a TCP connection, but can take full advantage of the TCP optimization capabilities of modern operating systems and network cards. In our tests TCP packet throughput can be improved several times, reaching performance levels close to those of the host network.

The STT tunnel is not pre-installed in the kernel and needs to be installed by compiling the OVS kernel module, which can be found in the previous section.

Enable STT tunnel:

kubectl set env daemonset/ovs-ovn -n kube-system TUNNEL_TYPE=stt
 
 kubectl delete pod -n kube-system -lapp=ovs
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/security-group/index.html b/v1.12.x/en/advance/security-group/index.html index 3c80c883b..03238aca9 100644 --- a/v1.12.x/en/advance/security-group/index.html +++ b/v1.12.x/en/advance/security-group/index.html @@ -1,4 +1,4 @@ - SecurityGroup Usage - Kube-OVN Document

SecurityGroup Usage

Kube-OVN has supported the configuration of security-groups, and the CRD used to configure security-groups is SecurityGroup.

SecurityGroup Example

apiVersion: kubeovn.io/v1
+    

SecurityGroup Usage

Kube-OVN has supported the configuration of security-groups, and the CRD used to configure security-groups is SecurityGroup.

SecurityGroup Example

apiVersion: kubeovn.io/v1
 kind: SecurityGroup
 metadata:
   name: sg-example
@@ -129,7 +129,7 @@
 NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
 sg-test-pod 0/1 ContainerCreating 0 5h41m <none> kube-ovn-worker <none> <none>
 sg-gw-both 1/1 Running 0 5h37m 10.16.0.19 kube-ovn-worker <none> <none>
-

So for the use of security groups, be particularly clear about the effect of the added restriction rules. If it is simply to restrict traffic access, consider using a network policy instead.

微信群 Slack Twitter Support


最后更新: November 8, 2023
创建日期: February 28, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/vip/index.html b/v1.12.x/en/advance/vip/index.html index fd7e8b983..3e539a6d5 100644 --- a/v1.12.x/en/advance/vip/index.html +++ b/v1.12.x/en/advance/vip/index.html @@ -1,4 +1,4 @@ - VIP Reservation - Kube-OVN Document

VIP Reservation

In some scenarios we want to dynamically reserve part of the IP but not assign it to Pods but to other infrastructure e.g:

  • Kubernetes nested Kubernetes scenarios where the upper Kubernetes uses the Underlay network take up the available addresses of the underlying Subnet.
  • LB or other network infrastructure requires the use of an IP within a Subnet.

Create Random Address VIP

If you just want to set aside a number of IPs and have no requirement for the IP addresses themselves, you can use the following yaml to create them:

apiVersion: kubeovn.io/v1
+    

VIP Reservation

In some scenarios we want to dynamically reserve part of the IP but not assign it to Pods but to other infrastructure e.g:

  • Kubernetes nested Kubernetes scenarios where the upper Kubernetes uses the Underlay network take up the available addresses of the underlying Subnet.
  • LB or other network infrastructure requires the use of an IP within a Subnet.

Create Random Address VIP

If you just want to set aside a number of IPs and have no requirement for the IP addresses themselves, you can use the following yaml to create them:

apiVersion: kubeovn.io/v1
 kind: Vip
 metadata:
   name: vip-dynamic-01
@@ -26,7 +26,7 @@
 
  • subnet: reserve the IP from this Subnet.
  • V4ip: A fixed-assigned IP address that should within the CIDR range of subnet.

Query the VIP after creation:

# kubectl get vip
 NAME             V4IP         PV4IP   MAC                 PMAC   V6IP   PV6IP   SUBNET        READY
 static-vip01   10.16.0.121           00:00:00:F0:DB:26                         ovn-default   true
-

It can be seen that the VIP has been assigned the expected IP address.

StatefulSet & Kubevirt VM keep VIP

Specify for StatefulSet and VM resources, these Pods their owned will reuse the VIP when these Pods recreating.

VM keep VIP must be enable the keep-vm-ip param in kube-ovn-controller. Refer Kubevirt VM Fixed Address Settings

微信群 Slack Twitter Support


最后更新: July 20, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/vpc-dns/index.html b/v1.12.x/en/advance/vpc-dns/index.html index a4656835d..bc762560d 100644 --- a/v1.12.x/en/advance/vpc-dns/index.html +++ b/v1.12.x/en/advance/vpc-dns/index.html @@ -1,4 +1,4 @@ - VPC DNS - Kube-OVN Document

Custom VPC DNS

Due to the isolation of the user-defined VPC and the default VPC network, the coredns deployed in the default VPC cannot be accessed from within the custom VPC. If you wish to use the intra-cluster domain name resolution capability provided by Kubernetes within your custom VPC, you can refer to this document and utilize the vpc-dns CRD to do so.

This CRD eventually deploys a coredns that has two NICs, one in the user-defined VPC and the other in the default VPC to enable network interoperability and provide an internal load balancing within the custom VPC through the custom VPC internal load balancing.

Deployment of vpc-dns dependent resources

apiVersion: rbac.authorization.k8s.io/v1
+    

Custom VPC DNS

Due to the isolation of the user-defined VPC and the default VPC network, the coredns deployed in the default VPC cannot be accessed from within the custom VPC. If you wish to use the intra-cluster domain name resolution capability provided by Kubernetes within your custom VPC, you can refer to this document and utilize the vpc-dns CRD to do so.

This CRD eventually deploys a coredns that has two NICs, one in the user-defined VPC and the other in the default VPC to enable network interoperability and provide an internal load balancing within the custom VPC through the custom VPC internal load balancing.

Deployment of vpc-dns dependent resources

apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
   labels:
@@ -122,7 +122,7 @@
 NAME                VIP         PORT(S)                  SERVICE                             AGE
 vpc-dns-test-cjh1   10.96.0.3   53/UDP,53/TCP,9153/TCP   kube-system/slr-vpc-dns-test-cjh1   113s
 

Go to the Pod under this VPC and test the dns resolution:

nslookup kubernetes.default.svc.cluster.local 10.96.0.3
-

The subnet where the switch lb rule under this VPC is located and the pods under other subnets under the same VPC can be resolved.

微信群 Slack Twitter Support


最后更新: October 8, 2023
创建日期: October 8, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/vpc-internal-lb/index.html b/v1.12.x/en/advance/vpc-internal-lb/index.html index 2f4901c1f..336fcdbb9 100644 --- a/v1.12.x/en/advance/vpc-internal-lb/index.html +++ b/v1.12.x/en/advance/vpc-internal-lb/index.html @@ -1,4 +1,4 @@ - VPC Internal Load Balancer - Kube-OVN Document

Customize VPC Internal Load Balancing

The Service provided by Kubernetes can be used for load balancing within the cluster. However, there are several issues with using Service as internal load balancing in customize VPC mode:

  1. The Service IP range is a cluster resource, shared by all customize VPCs, and cannot overlap.
  2. Users cannot set internal load balancing IP addresses according to their own preferences.

To address the above issues, Kube OVN introduced the SwitchLBRule CRD in 1.11, allowing users to set internal load balancing rules within customize VPCs.

SwitchLBRule support the following two ways to set internal load balancing rules within a customize VPC.

Automatically Generate Load Balancing Rules by Selector

Load balancing rules can be generated by selector automatic association with pod configuration through label.

example of SwitchLBRule is as follows:

apiVersion: kubeovn.io/v1
+    

Customize VPC Internal Load Balancing

The Service provided by Kubernetes can be used for load balancing within the cluster. However, there are several issues with using Service as internal load balancing in customize VPC mode:

  1. The Service IP range is a cluster resource, shared by all customize VPCs, and cannot overlap.
  2. Users cannot set internal load balancing IP addresses according to their own preferences.

To address the above issues, Kube OVN introduced the SwitchLBRule CRD in 1.11, allowing users to set internal load balancing rules within customize VPCs.

SwitchLBRule support the following two ways to set internal load balancing rules within a customize VPC.

Automatically Generate Load Balancing Rules by Selector

Load balancing rules can be generated by selector automatic association with pod configuration through label.

example of SwitchLBRule is as follows:

apiVersion: kubeovn.io/v1
 kind: SwitchLBRule
 metadata:
   name:  cjh-slr-nginx
@@ -38,7 +38,7 @@
     port: 8888
     targetPort: 80
     protocol: TCP
-
  • usage of sessionAffinity, and port is the same as Kubernetes Service.

  • vip:customize load balancing IP address.

  • namespace:namespace of the pod selected by selector.

  • endpoints:load balancing backend IP list.

attention:If both selector and endpoints are configured, the selector configuration will be automatically ignored.

微信群 Slack Twitter Support


最后更新: June 29, 2023
创建日期: May 18, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/vpc-peering/index.html b/v1.12.x/en/advance/vpc-peering/index.html index 3b0a7c0d3..c9f4e8c98 100644 --- a/v1.12.x/en/advance/vpc-peering/index.html +++ b/v1.12.x/en/advance/vpc-peering/index.html @@ -1,4 +1,4 @@ - VPC Peering - Kube-OVN Document

VPC Peering

VPC peering provides a mechanism for bridging two VPC networks through logical routes so that workloads within two VPCs can access each other through private addresses as if they were on the same private network, without the need for NAT forwarding through a gateway.

Prerequisites

  1. This feature is only available for customized VPCs.
  2. To avoid route overlap the subnet CIDRs within the two VPCs cannot overlap.
  3. Currently, only interconnection of two VPCs is supported.

Usage

First create two non-interconnected VPCs with one Subnet under each VPC, and the CIDRs of the Subnets do not overlap with each other.

kind: Vpc
+    

VPC Peering

VPC peering provides a mechanism for bridging two VPC networks through logical routes so that workloads within two VPCs can access each other through private addresses as if they were on the same private network, without the need for NAT forwarding through a gateway.

Prerequisites

  1. This feature is only available for customized VPCs.
  2. To avoid route overlap the subnet CIDRs within the two VPCs cannot overlap.
  3. Currently, only interconnection of two VPCs is supported.

Usage

First create two non-interconnected VPCs with one Subnet under each VPC, and the CIDRs of the Subnets do not overlap with each other.

kind: Vpc
 apiVersion: kubeovn.io/v1
 metadata:
   name: vpc-1
@@ -97,7 +97,7 @@
 --- 10.0.0.2 ping statistics ---
 3 packets transmitted, 3 packets received, 0% packet loss
 round-trip min/avg/max = 0.088/0.258/0.594 ms
-

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/windows/index.html b/v1.12.x/en/advance/windows/index.html index 89a983504..0b6c91b5a 100644 --- a/v1.12.x/en/advance/windows/index.html +++ b/v1.12.x/en/advance/windows/index.html @@ -1,4 +1,4 @@ - Windows Support - Kube-OVN Document

Windows Support

Kube-OVN supports Kubernetes cluster networks that include Windows system nodes, allowing unified containers network management.

Prerequisites

  • Read Adding Windows nodes to add Windows nodes.
  • Windows nodes must have the KB4489899 patch installed for Overlay/VXLAN networks to work properly, and it is recommended to update your system to the latest version.
  • Hyper-V and management tools must be installed on the Windows node.
  • Due to Windows restrictions tunnel encapsulation can only be used in Vxlan mode.
  • SSL, IPv6, dual-stack, QoS features are not supported at this time.
  • Dynamic subnet and dynamic tunnel interface are not supported at this time. You need to create the subnet and select the network interface before installing the Windows node.
  • Multiple ProviderNetworks are not supported, and the bridge interface configuration cannot be dynamically adjusted.

Install OVS on Windows

Due to some issues with upstream OVN and OVS support for Windows containers, a modified installation package provided by Kube-OVN is required.

Use the following command to enable the TESTSIGNING startup item on the Windows node, which requires a system reboot to take effect.

bcdedit /set LOADOPTIONS DISABLE_INTEGRITY_CHECKS
+    

Windows Support

Kube-OVN supports Kubernetes cluster networks that include Windows system nodes, allowing unified containers network management.

Prerequisites

  • Read Adding Windows nodes to add Windows nodes.
  • Windows nodes must have the KB4489899 patch installed for Overlay/VXLAN networks to work properly, and it is recommended to update your system to the latest version.
  • Hyper-V and management tools must be installed on the Windows node.
  • Due to Windows restrictions tunnel encapsulation can only be used in Vxlan mode.
  • SSL, IPv6, dual-stack, QoS features are not supported at this time.
  • Dynamic subnet and dynamic tunnel interface are not supported at this time. You need to create the subnet and select the network interface before installing the Windows node.
  • Multiple ProviderNetworks are not supported, and the bridge interface configuration cannot be dynamically adjusted.

Install OVS on Windows

Due to some issues with upstream OVN and OVS support for Windows containers, a modified installation package provided by Kube-OVN is required.

Use the following command to enable the TESTSIGNING startup item on the Windows node, which requires a system reboot to take effect.

bcdedit /set LOADOPTIONS DISABLE_INTEGRITY_CHECKS
 bcdedit /set TESTSIGNING ON
 bcdedit /set nointegritychecks ON
 

Download Windows package on Windows node and install.

Confirm that the service is running properly after installation:

PS > Get-Service | findstr ovs
 Running  ovsdb-server  Open vSwitch DB Service
 Running  ovs-vswitchd  Open vSwitch Service
 

Install Kube-OVN

Download the installation script in the Windows node install.ps1.

Add relevant parameters and run:

.\install.ps1 -KubeConfig C:\k\admin.conf -ApiServer https://192.168.140.180:6443 -ServiceCIDR 10.96.0.0/12
-

By default, Kube-OVN uses the NIC where the node IP is located as the tunnel interface. If you need to use another NIC, you need to add the specified annotation to the Node before installation, e.g. ovn.kubernetes.io/tunnel_interface=Ethernet1.

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/with-bgp/index.html b/v1.12.x/en/advance/with-bgp/index.html index fe5b6b1fd..ec0faf7a3 100644 --- a/v1.12.x/en/advance/with-bgp/index.html +++ b/v1.12.x/en/advance/with-bgp/index.html @@ -1,4 +1,4 @@ - BGP Support - Kube-OVN Document

BGP Support

Kube-OVN supports broadcasting the IP address of the Pod or Subnet to the outside world via BGP protocol, so that the outside world can access the Pod directly through the Pod IP. To use this feature, you need to install kube-ovn-speaker on specific nodes and add the corresponding annotation to the Pod or Subnet that needs to be exposed to the outside world.

Install kube-ovn-speaker

kube-ovn-speaker use GoBGP to publish routing information to the outside world and set the next-hop route to itself.

Since the node where kube-ovn-speaker is deployed needs to carry return traffic, specific labeled nodes need to be selected for deployment:

kubectl label nodes speaker-node-1 ovn.kubernetes.io/bgp=true
+    

BGP Support

Kube-OVN supports broadcasting the IP address of the Pod or Subnet to the outside world via BGP protocol, so that the outside world can access the Pod directly through the Pod IP. To use this feature, you need to install kube-ovn-speaker on specific nodes and add the corresponding annotation to the Pod or Subnet that needs to be exposed to the outside world.

Install kube-ovn-speaker

kube-ovn-speaker use GoBGP to publish routing information to the outside world and set the next-hop route to itself.

Since the node where kube-ovn-speaker is deployed needs to carry return traffic, specific labeled nodes need to be selected for deployment:

kubectl label nodes speaker-node-1 ovn.kubernetes.io/bgp=true
 kubectl label nodes speaker-node-2 ovn.kubernetes.io/bgp=true
 

When there are multiple instances of kube-ovn-speaker, each of them will publish routes to the outside world, the upstream router needs to support multi-path ECMP.

Download the corresponding yaml:

wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.12/yamls/speaker.yaml
 

Modify the corresponding configuration in yaml:

--neighbor-address=10.32.32.1
@@ -17,7 +17,7 @@
 kubectl annotate subnet ovn-default ovn.kubernetes.io/bgp=true
 

Delete annotation to disable the publishing:

kubectl annotate pod perf-ovn-xzvd4 ovn.kubernetes.io/bgp-
 kubectl annotate subnet ovn-default ovn.kubernetes.io/bgp-
-

BGP Advance Options

kube-ovn-speaker supports more BGP parameters for advanced configuration, which can be adjusted by users according to their network environment:

  • announce-cluster-ip: Whether to publish Service routes to the public, default is false.
  • auth-password: The access password for the BGP peer.
  • holdtime: The heartbeat detection time between BGP neighbors. Neighbors with no messages after the change time will be removed, the default is 90 seconds.
  • graceful-restart: Whether to enable BGP Graceful Restart.
  • graceful-restart-time: BGP Graceful restart time refer to RFC4724 3.
  • graceful-restart-deferral-time: BGP Graceful restart deferral time refer to RFC4724 4.1.

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/with-cilium/index.html b/v1.12.x/en/advance/with-cilium/index.html index f648111cf..fee48bfbe 100644 --- a/v1.12.x/en/advance/with-cilium/index.html +++ b/v1.12.x/en/advance/with-cilium/index.html @@ -1,4 +1,4 @@ - Integration with Cilium - Kube-OVN Document

Integration with Cilium

Cilium is an eBPF-based networking and security component. Kube-OVN uses the CNI Chaining mode to enhance existing features. Users can use both the rich network abstraction capabilities of Kube-OVN and the monitoring and security capabilities that come with eBPF.

By integrating Cilium, Kube-OVN users can have the following gains:

  • Richer and more efficient security policies.
  • Hubble-based monitoring and UI.

Prerequisites

  1. Linux kernel version above 4.19 or other compatible kernel for full eBPF capability support.
  2. Install Helm in advance to prepare for the installation of Cilium, please refer to Installing Helm to deploy Helm.

Configure Kube-OVN

In order to fully utilize the security capabilities of Cilium, you need to disable the networkpolicy feature within Kube-OVN and adjust the CNI configuration priority.

Change the following variables in the install.sh script:

ENABLE_NP=false
+    

Integration with Cilium

Cilium is an eBPF-based networking and security component. Kube-OVN uses the CNI Chaining mode to enhance existing features. Users can use both the rich network abstraction capabilities of Kube-OVN and the monitoring and security capabilities that come with eBPF.

By integrating Cilium, Kube-OVN users can have the following gains:

  • Richer and more efficient security policies.
  • Hubble-based monitoring and UI.

Prerequisites

  1. Linux kernel version above 4.19 or other compatible kernel for full eBPF capability support.
  2. Install Helm in advance to prepare for the installation of Cilium, please refer to Installing Helm to deploy Helm.

Configure Kube-OVN

In order to fully utilize the security capabilities of Cilium, you need to disable the networkpolicy feature within Kube-OVN and adjust the CNI configuration priority.

Change the following variables in the install.sh script:

ENABLE_NP=false
 CNI_CONFIG_PRIORITY=10
 

If the deployment is complete, you can adjust the args of kube-ovn-controller:

args:
 - --enable-np=false
@@ -67,7 +67,7 @@
 Cluster Pods:     8/11 managed by Cilium
 Image versions    cilium             quay.io/cilium/cilium:v1.10.5@sha256:0612218e28288db360c63677c09fafa2d17edda4f13867bcabf87056046b33bb: 2
                   cilium-operator    quay.io/cilium/operator-generic:v1.10.5@sha256:2d2f730f219d489ff0702923bf24c0002cd93eb4b47ba344375566202f56d972: 2
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/with-openstack/index.html b/v1.12.x/en/advance/with-openstack/index.html index bd717d474..aea7c2ecc 100644 --- a/v1.12.x/en/advance/with-openstack/index.html +++ b/v1.12.x/en/advance/with-openstack/index.html @@ -1,4 +1,4 @@ - Integration with OpenStack - Kube-OVN Document

Integration with OpenStack

In some cases, users need to run virtual machines with OpenStack and containers with Kubernetes, and need the network to interoperate between containers and virtual machines and be under a unified control plane. If the OpenStack Neutron side also uses OVN as the underlying network, then Kube-OVN can use either cluster interconnection or shared underlying OVN to connect the OpenStack and Kubernetes networks.

Cluster Interconnection

This pattern is similar to Cluster Inter-Connection with OVN-IC to connect two Kubernetes cluster networks, except that the two ends of the cluster are replaced with OpenStack and Kubernetes。

Prerequisites

  1. The subnet CIDRs within OpenStack and Kubernetes cannot overlap with each other in auto-route mode.
  2. A set of machines needs to exist that can be accessed by each cluster over the network and used to deploy controllers that interconnect across clusters.
  3. Each cluster needs to have a set of machines that can access each other across clusters via IP as the gateway nodes.
  4. This solution only connects to the Kubernetes default subnet with selected VPC in OpenStack.

Deploy OVN-IC DB

Start the OVN-IC DB with the following command:

docker run --name=ovn-ic-db -d --network=host -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn kubeovn/kube-ovn:v1.12.4 bash start-ic-db.sh
+    

Integration with OpenStack

In some cases, users need to run virtual machines with OpenStack and containers with Kubernetes, and need the network to interoperate between containers and virtual machines and be under a unified control plane. If the OpenStack Neutron side also uses OVN as the underlying network, then Kube-OVN can use either cluster interconnection or shared underlying OVN to connect the OpenStack and Kubernetes networks.

Cluster Interconnection

This pattern is similar to Cluster Inter-Connection with OVN-IC to connect two Kubernetes cluster networks, except that the two ends of the cluster are replaced with OpenStack and Kubernetes。

Prerequisites

  1. The subnet CIDRs within OpenStack and Kubernetes cannot overlap with each other in auto-route mode.
  2. A set of machines needs to exist that can be accessed by each cluster over the network and used to deploy controllers that interconnect across clusters.
  3. Each cluster needs to have a set of machines that can access each other across clusters via IP as the gateway nodes.
  4. This solution only connects to the Kubernetes default subnet with selected VPC in OpenStack.

Deploy OVN-IC DB

Start the OVN-IC DB with the following command:

docker run --name=ovn-ic-db -d --network=host -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn kubeovn/kube-ovn:v1.12.4 bash start-ic-db.sh
 

Kubernetes Side Operations

Create ovn-ic-config ConfigMap in kube-system Namespace :

apiVersion: v1
 kind: ConfigMap
 metadata:
@@ -124,7 +124,7 @@
       imagePullPolicy: IfNotPresent
       name: ubuntu
   restartPolicy: Always
-

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/with-ovn-ic/index.html b/v1.12.x/en/advance/with-ovn-ic/index.html index 7b7aeb8f8..6014bd091 100644 --- a/v1.12.x/en/advance/with-ovn-ic/index.html +++ b/v1.12.x/en/advance/with-ovn-ic/index.html @@ -1,4 +1,4 @@ - Cluster Inter-Connection with OVN-IC - Kube-OVN Document

Cluster Inter-Connection with OVN-IC

Kube-OVN supports interconnecting two Kubernetes cluster Pod networks via OVN-IC, and the Pods in the two clusters can communicate directly via Pod IPs . Kube-OVN uses tunnels to encapsulate cross-cluster traffic, allowing container networks to interconnect between two clusters as long as there is a set of IP reachable machines.

This mode of multi-cluster interconnection is for Overlay network. For Underlay network, it needs the underlying infrastructure to do the inter-connection work.

Prerequisites

  1. The subnet CIDRs within OpenStack and Kubernetes cannot overlap with each other in auto-interconnect mode. If there is overlap, you need to refer to the subsequent manual interconnection process, which can only connect non-overlapping Subnets.
  2. A set of machines needs to exist that can be accessed by each cluster over the network and used to deploy controllers that interconnect across clusters.
  3. Each cluster needs to have a set of machines that can access each other across clusters via IP as the gateway nodes.
  4. This solution only connects to the Kubernetes default VPCs.

Deploy a single-node OVN-IC DB

Deploy the OVN-IC DB on a machine accessible by kube-ovn-controller, This DB will hold the network configuration information synchronized up from each cluster.

An environment deploying docker can start the OVN-IC DB with the following command.

docker run --name=ovn-ic-db -d --network=host --privileged -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn kubeovn/kube-ovn:v1.12.4 bash start-ic-db.sh
+    

Cluster Inter-Connection with OVN-IC

Kube-OVN supports interconnecting two Kubernetes cluster Pod networks via OVN-IC, and the Pods in the two clusters can communicate directly via Pod IPs . Kube-OVN uses tunnels to encapsulate cross-cluster traffic, allowing container networks to interconnect between two clusters as long as there is a set of IP reachable machines.

This mode of multi-cluster interconnection is for Overlay network. For Underlay network, it needs the underlying infrastructure to do the inter-connection work.

Prerequisites

  1. The subnet CIDRs within OpenStack and Kubernetes cannot overlap with each other in auto-interconnect mode. If there is overlap, you need to refer to the subsequent manual interconnection process, which can only connect non-overlapping Subnets.
  2. A set of machines needs to exist that can be accessed by each cluster over the network and used to deploy controllers that interconnect across clusters.
  3. Each cluster needs to have a set of machines that can access each other across clusters via IP as the gateway nodes.
  4. This solution only connects to the Kubernetes default VPCs.

Deploy a single-node OVN-IC DB

Deploy the OVN-IC DB on a machine accessible by kube-ovn-controller, This DB will hold the network configuration information synchronized up from each cluster.

An environment deploying docker can start the OVN-IC DB with the following command.

docker run --name=ovn-ic-db -d --network=host --privileged -v /etc/ovn/:/etc/ovn -v /var/run/ovn:/var/run/ovn -v /var/log/ovn:/var/log/ovn kubeovn/kube-ovn:v1.12.4 bash start-ic-db.sh
 

For deploying a containerd environment instead of docker you can use the following command:

ctr -n k8s.io run -d --net-host --privileged --mount="type=bind,src=/etc/ovn/,dst=/etc/ovn,options=rbind:rw" --mount="type=bind,src=/var/run/ovn,dst=/var/run/ovn,options=rbind:rw" --mount="type=bind,src=/var/log/ovn,dst=/var/log/ovn,options=rbind:rw" docker.io/kubeovn/kube-ovn:v1.12.4 ovn-ic-db bash start-ic-db.sh
 

Automatic Routing Mode

In auto-routing mode, each cluster synchronizes the CIDR information of the Subnet under its own default VPC to OVN-IC, so make sure there is no overlap between the Subnet CIDRs of the two clusters.

Create ovn-ic-config ConfigMap in kube-system Namespace:

apiVersion: v1
 kind: ConfigMap
@@ -112,7 +112,7 @@
 docker rm ovn-ic-db
 

If the controller is containerd deploy the command:

ctr -n k8s.io task kill ovn-ic-db
 ctr -n k8s.io containers rm ovn-ic-db
-

微信群 Slack Twitter Support


最后更新: October 9, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/advance/with-submariner/index.html b/v1.12.x/en/advance/with-submariner/index.html index f5eeae5e8..e8ff53128 100644 --- a/v1.12.x/en/advance/with-submariner/index.html +++ b/v1.12.x/en/advance/with-submariner/index.html @@ -1,4 +1,4 @@ - Cluster Inter-Connection with Submariner - Kube-OVN Document

Cluster Inter-Connection with Submariner

Submariner is an open source networking component that connects multiple Kubernetes cluster Pod and Service networks which can help Kube-OVN interconnect multiple clusters.

Compared to OVN-IC, Submariner can connect Kube-OVN and non-Kube-OVN cluster networks, and Submariner can provide cross-cluster capability for services. However, Submariner currently only enables the default subnets to be connected, and cannot selectively connect multiple subnets.

Prerequisites

  • The Service CIDRs of the two clusters and the CIDR of the default Subnet cannot overlap.

Install Submariner

Download the subctl binary and deploy it to the appropriate path:

curl -Ls https://get.submariner.io | bash
+    

Cluster Inter-Connection with Submariner

Submariner is an open source networking component that connects multiple Kubernetes cluster Pod and Service networks which can help Kube-OVN interconnect multiple clusters.

Compared to OVN-IC, Submariner can connect Kube-OVN and non-Kube-OVN cluster networks, and Submariner can provide cross-cluster capability for services. However, Submariner currently only enables the default subnets to be connected, and cannot selectively connect multiple subnets.

Prerequisites

  • The Service CIDRs of the two clusters and the CIDR of the default Subnet cannot overlap.

Install Submariner

Download the subctl binary and deploy it to the appropriate path:

curl -Ls https://get.submariner.io | bash
 export PATH=$PATH:~/.local/bin
 echo export PATH=\$PATH:~/.local/bin >> ~/.profile
 

Change kubeconfig context to the cluster that need to deploy submariner-broker:

subctl deploy-broker
@@ -16,7 +16,7 @@
 kubectl label nodes cluster1 submariner.io/gateway=true
 

Next, you can start Pods in each of the two clusters and try to access each other using IPs.

Network communication problems can be diagnosed by using the subctl command:

subctl show all
 subctl diagnose all
-

For more Submariner operations please read Submariner Usage.

微信群 Slack Twitter Support


最后更新: March 23, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/contact/index.html b/v1.12.x/en/contact/index.html index f1e929efd..7eac366a8 100644 --- a/v1.12.x/en/contact/index.html +++ b/v1.12.x/en/contact/index.html @@ -1,4 +1,4 @@ - CONTACT US - Kube-OVN Document

Contact US

微信群 Slack Twitter Support


最后更新: June 30, 2022
创建日期: June 30, 2022

评论

Contact US

微信群 Slack Twitter Support


Last update: June 30, 2022
Created: June 30, 2022

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/custom-routes/index.html b/v1.12.x/en/guide/custom-routes/index.html index 7522b38d1..6310fa271 100644 --- a/v1.12.x/en/guide/custom-routes/index.html +++ b/v1.12.x/en/guide/custom-routes/index.html @@ -1,4 +1,4 @@ - Custom Routes - Kube-OVN Document

Custom Routes

Custom routes can be configured via Pod's annotations. Here is an example:

apiVersion: v1
+    

Custom Routes

Custom routes can be configured via Pod's annotations. Here is an example:

apiVersion: v1
 kind: Pod
 metadata:
   name: custom-routes
@@ -49,7 +49,7 @@
       containers:
       - name: nginx
         image: docker.io/library/nginx:alpine
-

微信群 Slack Twitter Support


最后更新: September 26, 2023
创建日期: February 16, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/dual-stack/index.html b/v1.12.x/en/guide/dual-stack/index.html index 78cc83e24..c6d904655 100644 --- a/v1.12.x/en/guide/dual-stack/index.html +++ b/v1.12.x/en/guide/dual-stack/index.html @@ -1,4 +1,4 @@ - DualStack - Kube-OVN Document

DualStack

Different subnets in Kube-OVN can support different IP protocols. IPv4, IPv6 and dual-stack types of subnets can exist within one cluster. However, it is recommended to use a uniform protocol type within a cluster to simplify usage and maintenance.

In order to support dual-stack, the host network needs to meet the dual-stack requirements, and the Kubernetes-related parameters need to be adjusted, please refer to official guide to dual-stack.

Create dual-stack Subnet

When configuring a dual stack Subnet, you only need to set the corresponding subnet CIDR format as cidr=<IPv4 CIDR>,<IPv6 CIDR>.

The CIDR order requires IPv4 to come first and IPv6 to come second, as follows.

apiVersion: kubeovn.io/v1
+    

DualStack

Different subnets in Kube-OVN can support different IP protocols. IPv4, IPv6 and dual-stack types of subnets can exist within one cluster. However, it is recommended to use a uniform protocol type within a cluster to simplify usage and maintenance.

In order to support dual-stack, the host network needs to meet the dual-stack requirements, and the Kubernetes-related parameters need to be adjusted, please refer to official guide to dual-stack.

Create dual-stack Subnet

When configuring a dual stack Subnet, you only need to set the corresponding subnet CIDR format as cidr=<IPv4 CIDR>,<IPv6 CIDR>.

The CIDR order requires IPv4 to come first and IPv6 to come second, as follows.

apiVersion: kubeovn.io/v1
 kind: Subnet
 metadata: 
   name: ovn-test
@@ -35,7 +35,7 @@
   podIPs:
   - ip: 10.16.0.9
   - ip: fd00:10:16::9
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/eip-snat/index.html b/v1.12.x/en/guide/eip-snat/index.html index d61716933..742932f3c 100644 --- a/v1.12.x/en/guide/eip-snat/index.html +++ b/v1.12.x/en/guide/eip-snat/index.html @@ -1,4 +1,4 @@ - EIP and SNAT - Kube-OVN Document

EIP and SNAT

This configuration is for the network under default VPC, for custom VPC please refer to VPC Gateway

Kube-OVN supports SNAT and EIP functionality at the Pod level using the L3 Gateway feature in OVN. By using SNAT, a group of Pods can share an IP address for external access. With the EIP feature, a Pod can be directly associated with an external IP. External services can access the Pod directly through the EIP, and the Pod will also access external services through this EIP.

Preparation

  • In order to use the OVN's L3 Gateway capability, a separate NIC must be bridged into the OVS bridge for overlay and underlay network communication. The host must have other NICs for management.
  • Since packets passing through NAT will go directly to the Underlay network, it is important to confirm that such packets can pass safely on the current network architecture.
  • Currently, there is no conflict detection for EIP and SNAT addresses, and an administrator needs to manually assign them to avoid address conflicts.

Create Config

Create ConfigMap ovn-external-gw-config in kube-system Namespace:

apiVersion: v1
+    

EIP and SNAT

This configuration is for the network under default VPC, for custom VPC please refer to VPC Gateway

Kube-OVN supports SNAT and EIP functionality at the Pod level using the L3 Gateway feature in OVN. By using SNAT, a group of Pods can share an IP address for external access. With the EIP feature, a Pod can be directly associated with an external IP. External services can access the Pod directly through the EIP, and the Pod will also access external services through this EIP.

Preparation

  • In order to use the OVN's L3 Gateway capability, a separate NIC must be bridged into the OVS bridge for overlay and underlay network communication. The host must have other NICs for management.
  • Since packets passing through NAT will go directly to the Underlay network, it is important to confirm that such packets can pass safely on the current network architecture.
  • Currently, there is no conflict detection for EIP and SNAT addresses, and an administrator needs to manually assign them to avoid address conflicts.

Create Config

Create ConfigMap ovn-external-gw-config in kube-system Namespace:

apiVersion: v1
 kind: ConfigMap
 metadata:
   name: ovn-external-gw-config
@@ -66,7 +66,7 @@
     image: docker.io/library/nginx:alpine
 

The EIP or SNAT rules configured by the Pod can be dynamically adjusted via kubectl or other tools, remember to remove the ovn.kubernetes.io/routed annotation to trigger the routing change.

kubectl annotate pod pod-gw ovn.kubernetes.io/eip=172.56.0.221 --overwrite
 kubectl annotate pod pod-gw ovn.kubernetes.io/routed-
-

When the EIP or SNAT takes into effect, the ovn.kubernetes.io/routed annotation will be added back.

Advanced Configuration

Some args of kube-ovn-controller allow for advanced configuration of SNAT and EIP:

  • --external-gateway-config-ns: The Namespace of Configmap ovn-external-gw-config, default is kube-system
  • --external-gateway-net: The name of the bridge to which the physical NIC is bridged, default is external.
  • --external-gateway-vlanid: Physical network Vlan Tag number, default is 0, i.e. no Vlan is used.

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/ippool/index.html b/v1.12.x/en/guide/ippool/index.html index d59404bf0..5eb5d7e8a 100644 --- a/v1.12.x/en/guide/ippool/index.html +++ b/v1.12.x/en/guide/ippool/index.html @@ -1,4 +1,4 @@ - Configure IPPool - Kube-OVN Document

Configure IPPool

IPPool is a more granular IPAM management unit than Subnet. You can subdivide the subnet segment into multiple units through IPPool, and each unit is bound to one or more namespaces.

Instructions

Below is an example:

apiVersion: kubeovn.io/v1
+    

Configure IPPool

IPPool is a more granular IPAM management unit than Subnet. You can subdivide the subnet segment into multiple units through IPPool, and each unit is bound to one or more namespaces.

Instructions

Below is an example:

apiVersion: kubeovn.io/v1
 kind: IPPool
 metadata:
   name: pool-1
@@ -18,7 +18,7 @@
   - "10.16.0.220..10.16.0.230"
   namespaces:
   - ns-1
-

Field description:

Field Usage Comment
subnet Specify the subnet to which it belongs Required
ips Specify IP ranges Support three formats: , and ... Support IPv6.
namespaces Specifies the bound namespaces Optional

Precautions

  1. To ensure compatibility with Workload Universal IP Pool Fixed Address, the name of the IP pool cannot be an IP address;
  2. The .spec.ips of the IP pool can specify an IP address beyond the scope of the subnet, but the actual effective IP address is the intersection of .spec.ips and the CIDR of the subnet;
  3. Different IP pools of the same subnet cannot contain the same (effective) IP address;
  4. The .spec.ips of the IP pool can be modified dynamically;
  5. The IP pool will inherit the reserved IP of the subnet. When randomly assigning an IP address from the IP pool, the reserved IP included in the IP pool will be skipped;
  6. When randomly assigning an IP address from a subnet, it will only be assigned from a range other than all IP pools in the subnet.

微信群 Slack Twitter Support


最后更新: August 18, 2023
创建日期: July 10, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/loadbalancer-service/index.html b/v1.12.x/en/guide/loadbalancer-service/index.html index f9abc0e5e..360740951 100644 --- a/v1.12.x/en/guide/loadbalancer-service/index.html +++ b/v1.12.x/en/guide/loadbalancer-service/index.html @@ -1,4 +1,4 @@ - LoadBalancer Type Service - Kube-OVN Document

LoadBalancer Type Service

Kube-OVN supports the implementation of VPC and VPC gateway. For specific configurations, please refer to the VPC configuration.

Due to the complexity of using VPC gateways, the implementation based on VPC gateways has been simplified. It supports creating LoadBalancer type Services in the default VPC, allowing access to Services in the default VPC through LoadBalancerIP.

First, make sure the following conditions are met in the environment:

  1. Install multus-cni and macvlan cni
  2. LoadBalancer Service support relies on simplified implementation of VPC gateway code, still utilizing the vpc-nat-gw image and depending on macvlan for multi-interface functionality support.
  3. Currently, it only supports configuration in the default VPC. Support for LoadBalancers in custom VPCs can be referred to in the VPC configuration.

Steps to Configure Default VPC LoadBalancer Service

Enable Feature Flag

Modify the deployment kube-ovn-controller under the kube-system namespace and add the parameter --enable-lb-svc=true to the args section to enable the feature (by default it's set to false).

containers:
+    

LoadBalancer Type Service

Kube-OVN supports the implementation of VPC and VPC gateway. For specific configurations, please refer to the VPC configuration.

Due to the complexity of using VPC gateways, the implementation based on VPC gateways has been simplified. It supports creating LoadBalancer type Services in the default VPC, allowing access to Services in the default VPC through LoadBalancerIP.

First, make sure the following conditions are met in the environment:

  1. Install multus-cni and macvlan cni
  2. LoadBalancer Service support relies on simplified implementation of VPC gateway code, still utilizing the vpc-nat-gw image and depending on macvlan for multi-interface functionality support.
  3. Currently, it only supports configuration in the default VPC. Support for LoadBalancers in custom VPCs can be referred to in the VPC configuration.

Steps to Configure Default VPC LoadBalancer Service

Enable Feature Flag

Modify the deployment kube-ovn-controller under the kube-system namespace and add the parameter --enable-lb-svc=true to the args section to enable the feature (by default it's set to false).

containers:
 - args:
   - /kube-ovn/start-controller.sh
   - --default-cidr=10.16.0.0/16
@@ -249,7 +249,7 @@
 Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
  pkts bytes target     prot opt in     out     source               destination
     0     0 MASQUERADE  all  --  *      *       0.0.0.0/0            10.109.201.193
-

微信群 Slack Twitter Support


最后更新: August 23, 2023
创建日期: August 18, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/mirror/index.html b/v1.12.x/en/guide/mirror/index.html index 828a76b03..4bd743988 100644 --- a/v1.12.x/en/guide/mirror/index.html +++ b/v1.12.x/en/guide/mirror/index.html @@ -1,4 +1,4 @@ - Traffic Mirror - Kube-OVN Document

Traffic Mirror

The traffic mirroring feature allows packets to and from the container network to be copied to a specific NIC of the host. Administrators or developers can listen to this NIC to get the complete container network traffic for further analysis, monitoring, security auditing and other operations. It can also be integrated with traditional NPM for more fine-grained traffic visibility.

The traffic mirroring feature introduces some performance loss, with an additional CPU consumption of 5% to 10% depending on CPU performance and traffic characteristics.

mirror architecture

Global Traffic Mirroring Settings

The traffic mirroring is disabled by default, please modify the args of kube-ovn-cni DaemonSet to enable it:

  • --enable-mirror=true: Whether to enable traffic mirroring.
  • --mirror-iface=mirror0: The name of the NIC that the traffic mirror is copied to. This NIC can be a physical NIC that already exists on the host machine. At this point the NIC will be bridged into the br-int bridge and the mirrored traffic will go directly to the underlying switch. If the NIC name does not exist, Kube-OVN will automatically create a virtual NIC with the same name, through which the administrator or developer can access all traffic on the current node on the host. The default is mirror0.

Next, you can listen to the traffic on mirror0 with tcpdump or other traffic analysis tools.

tcpdump -ni mirror0
+    

Traffic Mirror

The traffic mirroring feature allows packets to and from the container network to be copied to a specific NIC of the host. Administrators or developers can listen to this NIC to get the complete container network traffic for further analysis, monitoring, security auditing and other operations. It can also be integrated with traditional NPM for more fine-grained traffic visibility.

The traffic mirroring feature introduces some performance loss, with an additional CPU consumption of 5% to 10% depending on CPU performance and traffic characteristics.

mirror architecture

Global Traffic Mirroring Settings

The traffic mirroring is disabled by default, please modify the args of kube-ovn-cni DaemonSet to enable it:

  • --enable-mirror=true: Whether to enable traffic mirroring.
  • --mirror-iface=mirror0: The name of the NIC that the traffic mirror is copied to. This NIC can be a physical NIC that already exists on the host machine. At this point the NIC will be bridged into the br-int bridge and the mirrored traffic will go directly to the underlying switch. If the NIC name does not exist, Kube-OVN will automatically create a virtual NIC with the same name, through which the administrator or developer can access all traffic on the current node on the host. The default is mirror0.

Next, you can listen to the traffic on mirror0 with tcpdump or other traffic analysis tools.

tcpdump -ni mirror0
 

Pod Level Mirroring Settings

If you only need to mirror some Pod traffic, you need to disable the global traffic mirroring and then add the ovn.kubernetes.io/mirror annotation on a specific Pod to enable Pod-level traffic mirroring.

apiVersion: v1
 kind: Pod
 metadata:
@@ -18,7 +18,7 @@
   containers:
   - name: mirror-pod
     image: docker.io/library/nginx:alpine
-

Performance Test

Test on the same environment with the traffic mirroring switch on and off, respectively

1. Pod to Pod in the same Nodes

Enable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 12.7 us 289 Mbits/sec 12.6 us (1.8%) 77.9 Mbits/sec
128 15.5 us 517 Mbits/sec 12.7 us (0%) 155 Mbits/sec
512 12.2 us 1.64 Gbits/sec 12.4 us (0%) 624 Mbits/sec
1k 13 us 2.96 Gbits/sec 11.4 us (0.53%) 1.22 Gbits/sec
4k 18 us 7.67 Gbits/sec 25.7 us (0.41%) 1.50 Gbits/sec

Disable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 11.9 us 324 Mbits/sec 12.2 us (0.22%) 102 Mbits/sec
128 10.5 us 582 Mbits/sec 9.5 us (0.21%) 198 Mbits/sec
512 11.6 us 1.84 Gbits/sec 9.32 us (0.091%) 827 Mbits/sec
1k 10.5 us 3.44 Gbits/sec 10 us (1.2%) 1.52 Gbits/sec
4k 16.7 us 8.52 Gbits/sec 18.2 us (1.3%) 2.42 Gbits/sec

2. Pod to Pod in the different Nodes

Enable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 258 us 143 Mbits/sec 237 us (61%) 28.5 Mbits/sec
128 240 us 252 Mbits/sec 231 us (64%) 54.9 Mbits/sec
512 236 us 763 Mbits/sec 256 us (68%) 194 Mbits/sec
1k 242 us 969 Mbits/sec 225 us (62%) 449 Mbits/sec
4k 352 us 1.12 Gbits/sec 382 us (0.71%) 21.4 Mbits/sec

Disable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 278 us 140 Mbits/sec 227 us (24%) 59.6 Mbits/sec
128 249 us 265 Mbits/sec 265 us (23%) 114 Mbits/sec
512 233 us 914 Mbits/sec 235 us (21%) 468 Mbits/sec
1k 238 us 1.14 Gbits/sec 240 us (15%) 891 Mbits/sec
4k 370 us 1.25 Gbits/sec 361 us (0.43%) 7.54 Mbits/sec

3. Node to Node

Enable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 205 us 162 Mbits/sec 183 us (11%) 74.2 Mbits/sec
128 222 us 280 Mbits/sec 206 us (6.3%) 155 Mbits/sec
512 220 us 1.04 Gbits/sec 177 us (20%) 503 Mbits/sec
1k 213 us 2.06 Gbits/sec 201 us (8.6%) 1.14 Gbits/sec
4k 280 us 5.01 Gbits/sec 315 us (37%) 1.20 Gbits/sec

Disable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 204 us 157 Mbits/sec 204 us (8.8%) 81.9 Mbits/sec
128 213 us 262 Mbits/sec 225 us (19%) 136 Mbits/sec
512 220 us 1.02 Gbits/sec 227 us (21%) 486 Mbits/sec
1k 217 us 1.79 Gbits/sec 218 us (29%) 845 Mbits/sec
4k 275 us 5.27 Gbits/sec 336 us (34%) 1.21 Gbits/sec

4. Pod to the Node where the Pod is located

Enable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 12.2 us 295 Mbits/sec 12.7 us (0.27%) 74.1 Mbits/sec
128 14.1 us 549 Mbits/sec 10.6 us (0.41%) 153 Mbits/sec
512 13.5 us 1.83 Gbits/sec 12.7 us (0.23%) 586 Mbits/sec
1k 12 us 2.69 Gbits/sec 13 us (1%) 1.16 Gbits/sec
4k 18.9 us 4.51 Gbits/sec 21.8 us (0.42%) 1.81 Gbits/sec

Disable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 10.4 us 335 Mbits/sec 12.2 us (0.75%) 95.4 Mbits/sec
128 12.1 us 561 Mbits/sec 11.3 us (0.25%) 194 Mbits/sec
512 11.6 us 1.87 Gbits/sec 10.7 us (0.66%) 745 Mbits/sec
1k 12.7 us 3.12 Gbits/sec 10.9 us (1.2%) 1.46 Gbits/sec
4k 16.5 us 8.23 Gbits/sec 17.9 us (1.5%) 2.51 Gbits/sec

5. Pod to the Node where the Pod is not located

Enable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 234 us 153 Mbits/sec 232 us (63%) 29.4 Mbits/sec
128 237 us 261 Mbits/sec 238 us (49%) 76.1 Mbits/sec
512 231 us 701 Mbits/sec 238 us (57%) 279 Mbits/sec
1k 256 us 1.05 Gbits/sec 228 us (56%) 524 Mbits/sec
4k 330 us 1.08 Gbits/sec 359 us (1.5%) 35.7 Mbits/sec

Disable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 283 us 141 Mbits/sec 230 us (26%) 55.8 Mbits/sec
128 234 us 255 Mbits/sec 234 us (25%) 113 Mbits/sec
512 246 us 760 Mbits/sec 234 us (22%) 458 Mbits/sec
1k 268 us 1.23 Gbits/sec 242 us (20%) 879 Mbits/sec
4k 326 us 1.20 Gbits/sec 369 us (0.5%) 7.87 Mbits/sec

6. Pod to the cluster ip service

Enable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 237 us 133 Mbits/sec 213 us (65%) 25.5 Mbits/sec
128 232 us 271 Mbits/sec 222 us (62%) 54.8 Mbits/sec
512 266 us 800 Mbits/sec 234 us (60%) 232 Mbits/sec
1k 248 us 986 Mbits/sec 239 us (50%) 511 Mbits/sec
4k 314 us 1.03 Gbits/sec 367 us (0.6%) 13.2 Mbits/sec
TCP-Conn-Number QPS Avg-Resp-Time Stdev-Resp-Time Max-Resp-Time
10 14305.17 0.87ms 1.48ms 24.46ms
100 29082.07 3.87ms 4.35ms 102.85ms

Disable traffic mirroring

Size TCP Latency TCP Bandwidth UDP Latency UDP Lost Rate UDP Bandwidth
64 241 us 145 Mbits/sec 225 us (19%) 60.2 Mbits/sec
128 245 us 261 Mbits/sec 212 us (15%) 123 Mbits/sec
512 252 us 821 Mbits/sec 219 us (14%) 499 Mbits/sec
1k 253 us 1.08 Gbits/sec 242 us (16%) 852 Mbits/sec
4k 320 us 1.32 Gbits/sec 360 us (0.47%) 6.70 Mbits/sec
TCP-Conn-Number QPS Avg-Resp-Time Stdev-Resp-Time Max-Resp-Time
10 13634.07 0.96ms 1.72ms 30.07ms
100 30215.23 3.59ms 3.20ms 77.56ms

7. Host to the Node port service where the Pod is not located on the target Node

Enable traffic mirroring

TCP-Conn-Number QPS Avg-Resp-Time Stdev-Resp-Time Max-Resp-Time
10 14802.73 0.88ms 1.66ms 31.49ms
100 29809.58 3.78ms 4.12ms 105.34ms

Disable traffic mirroring

TCP-Conn-Number QPS Avg-Resp-Time Stdev-Resp-Time Max-Resp-Time
10 14273.33 0.90ms 1.60ms 37.16ms
100 30757.81 3.62ms 3.41ms 59.78ms

8. Host to the Node port service where the Pod is located on the target Node

Enable traffic mirroring

TCP-Conn-Number QPS Avg-Resp-Time Stdev-Resp-Time Max-Resp-Time
10 15402.39 802.50us 1.42ms 30.91ms
100 29424.66 4.05ms 4.31ms 90.60ms

Disable traffic mirroring

TCP-Conn-Number QPS Avg-Resp-Time Stdev-Resp-Time Max-Resp-Time
10 14649.21 0.91ms 1.72ms 43.92ms
100 32143.61 3.66ms 3.76ms 67.02ms

微信群 Slack Twitter Support


最后更新: November 8, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/networkpolicy-log/index.html b/v1.12.x/en/guide/networkpolicy-log/index.html index 9f9b0f7d4..7a26cb4e0 100644 --- a/v1.12.x/en/guide/networkpolicy-log/index.html +++ b/v1.12.x/en/guide/networkpolicy-log/index.html @@ -1,4 +1,4 @@ - NetworkPolicy Logging - Kube-OVN Document

NetworkPolicy Logging

NetworkPolicy is a interface provided by Kubernetes and implemented by Kube-OVN through OVN's ACLs. With NetworkPolicy, if the networks are down, it is difficult to determine whether it is caused by a network failure or a NetworkPolicy rule problem. Kube-OVN provides NetworkPolicy logging to help administrators quickly locate whether a NetworkPolicy drop rule has been hit, and to record the illegal accesses.

Once NetworkPolicy logging is turned on, logs need to be printed for every packet that hits a Drop rule, which introduces additional performance overhead. Under a malicious attack, a large number of logs in a short period of time may exhaust the CPU. We recommend turning off logging by default in production environments and dynamically turning it on when you need to troubleshoot problems.

Enable NetworkPolicy Logging

Add the annotation ovn.kubernetes.io/enable_log to the NetworkPolicy where logging needs to be enabled, as follows:

apiVersion: networking.k8s.io/v1
+    

NetworkPolicy Logging

NetworkPolicy is a interface provided by Kubernetes and implemented by Kube-OVN through OVN's ACLs. With NetworkPolicy, if the networks are down, it is difficult to determine whether it is caused by a network failure or a NetworkPolicy rule problem. Kube-OVN provides NetworkPolicy logging to help administrators quickly locate whether a NetworkPolicy drop rule has been hit, and to record the illegal accesses.

Once NetworkPolicy logging is turned on, logs need to be printed for every packet that hits a Drop rule, which introduces additional performance overhead. Under a malicious attack, a large number of logs in a short period of time may exhaust the CPU. We recommend turning off logging by default in production environments and dynamically turning it on when you need to troubleshoot problems.

Enable NetworkPolicy Logging

Add the annotation ovn.kubernetes.io/enable_log to the NetworkPolicy where logging needs to be enabled, as follows:

apiVersion: networking.k8s.io/v1
 kind: NetworkPolicy
 metadata:
   name: default-deny-ingress
@@ -28,7 +28,7 @@
 2022-07-20T05:55:22.097Z|00401|acl_log(ovn_pinctrl0)|INFO|name="<unnamed>", verdict=drop, severity=warning, direction=to-lport: icmp,vlan_tci=0x0000,dl_src=00:00:00:6c:42:91,dl_dst=00:00:00:a5:d7:63,nw_src=10.16.0.9,nw_dst=10.16.0.10,nw_tos=0,nw_ecn=0,nw_ttl=64,icmp_type=8,icmp_code=0
 2022-07-20T05:55:22.098Z|00402|acl_log(ovn_pinctrl0)|INFO|name="<unnamed>", verdict=drop, severity=warning, direction=to-lport: icmp,vlan_tci=0x0000,dl_src=00:00:00:6c:42:91,dl_dst=00:00:00:a5:d7:63,nw_src=10.16.0.9,nw_dst=10.16.0.10,nw_tos=0,nw_ecn=0,nw_ttl=64,icmp_type=8,icmp_code=0
 

Disable NetworkPolicy Logging

Set annotation ovn.kubernetes.io/enable_log in the corresponding NetworkPolicy to false to disable NetworkPolicy logging:

kubectl annotate networkpolicy -n kube-system default-deny-ingress ovn.kubernetes.io/enable_log=false --overwrite
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: July 20, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/prometheus-grafana/index.html b/v1.12.x/en/guide/prometheus-grafana/index.html index d783b61b0..4c608e63a 100644 --- a/v1.12.x/en/guide/prometheus-grafana/index.html +++ b/v1.12.x/en/guide/prometheus-grafana/index.html @@ -1,4 +1,4 @@ - Monitor and Dashboard - Kube-OVN Document

Monitor and Dashboard

Kube-OVN can export network control plane information and network data plane quality information metrics to the external in formats supported by Prometheus.

We use the CRD provided by kube-prometheus to define the corresponding Prometheus monitoring rules. For all monitoring metrics supported by Kube-OVN, please refer to Kube-OVN Monitoring Metrics.

If you are using native Prometheus, please refer to Configuring Native Prometheus for configuration.

Install Prometheus Monitor

Kube-OVN uses Prometheus Monitor CRD to manage the monitoring output.

# network quality related monitoring metrics
+    

Monitor and Dashboard

Kube-OVN can export network control plane information and network data plane quality information metrics to the external in formats supported by Prometheus.

We use the CRD provided by kube-prometheus to define the corresponding Prometheus monitoring rules. For all monitoring metrics supported by Kube-OVN, please refer to Kube-OVN Monitoring Metrics.

If you are using native Prometheus, please refer to Configuring Native Prometheus for configuration.

Install Prometheus Monitor

Kube-OVN uses Prometheus Monitor CRD to manage the monitoring output.

# network quality related monitoring metrics
 kubectl apply -f https://raw.githubusercontent.com/kubeovn/kube-ovn/master/dist/monitoring/pinger-monitor.yaml
 # kube-ovn-controller metrics
 kubectl apply -f https://raw.githubusercontent.com/kubeovn/kube-ovn/master/dist/monitoring/controller-monitor.yaml
@@ -24,7 +24,7 @@
 wget https://raw.githubusercontent.com/kubeovn/kube-ovn/master/dist/monitoring/ovn-grafana.json
 # ovs dashboard
 wget https://raw.githubusercontent.com/kubeovn/kube-ovn/master/dist/monitoring/ovs-grafana.json
-

Import these templates into Grafana and set the data source to the corresponding Prometheus to see the following Dashboards.

kube-ovn-controller dashboard:

controller

kube-ovn-pinger dashboard:

pinger

kube-ovn-cni dashboard:

cni

微信群 Slack Twitter Support


最后更新: September 6, 2022
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/prometheus/index.html b/v1.12.x/en/guide/prometheus/index.html index c8bc48889..25e04d5fc 100644 --- a/v1.12.x/en/guide/prometheus/index.html +++ b/v1.12.x/en/guide/prometheus/index.html @@ -1,4 +1,4 @@ - Config Native Prometheus - Kube-OVN Document

Config Native Prometheus

Kube-OVN provides rich monitoring data for OVN/OVS health status checks and connectivity checks of container and host networks, and Kube-OVN is configured with ServiceMonitor for Prometheus to dynamically obtain monitoring metrics.

In some cases, where only Prometheus Server is installed and no other components are installed, you can dynamically obtain monitoring data for the cluster environment by modifying the configuration of Prometheus.

Config Prometheus

The following configuration documentation, referenced from Prometheus Service Discovery.

Permission Configuration

Prometheus is deployed in the cluster and needs to access the k8s apiserver to query the monitoring data of the containers.

Refer to the following yaml to configure the permissions required by Prometheus:

apiVersion: rbac.authorization.k8s.io/v1
+    

Config Native Prometheus

Kube-OVN provides rich monitoring data for OVN/OVS health status checks and connectivity checks of container and host networks, and Kube-OVN is configured with ServiceMonitor for Prometheus to dynamically obtain monitoring metrics.

In some cases, where only Prometheus Server is installed and no other components are installed, you can dynamically obtain monitoring data for the cluster environment by modifying the configuration of Prometheus.

Config Prometheus

The following configuration documentation, referenced from Prometheus Service Discovery.

Permission Configuration

Prometheus is deployed in the cluster and needs to access the k8s apiserver to query the monitoring data of the containers.

Refer to the following yaml to configure the permissions required by Prometheus:

apiVersion: rbac.authorization.k8s.io/v1
 kind: ClusterRole
 metadata:
   name: prometheus
@@ -233,7 +233,7 @@
   type: ClusterIP
 status:
   loadBalancer: {}
-

Looking at the Prometheus Status Targets information, you can only see the Services with annotation:

For more information about adding filter parameters to relabel, please check Prometheus-Relabel

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: September 6, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/qos/index.html b/v1.12.x/en/guide/qos/index.html index 919333417..951a3bab9 100644 --- a/v1.12.x/en/guide/qos/index.html +++ b/v1.12.x/en/guide/qos/index.html @@ -1,4 +1,4 @@ - Manage QoS - Kube-OVN Document

Manage QoS

Kube-OVN supports two types of Pod level QoS:

  • Maximum bandwidth limit QoS.
  • linux-netem, QoS for simulating latency and packet loss that can be used for simulation testing.

Currently, only Pod level QoS is supported, and QoS restrictions at the Namespace or Subnet level are not supported.

Maximum Bandwidth Limit QoS

This type of QoS can be dynamically configured via Pod annotation and can be adjusted without restarting running Pod. Bandwidth speed limit unit is Mbit/s.

apiVersion: v1
+    

Manage QoS

Kube-OVN supports two types of Pod level QoS:

  • Maximum bandwidth limit QoS.
  • linux-netem, QoS for simulating latency and packet loss that can be used for simulation testing.

Currently, only Pod level QoS is supported, and QoS restrictions at the Namespace or Subnet level are not supported.

Maximum Bandwidth Limit QoS

This type of QoS can be dynamically configured via Pod annotation and can be adjusted without restarting running Pod. Bandwidth speed limit unit is Mbit/s.

apiVersion: v1
 kind: Pod
 metadata:
   name: qos
@@ -85,7 +85,7 @@
 [  4]   0.00-10.00  sec  34.5 MBytes  29.0 Mbits/sec                  receiver
 
 iperf Done.
-

linux-netem QoS

Pod can use annotation below to config linux-netem type QoS: ovn.kubernetes.io/latencyovn.kubernetes.io/limit and ovn.kubernetes.io/loss

  • ovn.kubernetes.io/latency: Set the Pod traffic delay to an integer value in ms.
  • ovn.kubernetes.io/limit: Set the maximum number of packets that the qdisc queue can hold, and takes an integer value, such as 1000.
  • ovn.kubernetes.io/loss: Set packet loss probability, the value is float type, for example, the value is 20, then it is set 20% packet loss probability.

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/setup-options/index.html b/v1.12.x/en/guide/setup-options/index.html index 73dd91651..eab50a276 100644 --- a/v1.12.x/en/guide/setup-options/index.html +++ b/v1.12.x/en/guide/setup-options/index.html @@ -1,4 +1,4 @@ - Installation and Configuration Options - Kube-OVN Document

Installation and Configuration Options

In One-Click Installation we use the default configuration for installation. Kube-OVN also supports more custom configurations, which can be configured in the installation script, or later by changing the parameters of individual components. This document will describe what these customization options do, and how to configure them.

Built-in Network Settings

Kube-OVN will configure two built-in Subnets during installation:

  1. default Subnet, as the default subnet used by the Pod to assign IPs, with a default CIDR of 10.16.0.0/16 and a gateway of 10.16.0.1.
  2. The join subnet, as a special subnet for network communication between the Node and Pod, has a default CIDR of 100.64.0.0/16 and a gateway of 100.64.0.1.

The configuration of these two subnets can be changed during installation via the installation scripts variables:

POD_CIDR="10.16.0.0/16"
+    

Installation and Configuration Options

In One-Click Installation we use the default configuration for installation. Kube-OVN also supports more custom configurations, which can be configured in the installation script, or later by changing the parameters of individual components. This document will describe what these customization options do, and how to configure them.

Built-in Network Settings

Kube-OVN will configure two built-in Subnets during installation:

  1. default Subnet, as the default subnet used by the Pod to assign IPs, with a default CIDR of 10.16.0.0/16 and a gateway of 10.16.0.1.
  2. The join subnet, as a special subnet for network communication between the Node and Pod, has a default CIDR of 100.64.0.0/16 and a gateway of 100.64.0.1.

The configuration of these two subnets can be changed during installation via the installation scripts variables:

POD_CIDR="10.16.0.0/16"
 POD_GATEWAY="10.16.0.1"
 JOIN_CIDR="100.64.0.0/16"
 EXCLUDE_IPS=""
@@ -53,7 +53,7 @@
 - name: TUNNEL_TYPE
   value: "vxlan"
 

If you need to use the STT tunnel and need to compile additional kernel modules for ovs, please refer to Performance Tunning

Please refer to Tunneling Protocol Selection for the differences between the different protocols in practice.

SSL Settings

The OVN DB API interface supports SSL encryption to secure the connection. To enable it, adjust the following parameters in the installation script:

ENABLE_SSL=true
-

The SSL is disabled by default.

微信群 Slack Twitter Support


最后更新: September 13, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/static-ip-mac/index.html b/v1.12.x/en/guide/static-ip-mac/index.html index 91cb1baf8..894956110 100644 --- a/v1.12.x/en/guide/static-ip-mac/index.html +++ b/v1.12.x/en/guide/static-ip-mac/index.html @@ -1,4 +1,4 @@ - Fixed Addresses - Kube-OVN Document

Fixed Addresses

By default, Kube-OVN randomly assigns IPs and Macs based on the Subnet to which the Pod's Namespace belongs. For workloads that require fixed addresses, Kube-OVN provides multiple methods of fixing addresses depending on the scenario.

  • Single Pod fixed IP/Mac.
  • Workload IP Pool to specify fixed addresses.
  • StatefulSet fixed address.
  • KubeVirt VM fixed address.

Single Pod Fixed IP/Mac

You can specify the IP/Mac required for the Pod by annotation when creating the Pod. The kube-ovn-controller will skip the address random assignment phase and use the specified address directly after conflict detection, as follows:

apiVersion: apps/v1
+    

Fixed Addresses

By default, Kube-OVN randomly assigns IPs and Macs based on the Subnet to which the Pod's Namespace belongs. For workloads that require fixed addresses, Kube-OVN provides multiple methods of fixing addresses depending on the scenario.

  • Single Pod fixed IP/Mac.
  • Workload IP Pool to specify fixed addresses.
  • StatefulSet fixed address.
  • KubeVirt VM fixed address.

Single Pod Fixed IP/Mac

You can specify the IP/Mac required for the Pod by annotation when creating the Pod. The kube-ovn-controller will skip the address random assignment phase and use the specified address directly after conflict detection, as follows:

apiVersion: apps/v1
 kind: Deployment
 metadata:
   name: ippool
@@ -70,7 +70,7 @@
         ports:
         - containerPort: 80
           name: web
-

You can try to delete the Pod under StatefulSet to observe if the Pod IP changes.

KubeVirt VM Fixed Address

For VM instances created by KubeVirt, kube-ovn-controller can assign and manage IP addresses in a similar way to the StatefulSet Pod. This allows VM instances address fixed during start-up, shutdown, upgrade, migration, and other operations throughout their lifecycle, making them more compatible with the actual virtualization user experience.

微信群 Slack Twitter Support


最后更新: September 26, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/subnet/index.html b/v1.12.x/en/guide/subnet/index.html index fe3efd0cf..ac580d434 100644 --- a/v1.12.x/en/guide/subnet/index.html +++ b/v1.12.x/en/guide/subnet/index.html @@ -1,4 +1,4 @@ - Config Subnet - Kube-OVN Document

Config Subnet

Subnet is a core concept and basic unit of use in Kube-OVN, and Kube-OVN organizes IP and network configuration in terms of Subnet. Each Namespace can belong to a specific Subnet, and Pods under the Namespace automatically obtain IPs from the Subnet they belong to and share the network configuration (CIDR, gateway type, access control, NAT control, etc.).

Unlike other CNI implementations where each node is bound to a subnet, in Kube-OVN the Subnet is a global level virtual network configuration, and the addresses of one Subnet can be distributed on any node.

There are some differences in the usage and configuration of Overlay and Underlay Subnets, and this document will describe the common configurations and differentiated features of the different types of Subnets.

Default Subnet

To make it easier for users to get started quickly, Kube-OVN has a built-in default Subnet, all Namespaces that do not explicitly declare subnet affiliation are automatically assigned IPs from the default subnet and the network information. The configuration of this Subnet is specified at installation time, you can refer to Built-in Network Settings for more details. To change the CIDR of the default Subnet after installation please refer to Change Subnet CIDR.

In Overlay mode, the default Subnet uses a distributed gateway and NAT translation for outbound traffic, which behaves much the same as the Flannel's default behavior, allowing users to use most of the network features without additional configuration.

In Underlay mode, the default Subnet uses the physical gateway as the outgoing gateway and enables arping to check network connectivity.

Check the Default Subnet

The default field in the default Subnet spec is set to true, and there is only one default Subnet in a cluster, named ovn-default.

# kubectl get subnet ovn-default -o yaml
+    

Config Subnet

Subnet is a core concept and basic unit of use in Kube-OVN, and Kube-OVN organizes IP and network configuration in terms of Subnet. Each Namespace can belong to a specific Subnet, and Pods under the Namespace automatically obtain IPs from the Subnet they belong to and share the network configuration (CIDR, gateway type, access control, NAT control, etc.).

Unlike other CNI implementations where each node is bound to a subnet, in Kube-OVN the Subnet is a global level virtual network configuration, and the addresses of one Subnet can be distributed on any node.

There are some differences in the usage and configuration of Overlay and Underlay Subnets, and this document will describe the common configurations and differentiated features of the different types of Subnets.

Default Subnet

To make it easier for users to get started quickly, Kube-OVN has a built-in default Subnet, all Namespaces that do not explicitly declare subnet affiliation are automatically assigned IPs from the default subnet and the network information. The configuration of this Subnet is specified at installation time, you can refer to Built-in Network Settings for more details. To change the CIDR of the default Subnet after installation please refer to Change Subnet CIDR.

In Overlay mode, the default Subnet uses a distributed gateway and NAT translation for outbound traffic, which behaves much the same as the Flannel's default behavior, allowing users to use most of the network features without additional configuration.

In Underlay mode, the default Subnet uses the physical gateway as the outgoing gateway and enables arping to check network connectivity.

Check the Default Subnet

The default field in the default Subnet spec is set to true, and there is only one default Subnet in a cluster, named ovn-default.

# kubectl get subnet ovn-default -o yaml
 apiVersion: kubeovn.io/v1
 kind: Subnet
 metadata:
@@ -159,7 +159,7 @@
   name: sample1
 spec:
   mtu: 1300
-

Other Advanced Settings

微信群 Slack Twitter Support


最后更新: December 5, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/vpc-qos/index.html b/v1.12.x/en/guide/vpc-qos/index.html index 038c77ae0..d666c835a 100644 --- a/v1.12.x/en/guide/vpc-qos/index.html +++ b/v1.12.x/en/guide/vpc-qos/index.html @@ -1,4 +1,4 @@ - VPC QoS - Kube-OVN Document

VPC QoS

Kube-OVN supports using QoSPolicy CRD to limit the traffic rate of custom VPC.

EIP QoS

Limit the speed of EIP to 1Mbps and the priority to 1, and shared=false here means that this QoSPolicy can only be used for this EIP and support dynamically modifying QoSPolicy to change QoS rules.

The QoSPolicy configuration is as follows:

apiVersion: kubeovn.io/v1
+    

VPC QoS

Kube-OVN supports using QoSPolicy CRD to limit the traffic rate of custom VPC.

EIP QoS

Limit the speed of EIP to 1Mbps and the priority to 1, and shared=false here means that this QoSPolicy can only be used for this EIP and support dynamically modifying QoSPolicy to change QoS rules.

The QoSPolicy configuration is as follows:

apiVersion: kubeovn.io/v1
 kind: QoSPolicy
 metadata:
   name: qos-eip-example
@@ -109,7 +109,7 @@
 NAME                SHARED   BINDINGTYPE
 qos-eip-example     false    EIP
 qos-natgw-example   true     NATGW
-

Limitations

  • QoSPolicy can only be deleted when it is not in use. Therefore, before deleting the QoSPolicy, please check the EIP and NATGW that have enabled QoS, and remove their spec.qosPolicy configuration.

微信群 Slack Twitter Support


最后更新: May 17, 2023
创建日期: May 9, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/vpc/index.html b/v1.12.x/en/guide/vpc/index.html index 085d2ed40..ac2fd34c2 100644 --- a/v1.12.x/en/guide/vpc/index.html +++ b/v1.12.x/en/guide/vpc/index.html @@ -1,4 +1,4 @@ - Config VPC - Kube-OVN Document

Config VPC

Kube-OVN supports multi-tenant isolation level VPC networks. Different VPC networks are independent of each other and can be configured separately with Subnet CIDRs, routing policies, security policies, outbound gateways, EIP, etc.

VPC is mainly used in scenarios where there requires strong isolation of multi-tenant networks and some Kubernetes networking features conflict under multi-tenant networks. For example, node and pod access, NodePort functionality, network access-based health checks, and DNS capabilities are not supported in multi-tenant network scenarios at this time. In order to facilitate common Kubernetes usage scenarios, Kube-OVN has a special design for the default VPC where the Subnet under the VPC can meet the Kubernetes specification. The custom VPC supports static routing, EIP and NAT gateways as described in this document. Common isolation requirements can be achieved through network policies and Subnet ACLs under the default VPC, so before using a custom VPC, please make sure whether you need VPC-level isolation and understand the limitations under the custom VPC. For Underlay subnets, physical switches are responsible for data-plane forwarding, so VPCs cannot isolate Underlay subnets.

Creating Custom VPCs

Create two VPCs:

kind: Vpc
+    

Config VPC

Kube-OVN supports multi-tenant isolation level VPC networks. Different VPC networks are independent of each other and can be configured separately with Subnet CIDRs, routing policies, security policies, outbound gateways, EIP, etc.

VPC is mainly used in scenarios where there requires strong isolation of multi-tenant networks and some Kubernetes networking features conflict under multi-tenant networks. For example, node and pod access, NodePort functionality, network access-based health checks, and DNS capabilities are not supported in multi-tenant network scenarios at this time. In order to facilitate common Kubernetes usage scenarios, Kube-OVN has a special design for the default VPC where the Subnet under the VPC can meet the Kubernetes specification. The custom VPC supports static routing, EIP and NAT gateways as described in this document. Common isolation requirements can be achieved through network policies and Subnet ACLs under the default VPC, so before using a custom VPC, please make sure whether you need VPC-level isolation and understand the limitations under the custom VPC. For Underlay subnets, physical switches are responsible for data-plane forwarding, so VPCs cannot isolate Underlay subnets.

Creating Custom VPCs

Create two VPCs:

kind: Vpc
 apiVersion: kubeovn.io/v1
 metadata:
   name: test-vpc-1
@@ -352,7 +352,7 @@
 NAME        ACTIVE   VPC         SUBNET   
 test-cjh1   false    cjh-vpc-1   cjh-subnet-1   
 test-cjh2   true     cjh-vpc-1   cjh-subnet-2 
-
  • ACTIVE: if the custom vpc-dns is ready.

Restrictions

  • Only one custom DNS component will be deployed in one VPC;
  • When multiple VPC-DNS resources (i.e. different subnets in the same VPC) are configured in one VPC, only one VPC-DNS resource with status true will be active, while the others will be false;
  • When the true VPC-DNS is deleted, another false VPC-DNS will be deployed.

微信群 Slack Twitter Support


最后更新: August 17, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/guide/webhook/index.html b/v1.12.x/en/guide/webhook/index.html index 606f7ce12..d936d0ec9 100644 --- a/v1.12.x/en/guide/webhook/index.html +++ b/v1.12.x/en/guide/webhook/index.html @@ -1,4 +1,4 @@ - Webhook - Kube-OVN Document

Webhook

Using Webhook, you can verify CRD resources within Kube-OVN. Currently, Webhook mainly performs fixed IP address conflict detection and Subnet CIDR conflict detection, and prompts errors when such conflicts happen.

Since Webhook intercepts all Subnet and Pod creation requests, you need to deploy Kube-OVN first and Webhook later.

Install Cert-Manager

Webhook deployment requires certificate, we use cert-manager to generate the associated certificate, we need to deploy cert-manager before deploying Webhook.

You can use the following command to deploy cert-manager:

kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.8.0/cert-manager.yaml
+    

Webhook

Using Webhook, you can verify CRD resources within Kube-OVN. Currently, Webhook mainly performs fixed IP address conflict detection and Subnet CIDR conflict detection, and prompts errors when such conflicts happen.

Since Webhook intercepts all Subnet and Pod creation requests, you need to deploy Kube-OVN first and Webhook later.

Install Cert-Manager

Webhook deployment requires certificate, we use cert-manager to generate the associated certificate, we need to deploy cert-manager before deploying Webhook.

You can use the following command to deploy cert-manager:

kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.8.0/cert-manager.yaml
 

More cert-manager usage please refer to cert-manager document

Install Webhook

Download Webhook yaml and install:

# kubectl apply -f https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.12/yamls/webhook.yaml
 deployment.apps/kube-ovn-webhook created
 service/kube-ovn-webhook created
@@ -34,7 +34,7 @@
     name: qatest
 

When using the above yaml to create a fixed address Pod, it prompts an IP address conflict:

# kubectl apply -f pod-static.yaml
 Error from server (annotation ip address 10.16.0.15 is conflict with ip crd static-7584848b74-fw9dm.default 10.16.0.15): error when creating "pod-static.yaml": admission webhook "pod-ip-validaing.kube-ovn.io" denied the request: annotation ip address 10.16.0.15 is conflict with ip crd static-7584848b74-fw9dm.default 10.16.0.15
-

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/index.html b/v1.12.x/en/index.html index daa79ec6c..606881ea4 100644 --- a/v1.12.x/en/index.html +++ b/v1.12.x/en/index.html @@ -1,4 +1,4 @@ - OVERVIEW - Kube-OVN Document

Kube-OVN

Kube-OVN

Kube-OVN, a CNCF Sandbox Project, bridges the SDN into Cloud Native. It offers an advanced Container Network Fabric for Enterprises with the most functions, extreme performance and the easiest operation.

Most Functions:

If you miss the rich networking capabilities of the SDN age but are struggling to find them in the cloud-native age, Kube-OVN should be your best choice.

Leveraging the proven capabilities of OVS/OVN in the SDN, Kube-OVN brings the rich capabilities of network virtualization to the cloud-native space. It currently supports Subnet Management, Static IP Allocation, Distributed/Centralized Gateways, Underlay/Overlay Hybrid Networks, VPC Multi-Tenant Networks, Cross-Cluster Interconnect, QoS Management, Multi-NIC Management, ACL, Traffic Mirroring, ARM Support, Windows Support, and many more.

Extreme Performance:

If you're concerned about the additional performance loss associated with container networks, then take a look at How Kube-OVN is doing everything it can to optimize performance.

In the data plane, through a series of carefully optimized flow and kernel optimizations, and with emerging technologies such as eBPF, DPDK and SmartNIC Offload, Kube-OVN can approximate or exceed host network performance in terms of latency and throughput.

In the control plane, Kube-OVN can support large-scale clusters of thousands of nodes and tens of thousands of Pods through the tailoring of OVN upstream flow tables and the use and tuning of various caching techniques.

In addition, Kube-OVN is continuously optimizing the usage of resources such as CPU and memory to accommodate resource-limited scenarios such as the edge.

Easiest Operation:

If you're worried about container network operations, Kube-OVN has a number of built-in tools to help you simplify your operations.

Kube-OVN provides one-click installation scripts to help users quickly build production-ready container networks. Also built-in rich monitoring metrics and Grafana dashboard help users to quickly set up monitoring system.

Powerful command line tools simplify daily operations and maintenance for users. By combining with Cilium, users can enhance the observability of their networks with eBPF capabilities. In addition, the ability to mirror traffic makes it easy to customize traffic monitoring and interface with traditional NPM systems.

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 29, 2022

评论

Kube-OVN

Kube-OVN

Kube-OVN, a CNCF Sandbox Project, bridges the SDN into Cloud Native. It offers an advanced Container Network Fabric for Enterprises with the most functions, extreme performance and the easiest operation.

Most Functions:

If you miss the rich networking capabilities of the SDN age but are struggling to find them in the cloud-native age, Kube-OVN should be your best choice.

Leveraging the proven capabilities of OVS/OVN in the SDN, Kube-OVN brings the rich capabilities of network virtualization to the cloud-native space. It currently supports Subnet Management, Static IP Allocation, Distributed/Centralized Gateways, Underlay/Overlay Hybrid Networks, VPC Multi-Tenant Networks, Cross-Cluster Interconnect, QoS Management, Multi-NIC Management, ACL, Traffic Mirroring, ARM Support, Windows Support, and many more.

Extreme Performance:

If you're concerned about the additional performance loss associated with container networks, then take a look at How Kube-OVN is doing everything it can to optimize performance.

In the data plane, through a series of carefully optimized flow and kernel optimizations, and with emerging technologies such as eBPF, DPDK and SmartNIC Offload, Kube-OVN can approximate or exceed host network performance in terms of latency and throughput.

In the control plane, Kube-OVN can support large-scale clusters of thousands of nodes and tens of thousands of Pods through the tailoring of OVN upstream flow tables and the use and tuning of various caching techniques.

In addition, Kube-OVN is continuously optimizing the usage of resources such as CPU and memory to accommodate resource-limited scenarios such as the edge.

Easiest Operation:

If you're worried about container network operations, Kube-OVN has a number of built-in tools to help you simplify your operations.

Kube-OVN provides one-click installation scripts to help users quickly build production-ready container networks. Also built-in rich monitoring metrics and Grafana dashboard help users to quickly set up monitoring system.

Powerful command line tools simplify daily operations and maintenance for users. By combining with Cilium, users can enhance the observability of their networks with eBPF capabilities. In addition, the ability to mirror traffic makes it easy to customize traffic monitoring and interface with traditional NPM systems.

微信群 Slack Twitter Support


Last update: February 15, 2023
Created: June 29, 2022

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/ops/change-default-subnet/index.html b/v1.12.x/en/ops/change-default-subnet/index.html index 2d5c1c45a..5278a3e86 100644 --- a/v1.12.x/en/ops/change-default-subnet/index.html +++ b/v1.12.x/en/ops/change-default-subnet/index.html @@ -1,4 +1,4 @@ - Change Subnet CIDR - Kube-OVN Document

Change Subnet CIDR

If a subnet CIDR is created that conflicts or does not meet expectations, it can be modified by following the steps in this document.

After modifying the subnet CIDR, the previously created Pods will not be able to access the network properly and need to be rebuilt. Careful consideration is recommended before operating。This document is only for business subnet CIDR changes, if you need to Change the Join subnet CIDR, please refer to Change Join CIDR.

Edit Subnet

Use kubectl edit to modify cidrBlockgateway and excludeIps.

kubectl edit subnet test-subnet
+    

Change Subnet CIDR

If a subnet CIDR is created that conflicts or does not meet expectations, it can be modified by following the steps in this document.

After modifying the subnet CIDR, the previously created Pods will not be able to access the network properly and need to be rebuilt. Careful consideration is recommended before operating。This document is only for business subnet CIDR changes, if you need to Change the Join subnet CIDR, please refer to Change Join CIDR.

Edit Subnet

Use kubectl edit to modify cidrBlockgateway and excludeIps.

kubectl edit subnet test-subnet
 

Rebuild all Pods under this Subnet

Take the subnet binding test Namespace as example:

for pod in $(kubectl get pod --no-headers -n "$ns" --field-selector spec.restartPolicy=Always -o custom-columns=NAME:.metadata.name,HOST:spec.hostNetwork | awk '{if ($2!="true") print $1}'); do
   kubectl delete pod "$pod" -n test --ignore-not-found
 done
@@ -19,7 +19,7 @@
 - --default-cidr=10.17.0.0/16
 - --default-gateway=10.17.0.1
 - --default-exclude-ips=10.17.0.1
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/ops/change-join-subnet/index.html b/v1.12.x/en/ops/change-join-subnet/index.html index 352d8f726..197b3c41a 100644 --- a/v1.12.x/en/ops/change-join-subnet/index.html +++ b/v1.12.x/en/ops/change-join-subnet/index.html @@ -1,4 +1,4 @@ - Change Join Subnet CIDR - Kube-OVN Document

Change Join Subnet CIDR

If the Join subnet CIDR created conflicts or does not meet expectations, you can use this document to modify.

After modifying the Join Subnet CIDR, the previously created Pods will not be able to access the external network normally and need to wait for the rebuild completed.

Delete Join Subnet

kubectl patch subnet join --type='json' -p '[{"op": "replace", "path": "/metadata/finalizers", "value": []}]'
+    

Change Join Subnet CIDR

If the Join subnet CIDR created conflicts or does not meet expectations, you can use this document to modify.

After modifying the Join Subnet CIDR, the previously created Pods will not be able to access the external network normally and need to wait for the rebuild completed.

Delete Join Subnet

kubectl patch subnet join --type='json' -p '[{"op": "replace", "path": "/metadata/finalizers", "value": []}]'
 kubectl delete subnet join
 

Cleanup Allocated Config

kubectl annotate node ovn.kubernetes.io/allocated=false --all --overwrite
 

Modify Join Subnet

Change Join Subnet args in kube-ovn-controller:

kubectl edit deployment -n kube-system kube-ovn-controller
@@ -18,7 +18,7 @@
 join          ovn        ovn-cluster   IPv4       100.51.0.0/16   false     false   false     distributed   2        65531         0        0             ["100.51.0.1"]
 ovn-default   ovn        ovn-cluster   IPv4       10.17.0.0/16    false     true    true      distributed   5        65528         0        0             ["10.17.0.1"]
 

Reconfigure ovn0 NIC Address

The ovn0 NIC information for each node needs to be re-updated, which can be done by restarting kube-ovn-cni:

kubectl delete pod -n kube-system -l app=kube-ovn-cni
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/ops/change-log-level/index.html b/v1.12.x/en/ops/change-log-level/index.html index 9669bf4b2..3564c62df 100644 --- a/v1.12.x/en/ops/change-log-level/index.html +++ b/v1.12.x/en/ops/change-log-level/index.html @@ -1,4 +1,4 @@ - Change Log Level - Kube-OVN Document

Change Log Level

Open kube-ovn.yaml and set the log level in the parameter list of the service startup script, such as:

vi kube-ovn.yaml
+    

Change Log Level

Open kube-ovn.yaml and set the log level in the parameter list of the service startup script, such as:

vi kube-ovn.yaml
 # ...
         - name: kube-ovn-controller
           image: "docker.io/kubeovn/kube-ovn:v1.12.4"
@@ -16,7 +16,7 @@
           - --v=3
 # ...
 # The higher the log level, the more detailed the log
-

微信群 Slack Twitter Support


最后更新: May 9, 2023
创建日期: April 4, 2023

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/ops/change-ovn-central-node/index.html b/v1.12.x/en/ops/change-ovn-central-node/index.html index f803f59a1..7b23e57c8 100644 --- a/v1.12.x/en/ops/change-ovn-central-node/index.html +++ b/v1.12.x/en/ops/change-ovn-central-node/index.html @@ -1,4 +1,4 @@ - Replace ovn-central Node - Kube-OVN Document

Replace ovn-central Node

Since ovn-nb and ovn-sb within ovn-central create separate etcd-like raft clusters, replacing the ovn-central node requires additional operations to ensure correct cluster state and consistent data. It is recommended that only one node be up and down at a time to avoid the cluster going into an unavailable state and affecting the overall cluster network.

ovn-central Nodes Offline

This document use the cluster below to describes how to remove the kube-ovn-control-plane2 node from the ovn-central as an example.

# kubectl -n kube-system get pod -o wide | grep central
+    

Replace ovn-central Node

Since ovn-nb and ovn-sb within ovn-central create separate etcd-like raft clusters, replacing the ovn-central node requires additional operations to ensure correct cluster state and consistent data. It is recommended that only one node be up and down at a time to avoid the cluster going into an unavailable state and affecting the overall cluster network.

ovn-central Nodes Offline

This document use the cluster below to describes how to remove the kube-ovn-control-plane2 node from the ovn-central as an example.

# kubectl -n kube-system get pod -o wide | grep central
 ovn-central-6bf58cbc97-2cdhg                      1/1     Running   0             21m   172.18.0.3   kube-ovn-control-plane    <none>           <none>
 ovn-central-6bf58cbc97-crmfp                      1/1     Running   0             21m   172.18.0.5   kube-ovn-control-plane2   <none>           <none>
 ovn-central-6bf58cbc97-lxmpl                      1/1     Running   0             21m   172.18.0.4   kube-ovn-control-plane3   <none>           <none>
@@ -197,7 +197,7 @@
 Waiting for deployment "kube-ovn-controller" rollout to finish: 1 of 3 updated replicas are available...
 Waiting for deployment "kube-ovn-controller" rollout to finish: 2 of 3 updated replicas are available...
 deployment "kube-ovn-controller" successfully rolled out
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/ops/delete-worker-node/index.html b/v1.12.x/en/ops/delete-worker-node/index.html index a6a5b850f..73e424012 100644 --- a/v1.12.x/en/ops/delete-worker-node/index.html +++ b/v1.12.x/en/ops/delete-worker-node/index.html @@ -1,4 +1,4 @@ - Deleting Work Node - Kube-OVN Document

Delete Work Node

If the node is simply removed from Kubernetes, the ovn-controller process running in ovs-ovn on the node will periodically connect to ovn-central to register relevant network information. This leads to additional resource waste and potential rule conflict risk。 Therefore, when removing nodes from within Kubernetes, follow the steps below to ensure that related resources are cleaned up properly.

This document describes the steps to delete a worker node, if you want to change the node where ovn-central is located, please refer to Replace ovn-central Node.

Evict Pods on the Node

 # kubectl drain kube-ovn-worker --ignore-daemonsets --force
+    

Delete Work Node

If the node is simply removed from Kubernetes, the ovn-controller process running in ovs-ovn on the node will periodically connect to ovn-central to register relevant network information. This leads to additional resource waste and potential rule conflict risk。 Therefore, when removing nodes from within Kubernetes, follow the steps below to ensure that related resources are cleaned up properly.

This document describes the steps to delete a worker node, if you want to change the node where ovn-central is located, please refer to Replace ovn-central Node.

Evict Pods on the Node

 # kubectl drain kube-ovn-worker --ignore-daemonsets --force
  node/kube-ovn-worker cordoned
  WARNING: ignoring DaemonSet-managed Pods: kube-system/kube-ovn-cni-zt74b, kube-system/kube-ovn-pinger-5rxfs, kube-system/kube-proxy-jpmnm, kube-system/ovs-ovn-v2kll
  evicting pod kube-system/coredns-64897985d-qsgpt
@@ -57,7 +57,7 @@
   Port_Binding local-path-provisioner-5ddd94ff66-h4tn9.local-path-storage
   Port_Binding kube-ovn-pinger-hf2p6.kube-system
   Port_Binding coredns-64897985d-fhwlw.kube-system
-

微信群 Slack Twitter Support


最后更新: April 25, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/ops/faq/index.html b/v1.12.x/en/ops/faq/index.html index 0a72714f7..ffc7a40e6 100644 --- a/v1.12.x/en/ops/faq/index.html +++ b/v1.12.x/en/ops/faq/index.html @@ -1,4 +1,4 @@ - FAQ - Kube-OVN Document

FAQ

Kylin ARM system cross-host container access intermittently fails

Behavior

There is a problem with Kylin ARM system and some NIC offload, which can cause intermittent container network failure.

Use netstat to identify the problem:

# netstat -us
+    

FAQ

Kylin ARM system cross-host container access intermittently fails

Behavior

There is a problem with Kylin ARM system and some NIC offload, which can cause intermittent container network failure.

Use netstat to identify the problem:

# netstat -us
 IcmpMsg:
     InType0: 22
     InType3: 24
@@ -32,7 +32,7 @@
 

If InCsumErrors is present and increases with netwoork failures, you can confirm that this is the problem.

Solution

The fundamental solution requires communication with Kylin and the corresponding network card manufacturer to update the system and drivers. A temporary solution would be to turn off tx offload on the physical NIC, but this would cause a significant degradation in tcp performance.

ethtool -K eth0 tx off
 

From the community feedback, the problem can be solved by the 4.19.90-25.16.v2101 kernel.

Pod can not Access Service

Behavior

Pod can not access Service, and dmesg show errors:

netlink:Unknown conntrack attr (type=6, max=5)
 openvswitch: netlink: Flow actions may not be safe on all matching packets.
-

This log indicates that the in-kernel OVS version is too low to support the corresponding NAT operation.

Solution

  1. Upgrade the kernel module or compile the OVS kernel module manually.
  2. If you are using an Overlay network you can change the kube-ovn-controller args, setting --enable-lb=false to disable the OVN LB to use kube-proxy for service forwarding.

微信群 Slack Twitter Support


最后更新: July 15, 2022
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/ops/from-calico/index.html b/v1.12.x/en/ops/from-calico/index.html index 61f818221..80448b319 100644 --- a/v1.12.x/en/ops/from-calico/index.html +++ b/v1.12.x/en/ops/from-calico/index.html @@ -1,4 +1,4 @@ - Install Kube-OVN From Calico - Kube-OVN Document

Install Kube-OVN From Calico

If a Kubernetes cluster already has Calico installed and needs to change to Kube-OVN you can refer to this document.

Since the installation of Calico may vary from version to version and the existing Pod network may be disrupted during the replacement process, it is recommended that you plan ahead and compare the differences in Calico installation from version to version.

Uninstall Calico

For Calico installed from an Operator:

kubectl delete -f https://projectcalico.docs.tigera.io/manifests/tigera-operator.yaml
+    

Install Kube-OVN From Calico

If a Kubernetes cluster already has Calico installed and needs to change to Kube-OVN you can refer to this document.

Since the installation of Calico may vary from version to version and the existing Pod network may be disrupted during the replacement process, it is recommended that you plan ahead and compare the differences in Calico installation from version to version.

Uninstall Calico

For Calico installed from an Operator:

kubectl delete -f https://projectcalico.docs.tigera.io/manifests/tigera-operator.yaml
 kubectl delete -f https://projectcalico.docs.tigera.io/manifests/custom-resources.yaml
 

For Calico installed from manifests:

kubectl delete -f https://projectcalico.docs.tigera.io/manifests/calico.yaml 
 

Cleanup Config Files

Delete the CNI-related configuration files on each machine, depending on the environment:

rm -f /etc/cni/net.d/10-calico.conflist
 rm -f /etc/cni/net.d/calico-kubeconfig
-

Calico still leaves routing rules, iptables rules, veth network interfaces and other configuration information on the node, so it is recommended to reboot the node to clean up the relevant configuration to avoid problems that are difficult to troubleshoot.

Install Kube-OVN

You can refer to One Click Installation to install Kube-OVN as usual.

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/ops/kubectl-ko/index.html b/v1.12.x/en/ops/kubectl-ko/index.html index d84686a2e..8a9e377f1 100644 --- a/v1.12.x/en/ops/kubectl-ko/index.html +++ b/v1.12.x/en/ops/kubectl-ko/index.html @@ -1,4 +1,4 @@ - Kubectl Plugin - Kube-OVN Document

Kubectl Plugin

To facilitate daily operations and maintenance, Kube-OVN provides the kubectl plug-in tool, which allows administrators to perform daily operations through this command. For examples: Check OVN database information and status, OVN database backup and restore, OVS related information, tcpdump specific containers, specific link logical topology, network problem diagnosis and performance optimization.

Plugin Installation

Kube-OVN installation will deploy the plugin to each node by default. If the machine that runs kubectl is not in the cluster, or if you need to reinstall the plugin, please refer to the following steps:

Download kubectl-ko file:

wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.12/dist/images/kubectl-ko
+    

Kubectl Plugin

To facilitate daily operations and maintenance, Kube-OVN provides the kubectl plug-in tool, which allows administrators to perform daily operations through this command. For examples: Check OVN database information and status, OVN database backup and restore, OVS related information, tcpdump specific containers, specific link logical topology, network problem diagnosis and performance optimization.

Plugin Installation

Kube-OVN installation will deploy the plugin to each node by default. If the machine that runs kubectl is not in the cluster, or if you need to reinstall the plugin, please refer to the following steps:

Download kubectl-ko file:

wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.12/dist/images/kubectl-ko
 

Move file to $PATH:

mv kubectl-ko /usr/local/bin/kubectl-ko
 

Add executable permissions:

chmod +x /usr/local/bin/kubectl-ko
 

Check if the plugin works properly:

# kubectl plugin list
@@ -645,7 +645,7 @@
 pod "test-server" deleted
 service "test-server" deleted
 ====================================================================================================
-

微信群 Slack Twitter Support


最后更新: October 7, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/ops/recover-db/index.html b/v1.12.x/en/ops/recover-db/index.html index 53a5e5d6c..d7ae459e9 100644 --- a/v1.12.x/en/ops/recover-db/index.html +++ b/v1.12.x/en/ops/recover-db/index.html @@ -1,4 +1,4 @@ - OVN DB Backup and Recovery - Kube-OVN Document

OVN DB Backup and Recovery

This document describes how to perform database backups and how to perform cluster recovery from existing database files in different situations.

Database Backup

The database files can be backed up for recovery in case of failure. Use the backup command of the kubectl plugin:

# kubectl ko nb backup
+    

OVN DB Backup and Recovery

This document describes how to perform database backups and how to perform cluster recovery from existing database files in different situations.

Database Backup

The database files can be backed up for recovery in case of failure. Use the backup command of the kubectl plugin:

# kubectl ko nb backup
 tar: Removing leading `/' from member names
 backup ovn-nb db to /root/ovnnb_db.060223191654183154.backup
 
@@ -54,7 +54,7 @@
 mv /etc/origin/ovn/ovnsb_db_standalone.db /etc/origin/ovn/ovnsb_db.db
 

Restore the number of replicas of ovn-central

kubectl scale deployment -n kube-system ovn-central --replicas=3
 kubectl rollout status deployment/ovn-central -n kube-system
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/architecture/index.html b/v1.12.x/en/reference/architecture/index.html index 6d931cbb3..9a0af9b89 100644 --- a/v1.12.x/en/reference/architecture/index.html +++ b/v1.12.x/en/reference/architecture/index.html @@ -1,4 +1,4 @@ - Architecture - Kube-OVN Document

Architecture

This document describes the general architecture of Kube-OVN, the functionality of each component and how they interact with each other.

Overall, Kube-OVN serves as a bridge between Kubernetes and OVN, combining proven SDN with Cloud Native. This means that Kube-OVN not only implements network specifications under Kubernetes, such as CNI, Service and Networkpolicy, but also brings a large number of SDN domain capabilities to cloud-native, such as logical switches, logical routers, VPCs, gateways, QoS, ACLs and traffic mirroring.

Kube-OVN also maintains a good openness to integrate with many technology solutions, such as Cilium, Submariner, Prometheus, KubeVirt, etc.

Component Introduction

The components of Kube-OVN can be broadly divided into three categories.

  • Upstream OVN/OVS components.
  • Core Controller and Agent.
  • Monitoring, operation and maintenance tools and extension components.

Upstream OVN/OVS Components

This type of component comes from the OVN/OVS community with specific modifications for Kube-OVN usage scenarios. OVN/OVS itself is a mature SDN system for managing virtual machines and containers, and we strongly recommend that users interested in the Kube-OVN implementation read ovn-architecture(7) first to understand what OVN is and how to integrate with it. Kube-OVN uses the northbound interface of OVN to create and coordinate virtual networks and map the network concepts into Kubernetes.

All OVN/OVS-related components have been packaged into images and are ready to run in Kubernetes.

ovn-central

The ovn-central Deployment runs the control plane components of OVN, including ovn-nb, ovn-sb, and ovn-northd.

  • ovn-nb: Saves the virtual network configuration and provides an API for virtual network management. kube-ovn-controller will mainly interact with ovn-nb to configure the virtual network.
  • ovn-sb: Holds the logical flow table generated from the logical network of ovn-nb, as well as the actual physical network state of each node.
  • ovn-northd: translates the virtual network of ovn-nb into a logical flow table in ovn-sb.

Multiple instances of ovn-central will synchronize data via the Raft protocol to ensure high availability.

ovs-ovn

ovs-ovn runs as a DaemonSet on each node, with openvswitch, ovsdb, and ovn-controller running inside the Pod. These components act as agents for ovn-central to translate logical flow tables into real network configurations.

Core Controller and Agent

This part is the core component of Kube-OVN, serving as a bridge between OVN and Kubernetes, bridging the two systems and translating network concepts between them. Most of the core functions are implemented in these components.

kube-ovn-controller

This component performs the translation of all resources within Kubernetes to OVN resources and acts as the control plane for the entire Kube-OVN system. The kube-ovn-controller listens for events on all resources related to network functionality and updates the logical network within the OVN based on resource changes. The main resources listened including:

Pod,Service,Endpoint,Node,NetworkPolicy,VPC,Subnet,Vlan,ProviderNetwork。

Taking the Pod event as an example, kube-ovn-controller listens to the Pod creation event, allocates the address via the built-in in-memory IPAM function, and calls ovn-central to create logical ports, static routes and possible ACL rules. Next, kube-ovn-controller writes the assigned address and subnet information such as CIDR, gateway, route, etc. to the annotation of the Pod. This annotation is then read by kube-ovn-cni and used to configure the local network.

kube-ovn-cni

This component runs on each node as a DaemonSet, implements the CNI interface, and operates the local OVS to configure the local network.

This DaemonSet copies the kube-ovn binary to each machine as a tool for interaction between kubelet and kube-ovn-cni. This binary sends the corresponding CNI request to kube-ovn-cni for further operation. The binary will be copied to the /opt/cni/bin directory by default.

kube-ovn-cni will configure the specific network to perform the appropriate traffic operations, and the main tasks including:

  1. Config ovn-controller and vswitchd.
  2. Handle CNI Add/Del requests:
    1. Create or delete veth pair and bind or unbind to OVS ports.
    2. Configure OVS ports
    3. Update host iptables/ipset/route rules.
  3. Dynamically update the network QoS.
  4. Create and configure the ovn0 NIC to connect the container network and the host network.
  5. Configure the host NIC to implement Vlan/Underlay/EIP.
  6. Dynamically config inter-cluster gateways.

Monitoring, Operation and Maintenance Tools and Extension Components

These components provide monitoring, diagnostics, operations tools, and external interface to extend the core network capabilities of Kube-OVN and simplify daily operations and maintenance.

kube-ovn-speaker

This component is a DaemonSet running on a specific labeled nodes that publish routes to the external, allowing external access to the container directly through the Pod IP.

For more information on how to use it, please refer to BGP Support.

kube-ovn-pinger

This component is a DaemonSet running on each node to collect OVS status information, node network quality, network latency, etc. The monitoring metrics collected can be found in Metrics.

kube-ovn-monitor

This component collects OVN status information and the monitoring metrics, all metrics can be found in Metrics.

kubectl-ko

This component is a kubectl plugin, which can quickly run common operations, for more usage, please refer to [kubectl plugin].(../ops/kubectl-ko.en.md)。

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

Architecture

This document describes the general architecture of Kube-OVN, the functionality of each component and how they interact with each other.

Overall, Kube-OVN serves as a bridge between Kubernetes and OVN, combining proven SDN with Cloud Native. This means that Kube-OVN not only implements network specifications under Kubernetes, such as CNI, Service and Networkpolicy, but also brings a large number of SDN domain capabilities to cloud-native, such as logical switches, logical routers, VPCs, gateways, QoS, ACLs and traffic mirroring.

Kube-OVN also maintains a good openness to integrate with many technology solutions, such as Cilium, Submariner, Prometheus, KubeVirt, etc.

Component Introduction

The components of Kube-OVN can be broadly divided into three categories.

  • Upstream OVN/OVS components.
  • Core Controller and Agent.
  • Monitoring, operation and maintenance tools and extension components.

Upstream OVN/OVS Components

This type of component comes from the OVN/OVS community with specific modifications for Kube-OVN usage scenarios. OVN/OVS itself is a mature SDN system for managing virtual machines and containers, and we strongly recommend that users interested in the Kube-OVN implementation read ovn-architecture(7) first to understand what OVN is and how to integrate with it. Kube-OVN uses the northbound interface of OVN to create and coordinate virtual networks and map the network concepts into Kubernetes.

All OVN/OVS-related components have been packaged into images and are ready to run in Kubernetes.

ovn-central

The ovn-central Deployment runs the control plane components of OVN, including ovn-nb, ovn-sb, and ovn-northd.

  • ovn-nb: Saves the virtual network configuration and provides an API for virtual network management. kube-ovn-controller will mainly interact with ovn-nb to configure the virtual network.
  • ovn-sb: Holds the logical flow table generated from the logical network of ovn-nb, as well as the actual physical network state of each node.
  • ovn-northd: translates the virtual network of ovn-nb into a logical flow table in ovn-sb.

Multiple instances of ovn-central will synchronize data via the Raft protocol to ensure high availability.

ovs-ovn

ovs-ovn runs as a DaemonSet on each node, with openvswitch, ovsdb, and ovn-controller running inside the Pod. These components act as agents for ovn-central to translate logical flow tables into real network configurations.

Core Controller and Agent

This part is the core component of Kube-OVN, serving as a bridge between OVN and Kubernetes, bridging the two systems and translating network concepts between them. Most of the core functions are implemented in these components.

kube-ovn-controller

This component performs the translation of all resources within Kubernetes to OVN resources and acts as the control plane for the entire Kube-OVN system. The kube-ovn-controller listens for events on all resources related to network functionality and updates the logical network within the OVN based on resource changes. The main resources listened including:

Pod,Service,Endpoint,Node,NetworkPolicy,VPC,Subnet,Vlan,ProviderNetwork。

Taking the Pod event as an example, kube-ovn-controller listens to the Pod creation event, allocates the address via the built-in in-memory IPAM function, and calls ovn-central to create logical ports, static routes and possible ACL rules. Next, kube-ovn-controller writes the assigned address and subnet information such as CIDR, gateway, route, etc. to the annotation of the Pod. This annotation is then read by kube-ovn-cni and used to configure the local network.

kube-ovn-cni

This component runs on each node as a DaemonSet, implements the CNI interface, and operates the local OVS to configure the local network.

This DaemonSet copies the kube-ovn binary to each machine as a tool for interaction between kubelet and kube-ovn-cni. This binary sends the corresponding CNI request to kube-ovn-cni for further operation. The binary will be copied to the /opt/cni/bin directory by default.

kube-ovn-cni will configure the specific network to perform the appropriate traffic operations, and the main tasks including:

  1. Config ovn-controller and vswitchd.
  2. Handle CNI Add/Del requests:
    1. Create or delete veth pair and bind or unbind to OVS ports.
    2. Configure OVS ports
    3. Update host iptables/ipset/route rules.
  3. Dynamically update the network QoS.
  4. Create and configure the ovn0 NIC to connect the container network and the host network.
  5. Configure the host NIC to implement Vlan/Underlay/EIP.
  6. Dynamically config inter-cluster gateways.

Monitoring, Operation and Maintenance Tools and Extension Components

These components provide monitoring, diagnostics, operations tools, and external interface to extend the core network capabilities of Kube-OVN and simplify daily operations and maintenance.

kube-ovn-speaker

This component is a DaemonSet running on a specific labeled nodes that publish routes to the external, allowing external access to the container directly through the Pod IP.

For more information on how to use it, please refer to BGP Support.

kube-ovn-pinger

This component is a DaemonSet running on each node to collect OVS status information, node network quality, network latency, etc. The monitoring metrics collected can be found in Metrics.

kube-ovn-monitor

This component collects OVN status information and the monitoring metrics, all metrics can be found in Metrics.

kubectl-ko

This component is a kubectl plugin, which can quickly run common operations, for more usage, please refer to [kubectl plugin].(../ops/kubectl-ko.en.md)。

微信群 Slack Twitter Support


Last update: February 15, 2023
Created: June 30, 2022

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/dev-env/index.html b/v1.12.x/en/reference/dev-env/index.html index 74e60fb75..d6cae7f4f 100644 --- a/v1.12.x/en/reference/dev-env/index.html +++ b/v1.12.x/en/reference/dev-env/index.html @@ -1,4 +1,4 @@ - Development Setup - Kube-OVN Document

Development Setup

Environmental Preparation

Kube-OVN uses Golang 1.20 to develop and Go Modules to manage dependency, please check env GO111MODULE="on"

gosec is used to scan for code security related issues and requires to be installed in the development environment:

go install github.com/securego/gosec/v2/cmd/gosec@latest
+    

Development Setup

Environmental Preparation

Kube-OVN uses Golang 1.20 to develop and Go Modules to manage dependency, please check env GO111MODULE="on"

gosec is used to scan for code security related issues and requires to be installed in the development environment:

go install github.com/securego/gosec/v2/cmd/gosec@latest
 

To reduce the size of the final generated image, Kube-OVN uses some of the Docker buildx experimental features, please update Docker to the latest version and enable buildx:

docker buildx create --use
 

Build Image

Use the following command to download the code and generate the image required to run Kube-OVN:

git clone https://github.com/kubeovn/kube-ovn.git
 cd kube-ovn
@@ -35,7 +35,7 @@
 make kind-install-lb-svc
 make kube-ovn-lb-svc-conformance-e2e
 

To clean, run the following commands:

make kind-clean
-

微信群 Slack Twitter Support


最后更新: September 28, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/document-convention/index.html b/v1.12.x/en/reference/document-convention/index.html index f0f544dd1..cec337b15 100644 --- a/v1.12.x/en/reference/document-convention/index.html +++ b/v1.12.x/en/reference/document-convention/index.html @@ -1,4 +1,4 @@ - Document Convention - Kube-OVN Document

Document Specification

In order to ensure a consistent document style, please follow the following style guidelines when submitting documents.

Punctuation

All punctuation in the text content in Chinese documents should use Chinese format punctuation, and all text content in English documents should use English punctuation.

BadGood
Here is a one-click installation script that can help you quickly install a highly available, production-ready container network. Here is a one-click installation script that can help you quickly install a highly available, production-ready container network.

English numbers and Chinese characters should be separated by spaces.

BadGood
Kube-OVN provides a one-click installation script to install version 1.10 of Kube-OVN. Kube-OVN provides a one-click installation script to install version 1.10 of Kube-OVN.

Example content should start with :, other sentences should end with . End.

BadGood
Please confirm that the environment configuration is correct before installation Download the installation script using the command below.
wget 127.0.0.1
+    

Document Specification

In order to ensure a consistent document style, please follow the following style guidelines when submitting documents.

Punctuation

All punctuation in the text content in Chinese documents should use Chinese format punctuation, and all text content in English documents should use English punctuation.

BadGood
Here is a one-click installation script that can help you quickly install a highly available, production-ready container network. Here is a one-click installation script that can help you quickly install a highly available, production-ready container network.

English numbers and Chinese characters should be separated by spaces.

BadGood
Kube-OVN provides a one-click installation script to install version 1.10 of Kube-OVN. Kube-OVN provides a one-click installation script to install version 1.10 of Kube-OVN.

Example content should start with :, other sentences should end with . End.

BadGood
Please confirm that the environment configuration is correct before installation Download the installation script using the command below.
wget 127.0.0.1
 
Please confirm that the environment configuration is correct before installation. Download the installation script using the following command:
wget 127.0.0.1
 

Code Block

yaml code blocks need to be identified as yaml.

BadGood
````
 apiVersion: kubeovn.io/v1
@@ -73,7 +73,7 @@
 ```bash
 wget 127.0.0.1
 ```
-

微信群 Slack Twitter Support


最后更新: August 23, 2023
创建日期: August 18, 2023

评论

回到页面顶部
\ No newline at end of file + Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/feature-stage/index.html b/v1.12.x/en/reference/feature-stage/index.html index 7e43836b8..18e279db9 100644 --- a/v1.12.x/en/reference/feature-stage/index.html +++ b/v1.12.x/en/reference/feature-stage/index.html @@ -1,4 +1,4 @@ - Feature Stage - Kube-OVN Document

Feature Stage

In Kube-OVN, feature stage is classified into Alpha, Beta and GA, based on the degree of feature usage, documentation and test coverage.

Definition of Stage

For Alpha stage functions:

  • The feature is not fully documented and well tested.
  • This feature may change or even be removed in the future.
  • This feature API is not guaranteed to be stable and may be removed.
  • Community provides low priority support for this feature and long-term support cannot be guaranteed.
  • Since feature stability and long-term support cannot be guaranteed, it can be tested and verified, but is not recommended for production use.

For Beta stage functions:

  • This feature is partially documented and tested, but complete coverage is not guaranteed.
  • This feature may change in the future and the upgrade may affect the network, but it will not be removed as a whole.
  • This feature API may change in the future and the fields may be adjusted, but not removed as a whole.
  • This feature will be supported by the community in the long term.
  • It can be used on non-critical services as the functionality will be supported for a long time, but it is not recommended for critical production service as there is a possibility of changes in functionality and APIs that may break the network.

For GA stage functions:

  • The feature has full documentation and test coverage.
  • The feature will remain stable and upgrades will be guaranteed to be smooth.
  • This feature API is not subject to disruptive changes.
  • This feature will be supported with high priority by the community and long-term support will be guaranteed.

Feature Stage List

This list records the feature stages from the 1.8 release.

Feature Default Stage Since Until
Namespaced Subnet true GA 1.8
Distributed Gateway true GA 1.8
Active-backup Centralized Gateway true GA 1.8
ECMP Centralized Gateway false Beta 1.8
Subnet ACL true Alpha 1.9
Subnet Isolation (Will be replaced by ACL later) true Beta 1.8
Underlay Subnet true GA 1.8
Multiple Pod Interface true Beta 1.8
Subnet DHCP false Alpha 1.10
Subnet with External Gateway false Alpha 1.8
Cluster Inter-Connection with OVN-IC false Beta 1.8
Cluster Inter-Connection with Submariner false Alpha 1.9
VIP Reservation true Alpha 1.10
Create Custom VPC true Beta 1.8
Custom VPC Floating IP/SNAT/DNAT true Alpha 1.10
Custom VPC Static Route true Alpha 1.10
Custom VPC Policy Route true Alpha 1.10
Custom VPC Security Group true Alpha 1.10
Container Bandwidth QoS true GA 1.8
linux-netem QoS true Alpha 1.9
Prometheus Integration false GA 1.8
Grafana Integration false GA 1.8
IPv4/v6 DualStack false GA 1.8
Default VPC EIP/SNAT false Beta 1.8
Traffic Mirroring false GA 1.8
NetworkPolicy true Beta 1.8
Webhook false Alpha 1.10
Performance Tunning false Beta 1.8
Interconnection with Routes in Overlay Mode false Alpha 1.8
BGP Support false Alpha 1.9
Cilium Integration false Alpha 1.10
Custom VPC Peering false Alpha 1.10
Mellanox Offload false Alpha 1.8
Corigine Offload false Alpha 1.10
Windows Support false Alpha 1.10
DPDK Support false Alpha 1.10
OpenStack Integration false Alpha 1.9
Single Pod Fixed IP/Mac true GA 1.8
Workload with Fixed IP true GA 1.8
StatefulSet with Fixed IP true GA 1.8
VM with Fixed IP false Beta 1.9
Load Balancer Type Service in Default VPC false Alpha 1.11
Load Balance in Custom VPC false Alpha 1.11
DNS in Custom VPC false Alpha 1.11
Underlay and Overlay Interconnection false Alpha 1.11

微信群 Slack Twitter Support


最后更新: May 18, 2023
创建日期: September 6, 2022

评论

Feature Stage

In Kube-OVN, feature stage is classified into Alpha, Beta and GA, based on the degree of feature usage, documentation and test coverage.

Definition of Stage

For Alpha stage functions:

  • The feature is not fully documented and well tested.
  • This feature may change or even be removed in the future.
  • This feature API is not guaranteed to be stable and may be removed.
  • Community provides low priority support for this feature and long-term support cannot be guaranteed.
  • Since feature stability and long-term support cannot be guaranteed, it can be tested and verified, but is not recommended for production use.

For Beta stage functions:

  • This feature is partially documented and tested, but complete coverage is not guaranteed.
  • This feature may change in the future and the upgrade may affect the network, but it will not be removed as a whole.
  • This feature API may change in the future and the fields may be adjusted, but not removed as a whole.
  • This feature will be supported by the community in the long term.
  • It can be used on non-critical services as the functionality will be supported for a long time, but it is not recommended for critical production service as there is a possibility of changes in functionality and APIs that may break the network.

For GA stage functions:

  • The feature has full documentation and test coverage.
  • The feature will remain stable and upgrades will be guaranteed to be smooth.
  • This feature API is not subject to disruptive changes.
  • This feature will be supported with high priority by the community and long-term support will be guaranteed.

Feature Stage List

This list records the feature stages from the 1.8 release.

Feature Default Stage Since Until
Namespaced Subnet true GA 1.8
Distributed Gateway true GA 1.8
Active-backup Centralized Gateway true GA 1.8
ECMP Centralized Gateway false Beta 1.8
Subnet ACL true Alpha 1.9
Subnet Isolation (Will be replaced by ACL later) true Beta 1.8
Underlay Subnet true GA 1.8
Multiple Pod Interface true Beta 1.8
Subnet DHCP false Alpha 1.10
Subnet with External Gateway false Alpha 1.8
Cluster Inter-Connection with OVN-IC false Beta 1.8
Cluster Inter-Connection with Submariner false Alpha 1.9
VIP Reservation true Alpha 1.10
Create Custom VPC true Beta 1.8
Custom VPC Floating IP/SNAT/DNAT true Alpha 1.10
Custom VPC Static Route true Alpha 1.10
Custom VPC Policy Route true Alpha 1.10
Custom VPC Security Group true Alpha 1.10
Container Bandwidth QoS true GA 1.8
linux-netem QoS true Alpha 1.9
Prometheus Integration false GA 1.8
Grafana Integration false GA 1.8
IPv4/v6 DualStack false GA 1.8
Default VPC EIP/SNAT false Beta 1.8
Traffic Mirroring false GA 1.8
NetworkPolicy true Beta 1.8
Webhook false Alpha 1.10
Performance Tunning false Beta 1.8
Interconnection with Routes in Overlay Mode false Alpha 1.8
BGP Support false Alpha 1.9
Cilium Integration false Alpha 1.10
Custom VPC Peering false Alpha 1.10
Mellanox Offload false Alpha 1.8
Corigine Offload false Alpha 1.10
Windows Support false Alpha 1.10
DPDK Support false Alpha 1.10
OpenStack Integration false Alpha 1.9
Single Pod Fixed IP/Mac true GA 1.8
Workload with Fixed IP true GA 1.8
StatefulSet with Fixed IP true GA 1.8
VM with Fixed IP false Beta 1.9
Load Balancer Type Service in Default VPC false Alpha 1.11
Load Balance in Custom VPC false Alpha 1.11
DNS in Custom VPC false Alpha 1.11
Underlay and Overlay Interconnection false Alpha 1.11

微信群 Slack Twitter Support


Last update: May 18, 2023
Created: September 6, 2022

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/iptables-rules/index.html b/v1.12.x/en/reference/iptables-rules/index.html index 8fe3d96ff..90dcfbd44 100644 --- a/v1.12.x/en/reference/iptables-rules/index.html +++ b/v1.12.x/en/reference/iptables-rules/index.html @@ -1,4 +1,4 @@ - Iptables Rules - Kube-OVN Document

Iptables Rules

Kube-OVN uses ipset and iptables to implement gateway NAT functionality in the default VPC overlay Subnets.

The ipset used is shown in the following table:

Name(IPv4/IPv6) Type Usage
ovn40services/ovn60services hash:net Service CIDR
ovn40subnets/ovn60subnets hash:net Overlay Subnet CIDR and NodeLocal DNS IP address
ovn40subnets-nat/ovn60subnets-nat hash:net Overlay Subnet CIDRs that enable NatOutgoing
ovn40subnets-distributed-gw/ovn60subnets-distributed-gw hash:net Overlay Subnet CIDRs that use distributed gateway
ovn40other-node/ovn60other-node hash:net Internal IP addresses for other Nodes
ovn40local-pod-ip-nat/ovn60local-pod-ip-nat hash:ip Deprecated
ovn40subnets-nat-policy hash:net All subnet cidrs configured with natOutgoingPolicyRules
ovn40natpr-418e79269dc5-dst hash:net The dstIPs corresponding to the rule in natOutgoingPolicyRules
ovn40natpr-418e79269dc5-src hash:net The srcIPs corresponding to the rule in natOutgoingPolicyRules

The iptables rules (IPv4) used are shown in the following table:

Table Chain Rule Usage Note
filter INPUT -m set --match-set ovn40services src -j ACCEPT Allow k8s service and pod traffic to pass through --
filter INPUT -m set --match-set ovn40services dst -j ACCEPT Allow k8s service and pod traffic to pass through --
filter INPUT -m set --match-set ovn40subnets src -j ACCEPT Allow k8s service and pod traffic to pass through --
filter INPUT -m set --match-set ovn40subnets dst -j ACCEPT Allow k8s service and pod traffic to pass through --
filter FORWARD -m set --match-set ovn40services src -j ACCEPT Allow k8s service and pod traffic to pass through --
filter FORWARD -m set --match-set ovn40services dst -j ACCEPT Allow k8s service and pod traffic to pass through --
filter FORWARD -m set --match-set ovn40subnets src -j ACCEPT Allow k8s service and pod traffic to pass through --
filter FORWARD -m set --match-set ovn40subnets dst -j ACCEPT Allow k8s service and pod traffic to pass through --
filter FORWARD -s 10.16.0.0/16 -m comment --comment "ovn-subnet-gateway,ovn-default" Used to count packets from the subnet to the external network "10.16.0.0/16" is the cidr of the subnet, the "ovn-subnet-gateway" before the "," in comment is used to identify the iptables rule used to count the subnet inbound and outbound gateway packets, and the "ovn-default" after the "," is the name of the subnet
filter FORWARD -d 10.16.0.0/16 -m comment --comment "ovn-subnet-gateway,ovn-default" Used to count packets from the external network accessing the subnet "10.16.0.0/16" is the cidr of the subnet, the "ovn-subnet-gateway" before the "," in comment is used to identify the iptables rule used to count the subnet inbound and outbound gateway packets, and the "ovn-default" after the "," is the name of the subnet
filter OUTPUT -p udp -m udp --dport 6081 -j MARK --set-xmark 0x0 Clear traffic tag to prevent SNAT UDP: bad checksum on VXLAN interface
nat PREROUTING -m comment --comment "kube-ovn prerouting rules" -j OVN-PREROUTING Enter OVN-PREROUTING chain processing --
nat POSTROUTING -m comment --comment "kube-ovn postrouting rules" -j OVN-POSTROUTING Enter OVN-POSTROUTING chain processing --
nat OVN-PREROUTING -i ovn0 -m set --match-set ovn40subnets src -m set --match-set ovn40services dst -j MARK --set-xmark 0x4000/0x4000 Adding masquerade tags to Pod access service traffic Used when the built-in LB is turned off
nat OVN-PREROUTING -p tcp -m addrtype --dst-type LOCAL -m set --match-set KUBE-NODE-PORT-LOCAL-TCP dst -j MARK --set-xmark 0x80000/0x80000 Add specific tags to ExternalTrafficPolicy for Local's Service traffic (TCP) Only used when kube-proxy is using ipvs mode
nat OVN-PREROUTING -p udp -m addrtype --dst-type LOCAL -m set --match-set KUBE-NODE-PORT-LOCAL-UDP dst -j MARK --set-xmark 0x80000/0x80000 Add specific tags to ExternalTrafficPolicy for Local's Service traffic (UDP) Only used when kube-proxy is using ipvs mode
nat OVN-POSTROUTING -m set --match-set ovn40services src -m set --match-set ovn40subnets dst -m mark --mark 0x4000/0x4000 -j SNAT --to-source Use node IP as the source address for access from node to overlay Pods via service IP。 Works only when kube-proxy is using ipvs mode
nat OVN-POSTROUTING -m mark --mark 0x4000/0x4000 -j MASQUERADE Perform SNAT for specific tagged traffic --
nat OVN-POSTROUTING -m set --match-set ovn40subnets src -m set --match-set ovn40subnets dst -j MASQUERADE Perform SNAT for Service traffic between Pods passing through the node --
nat OVN-POSTROUTING -m mark --mark 0x80000/0x80000 -m set --match-set ovn40subnets-distributed-gw dst -j RETURN For Service traffic where ExternalTrafficPolicy is Local, if the Endpoint uses a distributed gateway, SNAT is not required. --
nat OVN-POSTROUTING -m mark --mark 0x80000/0x80000 -j MASQUERADE For Service traffic where ExternalTrafficPolicy is Local, if the Endpoint uses a centralized gateway, SNAT is required. --
nat OVN-POSTROUTING -p tcp -m tcp --tcp-flags SYN NONE -m conntrack --ctstate NEW -j RETURN No SNAT is performed when the Pod IP is exposed to the outside world --
nat OVN-POSTROUTING -s 10.16.0.0/16 -m set ! --match-set ovn40subnets dst -j SNAT --to-source 192.168.0.101 When the Pod accesses the network outside the cluster, if the subnet is NatOutgoing and a centralized gateway with the specified IP is used, perform SNAT 10.16.0.0/16 is the Subnet CIDR,192.168.0.101 is the specified IP of gateway node
nat OVN-POSTROUTING -m set --match-set ovn40subnets-nat src -m set ! --match-set ovn40subnets dst -j MASQUERADE When the Pod accesses the network outside the cluster, if NatOutgoing is enabled on the subnet, perform SNAT --
nat OVN-POSTROUTING -m set --match-set ovn40subnets-nat-policy src -m set ! --match-set ovn40subnets dst -j OVN-NAT-POLICY When Pod accesses the network outside the cluster, if natOutgoingPolicyRules is enabled on the subnet, the packet with the specified policy will perform SNAT ovn40subnets-nat-policy is all subnet segments configured with natOutgoingPolicyRules
nat OVN-POSTROUTING -m mark --mark 0x90001/0x90001 -j MASQUERADE --random-fully When Pod accesses the network outside the cluster, if natOutgoingPolicyRules is enabled on the subnet, the packet with the specified policy will perform SNAT After coming out of OVN-NAT-POLICY, if it is tagged with 0x90001/0x90001, it will do SNAT
nat OVN-POSTROUTING -m mark --mark 0x90002/0x90002 -j RETURN When Pod accesses the network outside the cluster, if natOutgoingPolicyRules is enabled on the subnet, the packet with the specified policy will perform SNAT After coming out of OVN-NAT-POLICY, if it is tagged with 0x90002/0x90002, it will not do SNAT
nat OVN-NAT-POLICY -s 10.0.11.0/24 -m comment --comment natPolicySubnet-net1 -j OVN-NAT-PSUBNET-aa98851157c5 When Pod accesses the network outside the cluster, if natOutgoingPolicyRules is enabled on the subnet, the packet with the specified policy will perform SNAT 10.0.11.0/24 represents the CIDR of the subnet net1, and the rules under the OVN-NAT-PSUBNET-aa98851157c5 chain correspond to the natOutgoingPolicyRules configuration of this subnet
nat OVN-NAT-PSUBNET-xxxxxxxxxxxx -m set --match-set ovn40natpr-418e79269dc5-src src -m set --match-set ovn40natpr-418e79269dc5-dst dst -j MARK --set-xmark 0x90002/0x90002 When Pod accesses the network outside the cluster, if natOutgoingPolicyRules is enabled on the subnet, the packet with the specified policy will perform SNAT 418e79269dc5 indicates the ID of a rule in natOutgoingPolicyRules, which can be viewed through status.natOutgoingPolicyRules[index].RuleID, indicating that srcIPs meets ovn40natpr-418e79269dc5-src, and dstIPS meets ovn40natpr-418e79269dc5- dst will be marked with tag 0x90002
mangle OVN-OUTPUT -d 10.241.39.2/32 -p tcp -m tcp --dport 80 -j MARK --set-xmark 0x90003/0x90003 Introduce kubelet's detection traffic to tproxy with a specific mark
mangle OVN-PREROUTING -d 10.241.39.2/32 -p tcp -m tcp --dport 80 -j TPROXY --on-port 8102 --on-ip 172.18.0.3 --tproxy-mark 0x90004/0x90004 Introduce kubelet's detection traffic to tproxy with a specific mark

微信群 Slack Twitter Support


最后更新: July 13, 2023
创建日期: September 6, 2022

评论

Iptables Rules

Kube-OVN uses ipset and iptables to implement gateway NAT functionality in the default VPC overlay Subnets.

The ipset used is shown in the following table:

Name(IPv4/IPv6) Type Usage
ovn40services/ovn60services hash:net Service CIDR
ovn40subnets/ovn60subnets hash:net Overlay Subnet CIDR and NodeLocal DNS IP address
ovn40subnets-nat/ovn60subnets-nat hash:net Overlay Subnet CIDRs that enable NatOutgoing
ovn40subnets-distributed-gw/ovn60subnets-distributed-gw hash:net Overlay Subnet CIDRs that use distributed gateway
ovn40other-node/ovn60other-node hash:net Internal IP addresses for other Nodes
ovn40local-pod-ip-nat/ovn60local-pod-ip-nat hash:ip Deprecated
ovn40subnets-nat-policy hash:net All subnet cidrs configured with natOutgoingPolicyRules
ovn40natpr-418e79269dc5-dst hash:net The dstIPs corresponding to the rule in natOutgoingPolicyRules
ovn40natpr-418e79269dc5-src hash:net The srcIPs corresponding to the rule in natOutgoingPolicyRules

The iptables rules (IPv4) used are shown in the following table:

Table Chain Rule Usage Note
filter INPUT -m set --match-set ovn40services src -j ACCEPT Allow k8s service and pod traffic to pass through --
filter INPUT -m set --match-set ovn40services dst -j ACCEPT Allow k8s service and pod traffic to pass through --
filter INPUT -m set --match-set ovn40subnets src -j ACCEPT Allow k8s service and pod traffic to pass through --
filter INPUT -m set --match-set ovn40subnets dst -j ACCEPT Allow k8s service and pod traffic to pass through --
filter FORWARD -m set --match-set ovn40services src -j ACCEPT Allow k8s service and pod traffic to pass through --
filter FORWARD -m set --match-set ovn40services dst -j ACCEPT Allow k8s service and pod traffic to pass through --
filter FORWARD -m set --match-set ovn40subnets src -j ACCEPT Allow k8s service and pod traffic to pass through --
filter FORWARD -m set --match-set ovn40subnets dst -j ACCEPT Allow k8s service and pod traffic to pass through --
filter FORWARD -s 10.16.0.0/16 -m comment --comment "ovn-subnet-gateway,ovn-default" Used to count packets from the subnet to the external network "10.16.0.0/16" is the cidr of the subnet, the "ovn-subnet-gateway" before the "," in comment is used to identify the iptables rule used to count the subnet inbound and outbound gateway packets, and the "ovn-default" after the "," is the name of the subnet
filter FORWARD -d 10.16.0.0/16 -m comment --comment "ovn-subnet-gateway,ovn-default" Used to count packets from the external network accessing the subnet "10.16.0.0/16" is the cidr of the subnet, the "ovn-subnet-gateway" before the "," in comment is used to identify the iptables rule used to count the subnet inbound and outbound gateway packets, and the "ovn-default" after the "," is the name of the subnet
filter OUTPUT -p udp -m udp --dport 6081 -j MARK --set-xmark 0x0 Clear traffic tag to prevent SNAT UDP: bad checksum on VXLAN interface
nat PREROUTING -m comment --comment "kube-ovn prerouting rules" -j OVN-PREROUTING Enter OVN-PREROUTING chain processing --
nat POSTROUTING -m comment --comment "kube-ovn postrouting rules" -j OVN-POSTROUTING Enter OVN-POSTROUTING chain processing --
nat OVN-PREROUTING -i ovn0 -m set --match-set ovn40subnets src -m set --match-set ovn40services dst -j MARK --set-xmark 0x4000/0x4000 Adding masquerade tags to Pod access service traffic Used when the built-in LB is turned off
nat OVN-PREROUTING -p tcp -m addrtype --dst-type LOCAL -m set --match-set KUBE-NODE-PORT-LOCAL-TCP dst -j MARK --set-xmark 0x80000/0x80000 Add specific tags to ExternalTrafficPolicy for Local's Service traffic (TCP) Only used when kube-proxy is using ipvs mode
nat OVN-PREROUTING -p udp -m addrtype --dst-type LOCAL -m set --match-set KUBE-NODE-PORT-LOCAL-UDP dst -j MARK --set-xmark 0x80000/0x80000 Add specific tags to ExternalTrafficPolicy for Local's Service traffic (UDP) Only used when kube-proxy is using ipvs mode
nat OVN-POSTROUTING -m set --match-set ovn40services src -m set --match-set ovn40subnets dst -m mark --mark 0x4000/0x4000 -j SNAT --to-source Use node IP as the source address for access from node to overlay Pods via service IP。 Works only when kube-proxy is using ipvs mode
nat OVN-POSTROUTING -m mark --mark 0x4000/0x4000 -j MASQUERADE Perform SNAT for specific tagged traffic --
nat OVN-POSTROUTING -m set --match-set ovn40subnets src -m set --match-set ovn40subnets dst -j MASQUERADE Perform SNAT for Service traffic between Pods passing through the node --
nat OVN-POSTROUTING -m mark --mark 0x80000/0x80000 -m set --match-set ovn40subnets-distributed-gw dst -j RETURN For Service traffic where ExternalTrafficPolicy is Local, if the Endpoint uses a distributed gateway, SNAT is not required. --
nat OVN-POSTROUTING -m mark --mark 0x80000/0x80000 -j MASQUERADE For Service traffic where ExternalTrafficPolicy is Local, if the Endpoint uses a centralized gateway, SNAT is required. --
nat OVN-POSTROUTING -p tcp -m tcp --tcp-flags SYN NONE -m conntrack --ctstate NEW -j RETURN No SNAT is performed when the Pod IP is exposed to the outside world --
nat OVN-POSTROUTING -s 10.16.0.0/16 -m set ! --match-set ovn40subnets dst -j SNAT --to-source 192.168.0.101 When the Pod accesses the network outside the cluster, if the subnet is NatOutgoing and a centralized gateway with the specified IP is used, perform SNAT 10.16.0.0/16 is the Subnet CIDR,192.168.0.101 is the specified IP of gateway node
nat OVN-POSTROUTING -m set --match-set ovn40subnets-nat src -m set ! --match-set ovn40subnets dst -j MASQUERADE When the Pod accesses the network outside the cluster, if NatOutgoing is enabled on the subnet, perform SNAT --
nat OVN-POSTROUTING -m set --match-set ovn40subnets-nat-policy src -m set ! --match-set ovn40subnets dst -j OVN-NAT-POLICY When Pod accesses the network outside the cluster, if natOutgoingPolicyRules is enabled on the subnet, the packet with the specified policy will perform SNAT ovn40subnets-nat-policy is all subnet segments configured with natOutgoingPolicyRules
nat OVN-POSTROUTING -m mark --mark 0x90001/0x90001 -j MASQUERADE --random-fully When Pod accesses the network outside the cluster, if natOutgoingPolicyRules is enabled on the subnet, the packet with the specified policy will perform SNAT After coming out of OVN-NAT-POLICY, if it is tagged with 0x90001/0x90001, it will do SNAT
nat OVN-POSTROUTING -m mark --mark 0x90002/0x90002 -j RETURN When Pod accesses the network outside the cluster, if natOutgoingPolicyRules is enabled on the subnet, the packet with the specified policy will perform SNAT After coming out of OVN-NAT-POLICY, if it is tagged with 0x90002/0x90002, it will not do SNAT
nat OVN-NAT-POLICY -s 10.0.11.0/24 -m comment --comment natPolicySubnet-net1 -j OVN-NAT-PSUBNET-aa98851157c5 When Pod accesses the network outside the cluster, if natOutgoingPolicyRules is enabled on the subnet, the packet with the specified policy will perform SNAT 10.0.11.0/24 represents the CIDR of the subnet net1, and the rules under the OVN-NAT-PSUBNET-aa98851157c5 chain correspond to the natOutgoingPolicyRules configuration of this subnet
nat OVN-NAT-PSUBNET-xxxxxxxxxxxx -m set --match-set ovn40natpr-418e79269dc5-src src -m set --match-set ovn40natpr-418e79269dc5-dst dst -j MARK --set-xmark 0x90002/0x90002 When Pod accesses the network outside the cluster, if natOutgoingPolicyRules is enabled on the subnet, the packet with the specified policy will perform SNAT 418e79269dc5 indicates the ID of a rule in natOutgoingPolicyRules, which can be viewed through status.natOutgoingPolicyRules[index].RuleID, indicating that srcIPs meets ovn40natpr-418e79269dc5-src, and dstIPS meets ovn40natpr-418e79269dc5- dst will be marked with tag 0x90002
mangle OVN-OUTPUT -d 10.241.39.2/32 -p tcp -m tcp --dport 80 -j MARK --set-xmark 0x90003/0x90003 Introduce kubelet's detection traffic to tproxy with a specific mark
mangle OVN-PREROUTING -d 10.241.39.2/32 -p tcp -m tcp --dport 80 -j TPROXY --on-port 8102 --on-ip 172.18.0.3 --tproxy-mark 0x90004/0x90004 Introduce kubelet's detection traffic to tproxy with a specific mark

微信群 Slack Twitter Support


Last update: July 13, 2023
Created: September 6, 2022

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/kube-ovn-api/index.html b/v1.12.x/en/reference/kube-ovn-api/index.html index dfddb90fe..6c25d25c7 100644 --- a/v1.12.x/en/reference/kube-ovn-api/index.html +++ b/v1.12.x/en/reference/kube-ovn-api/index.html @@ -1,4 +1,4 @@ - Kube-OVN API Reference - Kube-OVN Document

Kube-OVN API Reference

Based on Kube-OVN v1.12.0, we have compiled a list of CRD resources supported by Kube-OVN, listing the types and meanings of each field of CRD definition for reference.

Generic Condition Definition

Property Name Type Description
type String Type of status
status String The value of status, in the range of True, False or Unknown
reason String The reason for the status change
message String The specific message of the status change
lastUpdateTime Time The last time the status was updated
lastTransitionTime Time Time of last status type change

In each CRD definition, the Condition field in Status follows the above format, so we explain it in advance.

Subnet Definition

Subnet

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value Subnet
metadata ObjectMeta Standard Kubernetes resource metadata information
spec SubnetSpec Subnet specific configuration information
status SubnetStatus Subnet status information

SubnetSpec

Property Name Type Description
default Bool Whether this subnet is the default subnet
vpc String The vpc which the subnet belongs to, default is ovn-cluster
protocol String IP protocol, the value is in the range of IPv4, IPv6 or Dual
namespaces []String The list of namespaces bound to this subnet
cidrBlock String The range of the subnet, e.g. 10.16.0.0/16
gateway String The gateway address of the subnet, the default value is the first available address under the CIDRBlock of the subnet
excludeIps []String The range of addresses under this subnet that will not be automatically assigned
provider String Default value is ovn. In the case of multiple NICs, the value is <name>.<namespace> of the NetworkAttachmentDefinition, Kube-OVN will use this information to find the corresponding subnet resource
gatewayType String The gateway type in overlay mode, either distributed or centralized
gatewayNode String The gateway node when the gateway mode is centralized, node names can be comma-separated
natOutgoing Bool Whether the outgoing traffic is NAT
externalEgressGateway String The address of the external gateway. This parameter and the natOutgoing parameter cannot be set at the same time
policyRoutingPriority Uint32 Policy route priority. Used to control the forwarding of traffic to the external gateway address after the subnet gateway
policyRoutingTableID Uint32 The TableID of the local policy routing table, should be different for each subnet to avoid conflicts
private Bool Whether the subnet is a private subnet, which denies access to addresses inside the subnet if the subnet is private
allowSubnets []String If the subnet is a private subnet, the set of addresses that are allowed to access the subnet
vlan String The name of vlan to which the subnet is bound
vips []String The virtual-ip parameter information for virtual type lsp on the subnet
logicalGateway Bool Whether to enable logical gateway
disableGatewayCheck Bool Whether to skip the gateway connectivity check when creating a pod
disableInterConnection Bool Whether to enable subnet interconnection across clusters
enableDHCP Bool Whether to configure dhcp configuration options for lsps belong this subnet
dhcpV4Options String The DHCP_Options record associated with lsp dhcpv4_options on the subnet
dhcpV6Options String The DHCP_Options record associated with lsp dhcpv6_options on the subnet
enableIPv6RA Bool Whether to configure the ipv6_ra_configs parameter for the lrp port of the router connected to the subnet
ipv6RAConfigs String The ipv6_ra_configs parameter configuration for the lrp port of the router connected to the subnet
acls []Acl The acls record associated with the logical-switch of the subnet
u2oInterconnection Bool Whether to enable interconnection mode for Overlay/Underlay
enableLb *Bool Whether the logical-switch of the subnet is associated with load-balancer records
enableEcmp Bool Centralized subnet, whether to enable ECMP routing
Acl
Property Name Type Description
direction String Restrict the direction of acl, which value is from-lport or to-lport
priority Int Acl priority, in the range 0 to 32767
match String Acl rule match expression
action String The action of the rule, which value is in the range of allow-related, allow-stateless, allow, drop, reject

SubnetStatus

Property Name Type Description
conditions []SubnetCondition Subnet status change information, refer to the beginning of the document for the definition of Condition
v4AvailableIPs Float64 Number of available IPv4 IPs
v4availableIPrange String The available range of IPv4 addresses on the subnet
v4UsingIPs Float64 Number of used IPv4 IPs
v4usingIPrange String Used IPv4 address ranges on the subnet
v6AvailableIPs Float64 Number of available IPv6 IPs
v6availableIPrange String The available range of IPv6 addresses on the subnet
v6UsingIPs Float64 Number of used IPv6 IPs
v6usingIPrange String Used IPv6 address ranges on the subnet
sctivateGateway String The currently working gateway node in centralized subnet of master-backup mode
dhcpV4OptionsUUID String The DHCP_Options record identifier associated with the lsp dhcpv4_options on the subnet
dhcpV6OptionsUUID String The DHCP_Options record identifier associated with the lsp dhcpv6_options on the subnet
u2oInterconnectionIP String The IP address used for interconnection when Overlay/Underlay interconnection mode is enabled

IP Definition

IP

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource have the value IP
metadata ObjectMeta Standard Kubernetes resource metadata information
spec IPSpec IP specific configuration information

IPSepc

Property Name Type Description
podName String Pod name which assigned with this IP
namespace String The name of the namespace where the pod is bound
subnet String The subnet which the ip belongs to
attachSubnets []String The name of the other subnets attached to this primary IP (field deprecated)
nodeName String The name of the node where the pod is bound
ipAddress String IP address, in v4IP,v6IP format for dual-stack cases
v4IPAddress String IPv4 IP address
v6IPAddress String IPv6 IP address
attachIPs []String Other IP addresses attached to this primary IP (field is deprecated)
macAddress String The Mac address of the bound pod
attachMacs []String Other Mac addresses attached to this primary IP (field deprecated)
containerID String The Container ID corresponding to the bound pod
podType String Special workload pod, can be StatefulSet, VirtualMachine or empty

Underlay configuration

Vlan

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all instances of this resource will be kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value Vlan
metadata ObjectMeta Standard Kubernetes resource metadata information
spec VlanSpec Vlan specific configuration information
status VlanStatus Vlan status information

VlanSpec

Property Name Type Description
id Int Vlan tag number, in the range of 0~4096
provider String The name of the ProviderNetwork to which the vlan is bound

VlanStatus

Property Name Type Description
subnets []String The list of subnets to which the vlan is bound
conditions []VlanCondition Vlan status change information, refer to the beginning of the document for the definition of Condition

ProviderNetwork

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value ProviderNetwork
metadata ObjectMeta Standard Kubernetes resource metadata information
spec ProviderNetworkSpec ProviderNetwork specific configuration information
status ProviderNetworkStatus ProviderNetwork status information

ProviderNetworkSpec

Property Name Type Description
defaultInterface String The name of the NIC interface used by default for this bridge network
customInterfaces []CustomInterface The special NIC configuration used by this bridge network
excludeNodes []String The names of the nodes that will not be bound to this bridge network
exchangeLinkName Bool Whether to exchange the bridge NIC and the corresponding OVS bridge name
CustomInterface
Property Name Type Description
interface String NIC interface name used for underlay
nodes []String List of nodes using the custom NIC interface

ProviderNetworkStatus

Property Name Type Description
ready Bool Whether the current bridge network is in the ready state
readyNodes []String The name of the node whose bridge network is ready
notReadyNodes []String The name of the node whose bridge network is not ready
vlans []String The name of the vlan to which the bridge network is bound
conditions []ProviderNetworkCondition ProviderNetwork status change information, refer to the beginning of the document for the definition of Condition

Vpc Definition

Vpc

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value Vpc
metadata ObjectMeta Standard Kubernetes resource metadata information
spec VpcSpec Vpc specific configuration information
status VpcStatus Vpc status information

VpcSpec

Property Name Type Description
namespaces []String List of namespaces bound by Vpc
staticRoutes []*StaticRoute The static route information configured under Vpc
policyRoutes []*PolicyRoute The policy route information configured under Vpc
vpcPeerings []*VpcPeering Vpc interconnection information
enableExternal Bool Whether vpc is connected to an external switch
StaticRoute
Property Name Type Description
policy String Routing policy, takes the value of policySrc or policyDst
cidr String Routing cidr value
nextHopIP String The next hop information of the route
PolicyRoute
Property Name Type Description
priority Int32 Priority for policy route
match String Match expression for policy route
action String Action for policy route, the value is in the range of allow, drop, reroute
nextHopIP String The next hop of the policy route, separated by commas in the case of ECMP routing
VpcPeering
Property Name Type Description
remoteVpc String Name of the interconnected peering vpc
localConnectIP String The local ip for vpc used to connect to peer vpc

VpcStatus

Property Name Type Description
conditions []VpcCondition Vpc status change information, refer to the beginning of the documentation for the definition of Condition
standby Bool Whether the vpc creation is complete, the subnet under the vpc needs to wait for the vpc creation to complete other proceeding
default Bool Whether it is the default vpc
defaultLogicalSwitch String The default subnet under vpc
router String The logical-router name for the vpc
tcpLoadBalancer String TCP LB information for vpc
udpLoadBalancer String UDP LB information for vpc
tcpSessionLoadBalancer String TCP Session Hold LB Information for Vpc
udpSessionLoadBalancer String UDP session hold LB information for Vpc
subnets []String List of subnets for vpc
vpcPeerings []String List of peer vpcs for vpc interconnection
enableExternal Bool Whether the vpc is connected to an external switch

VpcNatGateway

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value VpcNatGateway
metadata ObjectMeta Standard Kubernetes resource metadata information
spec VpcNatSpec Vpc gateway specific configuration information

VpcNatSpec

Property Name Type Description
vpc String Vpc name which the vpc gateway belongs to
subnet String The name of the subnet to which the gateway pod belongs
lanIp String The IP address assigned to the gateway pod
selector []String Standard Kubernetes selector match information
tolerations []VpcNatToleration Standard Kubernetes tolerance information
VpcNatToleration
Property Name Type Description
key String The key information of the taint tolerance
operator String Takes the value of Exists or Equal
value String The value information of the taint tolerance
effect String The effect of the taint tolerance, takes the value of NoExecute, NoSchedule, or PreferNoSchedule
tolerationSeconds Int64 The amount of time the pod can continue to run on the node after the taint is added

The meaning of the above tolerance fields can be found in the official Kubernetes documentation Taint and Tolerance.

IptablesEIP

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource have the value IptablesEIP
metadata ObjectMeta Standard Kubernetes resource metadata information
spec IptablesEipSpec IptablesEIP specific configuration information used by vpc gateway
status IptablesEipStatus IptablesEIP status information used by vpc gateway

IptablesEipSpec

Property Name Type Description
v4ip String IptablesEIP v4 address
v6ip String IptablesEIP v6 address
macAddress String The assigned mac address, not actually used
natGwDp String Vpc gateway name

IptablesEipStatus

Property Name Type Description
ready Bool Whether IptablesEIP is configured complete
ip String The IP address used by IptablesEIP, currently only IPv4 addresses are supported
redo String IptablesEIP crd creation or update time
nat String The type of IptablesEIP, either fip, snat, or dnat
conditions []IptablesEIPCondition IptablesEIP status change information, refer to the beginning of the documentation for the definition of Condition

IptablesFIPRule

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource have the value IptablesFIPRule
metadata ObjectMeta Standard Kubernetes resource metadata information
spec IptablesFIPRuleSpec The IptablesFIPRule specific configuration information used by vpc gateway
status IptablesFIPRuleStatus IptablesFIPRule status information used by vpc gateway

IptablesFIPRuleSpec

Property Name Type Description
eip String Name of the IptablesEIP used for IptablesFIPRule
internalIp String The corresponding internal IP address

IptablesFIPRuleStatus

Property Name Type Description
ready Bool Whether IptablesFIPRule is configured or not
v4ip String The v4 IP address used by IptablesEIP
v6ip String The v6 IP address used by IptablesEIP
natGwDp String Vpc gateway name
redo String IptablesFIPRule crd creation or update time
conditions []IptablesFIPRuleCondition IptablesFIPRule status change information, refer to the beginning of the documentation for the definition of Condition

IptablesSnatRule

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource have the value IptablesSnatRule
metadata ObjectMeta Standard Kubernetes resource metadata information
spec IptablesSnatRuleSpec The IptablesSnatRule specific configuration information used by the vpc gateway
status IptablesSnatRuleStatus IptablesSnatRule status information used by vpc gateway

IptablesSnatRuleSpec

Property Name Type Description
eip String Name of the IptablesEIP used by IptablesSnatRule
internalIp String IptablesSnatRule's corresponding internal IP address

IptablesSnatRuleStatus

Property Name Type Description
ready Bool Whether the configuration is complete
v4ip String The v4 IP address used by IptablesSnatRule
v6ip String The v6 IP address used by IptablesSnatRule
natGwDp String Vpc gateway name
redo String IptablesSnatRule crd creation or update time
conditions []IptablesSnatRuleCondition IptablesSnatRule status change information, refer to the beginning of the documentation for the definition of Condition

IptablesDnatRule

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource have the value IptablesDnatRule
metadata ObjectMeta Standard Kubernetes resource metadata information
spec IptablesDnatRuleSpec The IptablesDnatRule specific configuration information used by vpc gateway
status IptablesDnatRuleStatus IptablesDnatRule status information used by vpc gateway

IptablesDnatRuleSpec

Property Name Type Description
eip Sting Name of IptablesEIP used by IptablesDnatRule
externalPort Sting External port used by IptablesDnatRule
protocol Sting Vpc gateway dnat protocol type
internalIp Sting Internal IP address used by IptablesDnatRule
internalPort Sting Internal port used by IptablesDnatRule

IptablesDnatRuleStatus

Property Name Type Description
ready Bool Whether the configuration is complete
v4ip String The v4 IP address used by IptablesDnatRule
v6ip String The v6 IP address used by IptablesDnatRule
natGwDp String Vpc gateway name
redo String IptablesDnatRule crd creation or update time
conditions []IptablesDnatRuleCondition IptablesDnatRule Status change information, refer to the beginning of the documentation for the definition of Condition

VpcDns

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value VpcDns
metadata ObjectMeta Standard Kubernetes resource metadata information
spec VpcDnsSpec VpcDns specific configuration information
status VpcDnsStatus VpcDns status information

VpcDnsSpec

Property Name Type Description
vpc String Name of the vpc where VpcDns is located
subnet String The subnet name of the address assigned to the VpcDns pod

VpcDnsStatus

Property Name Type Description
conditions []VpcDnsCondition VpcDns status change information, refer to the beginning of the document for the definition of Condition
active Bool Whether VpcDns is in use

For detailed documentation on the use of VpcDns, see Customizing VPC DNS.

SwitchLBRule

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value SwitchLBRule
metadata ObjectMeta Standard Kubernetes resource metadata information
spec SwitchLBRuleSpec SwitchLBRule specific configuration information
status SwitchLBRuleStatus SwitchLBRule status information

SwitchLBRuleSpec

Property Name Type Description
vip String Vip address of SwitchLBRule
namespace String SwitchLBRule's namespace
selector []String Standard Kubernetes selector match information
sessionAffinity String Standard Kubernetes service sessionAffinity value
ports []SlrPort List of SwitchLBRule ports

For detailed configuration information of SwitchLBRule, you can refer to Customizing VPC Internal Load Balancing.

SlrPort
Property Name Type Description
name String Port name
port Int32 Port number
targetPort Int32 Target port of SwitchLBRule
protocol String Protocol type

SwitchLBRuleStatus

Property Name Type Description
conditions []SwitchLBRuleCondition SwitchLBRule status change information, refer to the beginning of the document for the definition of Condition
ports String Port information
service String Name of the service

Security Group and Vip

SecurityGroup

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have a value of SecurityGroup
metadata ObjectMeta Standard Kubernetes resource metadata information
spec SecurityGroupSpec Security Group specific configuration information
status SecurityGroupStatus Security group status information

SecurityGroupSpec

Property Name Type Description
ingressRules []*SgRule Inbound security group rules
egressRules []*SgRule Outbound security group rules
allowSameGroupTraffic Bool Whether lsps in the same security group can interoperate and whether traffic rules need to be updated
SgRule
Property Name Type Description
ipVersion String IP version number, ipv4 or ipv6
protocol String The value of icmp, tcp, or udp
priority Int Acl priority. The value range is 1-200, the smaller the value, the higher the priority.
remoteType String The value is either address or securityGroup
remoteAddress String The address of the other side
remoteSecurityGroup String The name of security group on the other side
portRangeMin Int The starting value of the port range, the minimum value is 1.
portRangeMax Int The ending value of the port range, the maximum value is 65535.
policy String The value is allow or drop

SecurityGroupStatus

Property Name Type Description
portGroup String The name of the port-group for the security group
allowSameGroupTraffic Bool Whether lsps in the same security group can interoperate, and whether the security group traffic rules need to be updated
ingressMd5 String The MD5 value of the inbound security group rule
egressMd5 String The MD5 value of the outbound security group rule
ingressLastSyncSuccess Bool Whether the last synchronization of the inbound rule was successful
egressLastSyncSuccess Bool Whether the last synchronization of the outbound rule was successful

Vip

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value Vip
metadata ObjectMeta Standard Kubernetes resource metadata information
spec VipSpec Vip specific configuration information
status VipStatus Vip status information

VipSpec

Property Name Type Description
namespace String Vip's namespace
subnet String Vip's subnet
v4ip String Vip IPv4 ip address
v6ip String Vip IPv6 ip address
macAddress String Vip mac address
parentV4ip String Not currently in use
parentV6ip String Not currently in use
parentMac String Not currently in use
attachSubnets []String This field is deprecated and no longer used

VipStatus

Property Name Type Description
conditions []VipCondition Vip status change information, refer to the beginning of the documentation for the definition of Condition
ready Bool Vip is ready or not
v4ip String Vip IPv4 ip address, should be the same as the spec field
v6ip String Vip IPv6 ip address, should be the same as the spec field
mac String The vip mac address, which should be the same as the spec field
pv4ip String Not currently used
pv6ip String Not currently used
pmac String Not currently used

OvnEip

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value OvnEip
metadata ObjectMeta Standard Kubernetes resource metadata information
spec OvnEipSpec OvnEip specific configuration information for default vpc
status OvnEipStatus OvnEip status information for default vpc

OvnEipSpec

Property Name Type Description
externalSubnet String OvnEip's subnet name
v4ip String OvnEip IP address
macAddress String OvnEip Mac address
type String OvnEip use type, the value can be fip, snat or lrp

OvnEipStatus

Property Name Type Description
conditions []OvnEipCondition OvnEip status change information, refer to the beginning of the documentation for the definition of Condition
v4ip String The IPv4 ip address used by ovnEip
macAddress String Mac address used by ovnEip

OvnFip

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value OvnFip
metadata ObjectMeta Standard Kubernetes resource metadata information
spec OvnFipSpec OvnFip specific configuration information in default vpc
status OvnFipStatus OvnFip status information in default vpc

OvnFipSpec

Property Name Type Description
ovnEip String Name of the bound ovnEip
ipName String The IP crd name corresponding to the bound Pod

OvnFipStatus

Property Name Type Description
ready Bool OvnFip is ready or not
v4Eip String Name of the ovnEip to which ovnFip is bound
v4Ip String The ovnEip address currently in use
macAddress String OvnFip's configured mac address
vpc String The name of the vpc where ovnFip is located
conditions []OvnFipCondition OvnFip status change information, refer to the beginning of the document for the definition of Condition

OvnSnatRule

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value OvnSnatRule
metadata ObjectMeta Standard Kubernetes resource metadata information
spec OvnSnatRuleSpec OvnSnatRule specific configuration information in default vpc
status OvnSnatRuleStatus OvnSnatRule status information in default vpc

OvnSnatRuleSpec

Property Name Type Description
ovnEip String Name of the ovnEip to which ovnSnatRule is bound
vpcSubnet String The name of the subnet configured by ovnSnatRule
ipName String The IP crd name corresponding to the ovnSnatRule bound Pod

OvnSnatRuleStatus

Property Name Type Description
ready Bool OvnSnatRule is ready or not
v4Eip String The ovnEip address to which ovnSnatRule is bound
v4IpCidr String The cidr address used to configure snat in the logical-router
vpc String The name of the vpc where ovnSnatRule is located
conditions []OvnSnatRuleCondition OvnSnatRule status change information, refer to the beginning of the document for the definition of Condition

微信群 Slack Twitter Support


最后更新: February 28, 2023
创建日期: February 16, 2023

评论

Kube-OVN API Reference

Based on Kube-OVN v1.12.0, we have compiled a list of CRD resources supported by Kube-OVN, listing the types and meanings of each field of CRD definition for reference.

Generic Condition Definition

Property Name Type Description
type String Type of status
status String The value of status, in the range of True, False or Unknown
reason String The reason for the status change
message String The specific message of the status change
lastUpdateTime Time The last time the status was updated
lastTransitionTime Time Time of last status type change

In each CRD definition, the Condition field in Status follows the above format, so we explain it in advance.

Subnet Definition

Subnet

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value Subnet
metadata ObjectMeta Standard Kubernetes resource metadata information
spec SubnetSpec Subnet specific configuration information
status SubnetStatus Subnet status information

SubnetSpec

Property Name Type Description
default Bool Whether this subnet is the default subnet
vpc String The vpc which the subnet belongs to, default is ovn-cluster
protocol String IP protocol, the value is in the range of IPv4, IPv6 or Dual
namespaces []String The list of namespaces bound to this subnet
cidrBlock String The range of the subnet, e.g. 10.16.0.0/16
gateway String The gateway address of the subnet, the default value is the first available address under the CIDRBlock of the subnet
excludeIps []String The range of addresses under this subnet that will not be automatically assigned
provider String Default value is ovn. In the case of multiple NICs, the value is <name>.<namespace> of the NetworkAttachmentDefinition, Kube-OVN will use this information to find the corresponding subnet resource
gatewayType String The gateway type in overlay mode, either distributed or centralized
gatewayNode String The gateway node when the gateway mode is centralized, node names can be comma-separated
natOutgoing Bool Whether the outgoing traffic is NAT
externalEgressGateway String The address of the external gateway. This parameter and the natOutgoing parameter cannot be set at the same time
policyRoutingPriority Uint32 Policy route priority. Used to control the forwarding of traffic to the external gateway address after the subnet gateway
policyRoutingTableID Uint32 The TableID of the local policy routing table, should be different for each subnet to avoid conflicts
private Bool Whether the subnet is a private subnet, which denies access to addresses inside the subnet if the subnet is private
allowSubnets []String If the subnet is a private subnet, the set of addresses that are allowed to access the subnet
vlan String The name of vlan to which the subnet is bound
vips []String The virtual-ip parameter information for virtual type lsp on the subnet
logicalGateway Bool Whether to enable logical gateway
disableGatewayCheck Bool Whether to skip the gateway connectivity check when creating a pod
disableInterConnection Bool Whether to enable subnet interconnection across clusters
enableDHCP Bool Whether to configure dhcp configuration options for lsps belong this subnet
dhcpV4Options String The DHCP_Options record associated with lsp dhcpv4_options on the subnet
dhcpV6Options String The DHCP_Options record associated with lsp dhcpv6_options on the subnet
enableIPv6RA Bool Whether to configure the ipv6_ra_configs parameter for the lrp port of the router connected to the subnet
ipv6RAConfigs String The ipv6_ra_configs parameter configuration for the lrp port of the router connected to the subnet
acls []Acl The acls record associated with the logical-switch of the subnet
u2oInterconnection Bool Whether to enable interconnection mode for Overlay/Underlay
enableLb *Bool Whether the logical-switch of the subnet is associated with load-balancer records
enableEcmp Bool Centralized subnet, whether to enable ECMP routing
Acl
Property Name Type Description
direction String Restrict the direction of acl, which value is from-lport or to-lport
priority Int Acl priority, in the range 0 to 32767
match String Acl rule match expression
action String The action of the rule, which value is in the range of allow-related, allow-stateless, allow, drop, reject

SubnetStatus

Property Name Type Description
conditions []SubnetCondition Subnet status change information, refer to the beginning of the document for the definition of Condition
v4AvailableIPs Float64 Number of available IPv4 IPs
v4availableIPrange String The available range of IPv4 addresses on the subnet
v4UsingIPs Float64 Number of used IPv4 IPs
v4usingIPrange String Used IPv4 address ranges on the subnet
v6AvailableIPs Float64 Number of available IPv6 IPs
v6availableIPrange String The available range of IPv6 addresses on the subnet
v6UsingIPs Float64 Number of used IPv6 IPs
v6usingIPrange String Used IPv6 address ranges on the subnet
sctivateGateway String The currently working gateway node in centralized subnet of master-backup mode
dhcpV4OptionsUUID String The DHCP_Options record identifier associated with the lsp dhcpv4_options on the subnet
dhcpV6OptionsUUID String The DHCP_Options record identifier associated with the lsp dhcpv6_options on the subnet
u2oInterconnectionIP String The IP address used for interconnection when Overlay/Underlay interconnection mode is enabled

IP Definition

IP

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource have the value IP
metadata ObjectMeta Standard Kubernetes resource metadata information
spec IPSpec IP specific configuration information

IPSepc

Property Name Type Description
podName String Pod name which assigned with this IP
namespace String The name of the namespace where the pod is bound
subnet String The subnet which the ip belongs to
attachSubnets []String The name of the other subnets attached to this primary IP (field deprecated)
nodeName String The name of the node where the pod is bound
ipAddress String IP address, in v4IP,v6IP format for dual-stack cases
v4IPAddress String IPv4 IP address
v6IPAddress String IPv6 IP address
attachIPs []String Other IP addresses attached to this primary IP (field is deprecated)
macAddress String The Mac address of the bound pod
attachMacs []String Other Mac addresses attached to this primary IP (field deprecated)
containerID String The Container ID corresponding to the bound pod
podType String Special workload pod, can be StatefulSet, VirtualMachine or empty

Underlay configuration

Vlan

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all instances of this resource will be kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value Vlan
metadata ObjectMeta Standard Kubernetes resource metadata information
spec VlanSpec Vlan specific configuration information
status VlanStatus Vlan status information

VlanSpec

Property Name Type Description
id Int Vlan tag number, in the range of 0~4096
provider String The name of the ProviderNetwork to which the vlan is bound

VlanStatus

Property Name Type Description
subnets []String The list of subnets to which the vlan is bound
conditions []VlanCondition Vlan status change information, refer to the beginning of the document for the definition of Condition

ProviderNetwork

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value ProviderNetwork
metadata ObjectMeta Standard Kubernetes resource metadata information
spec ProviderNetworkSpec ProviderNetwork specific configuration information
status ProviderNetworkStatus ProviderNetwork status information

ProviderNetworkSpec

Property Name Type Description
defaultInterface String The name of the NIC interface used by default for this bridge network
customInterfaces []CustomInterface The special NIC configuration used by this bridge network
excludeNodes []String The names of the nodes that will not be bound to this bridge network
exchangeLinkName Bool Whether to exchange the bridge NIC and the corresponding OVS bridge name
CustomInterface
Property Name Type Description
interface String NIC interface name used for underlay
nodes []String List of nodes using the custom NIC interface

ProviderNetworkStatus

Property Name Type Description
ready Bool Whether the current bridge network is in the ready state
readyNodes []String The name of the node whose bridge network is ready
notReadyNodes []String The name of the node whose bridge network is not ready
vlans []String The name of the vlan to which the bridge network is bound
conditions []ProviderNetworkCondition ProviderNetwork status change information, refer to the beginning of the document for the definition of Condition

Vpc Definition

Vpc

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value Vpc
metadata ObjectMeta Standard Kubernetes resource metadata information
spec VpcSpec Vpc specific configuration information
status VpcStatus Vpc status information

VpcSpec

Property Name Type Description
namespaces []String List of namespaces bound by Vpc
staticRoutes []*StaticRoute The static route information configured under Vpc
policyRoutes []*PolicyRoute The policy route information configured under Vpc
vpcPeerings []*VpcPeering Vpc interconnection information
enableExternal Bool Whether vpc is connected to an external switch
StaticRoute
Property Name Type Description
policy String Routing policy, takes the value of policySrc or policyDst
cidr String Routing cidr value
nextHopIP String The next hop information of the route
PolicyRoute
Property Name Type Description
priority Int32 Priority for policy route
match String Match expression for policy route
action String Action for policy route, the value is in the range of allow, drop, reroute
nextHopIP String The next hop of the policy route, separated by commas in the case of ECMP routing
VpcPeering
Property Name Type Description
remoteVpc String Name of the interconnected peering vpc
localConnectIP String The local ip for vpc used to connect to peer vpc

VpcStatus

Property Name Type Description
conditions []VpcCondition Vpc status change information, refer to the beginning of the documentation for the definition of Condition
standby Bool Whether the vpc creation is complete, the subnet under the vpc needs to wait for the vpc creation to complete other proceeding
default Bool Whether it is the default vpc
defaultLogicalSwitch String The default subnet under vpc
router String The logical-router name for the vpc
tcpLoadBalancer String TCP LB information for vpc
udpLoadBalancer String UDP LB information for vpc
tcpSessionLoadBalancer String TCP Session Hold LB Information for Vpc
udpSessionLoadBalancer String UDP session hold LB information for Vpc
subnets []String List of subnets for vpc
vpcPeerings []String List of peer vpcs for vpc interconnection
enableExternal Bool Whether the vpc is connected to an external switch

VpcNatGateway

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value VpcNatGateway
metadata ObjectMeta Standard Kubernetes resource metadata information
spec VpcNatSpec Vpc gateway specific configuration information

VpcNatSpec

Property Name Type Description
vpc String Vpc name which the vpc gateway belongs to
subnet String The name of the subnet to which the gateway pod belongs
lanIp String The IP address assigned to the gateway pod
selector []String Standard Kubernetes selector match information
tolerations []VpcNatToleration Standard Kubernetes tolerance information
VpcNatToleration
Property Name Type Description
key String The key information of the taint tolerance
operator String Takes the value of Exists or Equal
value String The value information of the taint tolerance
effect String The effect of the taint tolerance, takes the value of NoExecute, NoSchedule, or PreferNoSchedule
tolerationSeconds Int64 The amount of time the pod can continue to run on the node after the taint is added

The meaning of the above tolerance fields can be found in the official Kubernetes documentation Taint and Tolerance.

IptablesEIP

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource have the value IptablesEIP
metadata ObjectMeta Standard Kubernetes resource metadata information
spec IptablesEipSpec IptablesEIP specific configuration information used by vpc gateway
status IptablesEipStatus IptablesEIP status information used by vpc gateway

IptablesEipSpec

Property Name Type Description
v4ip String IptablesEIP v4 address
v6ip String IptablesEIP v6 address
macAddress String The assigned mac address, not actually used
natGwDp String Vpc gateway name

IptablesEipStatus

Property Name Type Description
ready Bool Whether IptablesEIP is configured complete
ip String The IP address used by IptablesEIP, currently only IPv4 addresses are supported
redo String IptablesEIP crd creation or update time
nat String The type of IptablesEIP, either fip, snat, or dnat
conditions []IptablesEIPCondition IptablesEIP status change information, refer to the beginning of the documentation for the definition of Condition

IptablesFIPRule

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource have the value IptablesFIPRule
metadata ObjectMeta Standard Kubernetes resource metadata information
spec IptablesFIPRuleSpec The IptablesFIPRule specific configuration information used by vpc gateway
status IptablesFIPRuleStatus IptablesFIPRule status information used by vpc gateway

IptablesFIPRuleSpec

Property Name Type Description
eip String Name of the IptablesEIP used for IptablesFIPRule
internalIp String The corresponding internal IP address

IptablesFIPRuleStatus

Property Name Type Description
ready Bool Whether IptablesFIPRule is configured or not
v4ip String The v4 IP address used by IptablesEIP
v6ip String The v6 IP address used by IptablesEIP
natGwDp String Vpc gateway name
redo String IptablesFIPRule crd creation or update time
conditions []IptablesFIPRuleCondition IptablesFIPRule status change information, refer to the beginning of the documentation for the definition of Condition

IptablesSnatRule

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource have the value IptablesSnatRule
metadata ObjectMeta Standard Kubernetes resource metadata information
spec IptablesSnatRuleSpec The IptablesSnatRule specific configuration information used by the vpc gateway
status IptablesSnatRuleStatus IptablesSnatRule status information used by vpc gateway

IptablesSnatRuleSpec

Property Name Type Description
eip String Name of the IptablesEIP used by IptablesSnatRule
internalIp String IptablesSnatRule's corresponding internal IP address

IptablesSnatRuleStatus

Property Name Type Description
ready Bool Whether the configuration is complete
v4ip String The v4 IP address used by IptablesSnatRule
v6ip String The v6 IP address used by IptablesSnatRule
natGwDp String Vpc gateway name
redo String IptablesSnatRule crd creation or update time
conditions []IptablesSnatRuleCondition IptablesSnatRule status change information, refer to the beginning of the documentation for the definition of Condition

IptablesDnatRule

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource have the value IptablesDnatRule
metadata ObjectMeta Standard Kubernetes resource metadata information
spec IptablesDnatRuleSpec The IptablesDnatRule specific configuration information used by vpc gateway
status IptablesDnatRuleStatus IptablesDnatRule status information used by vpc gateway

IptablesDnatRuleSpec

Property Name Type Description
eip Sting Name of IptablesEIP used by IptablesDnatRule
externalPort Sting External port used by IptablesDnatRule
protocol Sting Vpc gateway dnat protocol type
internalIp Sting Internal IP address used by IptablesDnatRule
internalPort Sting Internal port used by IptablesDnatRule

IptablesDnatRuleStatus

Property Name Type Description
ready Bool Whether the configuration is complete
v4ip String The v4 IP address used by IptablesDnatRule
v6ip String The v6 IP address used by IptablesDnatRule
natGwDp String Vpc gateway name
redo String IptablesDnatRule crd creation or update time
conditions []IptablesDnatRuleCondition IptablesDnatRule Status change information, refer to the beginning of the documentation for the definition of Condition

VpcDns

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value VpcDns
metadata ObjectMeta Standard Kubernetes resource metadata information
spec VpcDnsSpec VpcDns specific configuration information
status VpcDnsStatus VpcDns status information

VpcDnsSpec

Property Name Type Description
vpc String Name of the vpc where VpcDns is located
subnet String The subnet name of the address assigned to the VpcDns pod

VpcDnsStatus

Property Name Type Description
conditions []VpcDnsCondition VpcDns status change information, refer to the beginning of the document for the definition of Condition
active Bool Whether VpcDns is in use

For detailed documentation on the use of VpcDns, see Customizing VPC DNS.

SwitchLBRule

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value SwitchLBRule
metadata ObjectMeta Standard Kubernetes resource metadata information
spec SwitchLBRuleSpec SwitchLBRule specific configuration information
status SwitchLBRuleStatus SwitchLBRule status information

SwitchLBRuleSpec

Property Name Type Description
vip String Vip address of SwitchLBRule
namespace String SwitchLBRule's namespace
selector []String Standard Kubernetes selector match information
sessionAffinity String Standard Kubernetes service sessionAffinity value
ports []SlrPort List of SwitchLBRule ports

For detailed configuration information of SwitchLBRule, you can refer to Customizing VPC Internal Load Balancing.

SlrPort
Property Name Type Description
name String Port name
port Int32 Port number
targetPort Int32 Target port of SwitchLBRule
protocol String Protocol type

SwitchLBRuleStatus

Property Name Type Description
conditions []SwitchLBRuleCondition SwitchLBRule status change information, refer to the beginning of the document for the definition of Condition
ports String Port information
service String Name of the service

Security Group and Vip

SecurityGroup

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have a value of SecurityGroup
metadata ObjectMeta Standard Kubernetes resource metadata information
spec SecurityGroupSpec Security Group specific configuration information
status SecurityGroupStatus Security group status information

SecurityGroupSpec

Property Name Type Description
ingressRules []*SgRule Inbound security group rules
egressRules []*SgRule Outbound security group rules
allowSameGroupTraffic Bool Whether lsps in the same security group can interoperate and whether traffic rules need to be updated
SgRule
Property Name Type Description
ipVersion String IP version number, ipv4 or ipv6
protocol String The value of icmp, tcp, or udp
priority Int Acl priority. The value range is 1-200, the smaller the value, the higher the priority.
remoteType String The value is either address or securityGroup
remoteAddress String The address of the other side
remoteSecurityGroup String The name of security group on the other side
portRangeMin Int The starting value of the port range, the minimum value is 1.
portRangeMax Int The ending value of the port range, the maximum value is 65535.
policy String The value is allow or drop

SecurityGroupStatus

Property Name Type Description
portGroup String The name of the port-group for the security group
allowSameGroupTraffic Bool Whether lsps in the same security group can interoperate, and whether the security group traffic rules need to be updated
ingressMd5 String The MD5 value of the inbound security group rule
egressMd5 String The MD5 value of the outbound security group rule
ingressLastSyncSuccess Bool Whether the last synchronization of the inbound rule was successful
egressLastSyncSuccess Bool Whether the last synchronization of the outbound rule was successful

Vip

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value Vip
metadata ObjectMeta Standard Kubernetes resource metadata information
spec VipSpec Vip specific configuration information
status VipStatus Vip status information

VipSpec

Property Name Type Description
namespace String Vip's namespace
subnet String Vip's subnet
v4ip String Vip IPv4 ip address
v6ip String Vip IPv6 ip address
macAddress String Vip mac address
parentV4ip String Not currently in use
parentV6ip String Not currently in use
parentMac String Not currently in use
attachSubnets []String This field is deprecated and no longer used

VipStatus

Property Name Type Description
conditions []VipCondition Vip status change information, refer to the beginning of the documentation for the definition of Condition
ready Bool Vip is ready or not
v4ip String Vip IPv4 ip address, should be the same as the spec field
v6ip String Vip IPv6 ip address, should be the same as the spec field
mac String The vip mac address, which should be the same as the spec field
pv4ip String Not currently used
pv6ip String Not currently used
pmac String Not currently used

OvnEip

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value OvnEip
metadata ObjectMeta Standard Kubernetes resource metadata information
spec OvnEipSpec OvnEip specific configuration information for default vpc
status OvnEipStatus OvnEip status information for default vpc

OvnEipSpec

Property Name Type Description
externalSubnet String OvnEip's subnet name
v4ip String OvnEip IP address
macAddress String OvnEip Mac address
type String OvnEip use type, the value can be fip, snat or lrp

OvnEipStatus

Property Name Type Description
conditions []OvnEipCondition OvnEip status change information, refer to the beginning of the documentation for the definition of Condition
v4ip String The IPv4 ip address used by ovnEip
macAddress String Mac address used by ovnEip

OvnFip

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources are kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value OvnFip
metadata ObjectMeta Standard Kubernetes resource metadata information
spec OvnFipSpec OvnFip specific configuration information in default vpc
status OvnFipStatus OvnFip status information in default vpc

OvnFipSpec

Property Name Type Description
ovnEip String Name of the bound ovnEip
ipName String The IP crd name corresponding to the bound Pod

OvnFipStatus

Property Name Type Description
ready Bool OvnFip is ready or not
v4Eip String Name of the ovnEip to which ovnFip is bound
v4Ip String The ovnEip address currently in use
macAddress String OvnFip's configured mac address
vpc String The name of the vpc where ovnFip is located
conditions []OvnFipCondition OvnFip status change information, refer to the beginning of the document for the definition of Condition

OvnSnatRule

Property Name Type Description
apiVersion String Standard Kubernetes version information field, all custom resources have kubeovn.io/v1
kind String Standard Kubernetes resource type field, all instances of this resource will have the value OvnSnatRule
metadata ObjectMeta Standard Kubernetes resource metadata information
spec OvnSnatRuleSpec OvnSnatRule specific configuration information in default vpc
status OvnSnatRuleStatus OvnSnatRule status information in default vpc

OvnSnatRuleSpec

Property Name Type Description
ovnEip String Name of the ovnEip to which ovnSnatRule is bound
vpcSubnet String The name of the subnet configured by ovnSnatRule
ipName String The IP crd name corresponding to the ovnSnatRule bound Pod

OvnSnatRuleStatus

Property Name Type Description
ready Bool OvnSnatRule is ready or not
v4Eip String The ovnEip address to which ovnSnatRule is bound
v4IpCidr String The cidr address used to configure snat in the logical-router
vpc String The name of the vpc where ovnSnatRule is located
conditions []OvnSnatRuleCondition OvnSnatRule status change information, refer to the beginning of the document for the definition of Condition

微信群 Slack Twitter Support


Last update: February 28, 2023
Created: February 16, 2023

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/kube-ovn-pinger-args/index.html b/v1.12.x/en/reference/kube-ovn-pinger-args/index.html index 43ed3996f..dc7e2bed3 100644 --- a/v1.12.x/en/reference/kube-ovn-pinger-args/index.html +++ b/v1.12.x/en/reference/kube-ovn-pinger-args/index.html @@ -1,4 +1,4 @@ - kube-ovn-pinger args description - Kube-OVN Document

Kube-OVN-Pinger args Reference

Based on the Kube-OVN v1.12.0 version, We have compiled the parameters supported by Kube-ovn-pinger, and listed the value types, meanings, and default values of each field defined by the parameters for reference

Args Describeption

Arg Name Type Description Default Value
port Int metrics port 8080
kubeconfig String Path to kubeconfig file with authorization and master location information. If not set use the inCluster token. ""
ds-namespace String kube-ovn-pinger daemonset namespace "kube-system"
ds-name String kube-ovn-pinger daemonset name "kube-ovn-pinger"
interval Int interval seconds between consecutive pings 5
mode String server or job Mode "server"
exit-code Int exit code when failure happens 0
internal-dns String check dns from pod "kubernetes.default"
external-dns String check external dns resolve from pod ""
external-address String check ping connection to an external address "114.114.114.114"
network-mode String The cni plugin current cluster used "kube-ovn"
enable-metrics Bool Whether to support metrics query true
ovs.timeout Int Timeout on JSON-RPC requests to OVS. 2
system.run.dir String OVS default run directory. "/var/run/openvswitch"
database.vswitch.name String The name of OVS db. "Open_vSwitch"
database.vswitch.socket.remote String JSON-RPC unix socket to OVS db. "unix:/var/run/openvswitch/db.sock"
database.vswitch.file.data.path String OVS db file. "/etc/openvswitch/conf.db"
database.vswitch.file.log.path String OVS db log file. "/var/log/openvswitch/ovsdb-server.log"
database.vswitch.file.pid.path String OVS db process id file. "/var/run/openvswitch/ovsdb-server.pid"
database.vswitch.file.system.id.path String OVS system id file. "/etc/openvswitch/system-id.conf"
service.vswitchd.file.log.path String OVS vswitchd daemon log file. "/var/log/openvswitch/ovs-vswitchd.log"
service.vswitchd.file.pid.path String OVS vswitchd daemon process id file. "/var/run/openvswitch/ovs-vswitchd.pid"
service.ovncontroller.file.log.path String OVN controller daemon log file. "/var/log/ovn/ovn-controller.log"
service.ovncontroller.file.pid.path String OVN controller daemon process id file. "/var/run/ovn/ovn-controller.pid"

微信群 Slack Twitter Support


最后更新: February 23, 2023
创建日期: February 23, 2023

评论

Kube-OVN-Pinger args Reference

Based on the Kube-OVN v1.12.0 version, We have compiled the parameters supported by Kube-ovn-pinger, and listed the value types, meanings, and default values of each field defined by the parameters for reference

Args Describeption

Arg Name Type Description Default Value
port Int metrics port 8080
kubeconfig String Path to kubeconfig file with authorization and master location information. If not set use the inCluster token. ""
ds-namespace String kube-ovn-pinger daemonset namespace "kube-system"
ds-name String kube-ovn-pinger daemonset name "kube-ovn-pinger"
interval Int interval seconds between consecutive pings 5
mode String server or job Mode "server"
exit-code Int exit code when failure happens 0
internal-dns String check dns from pod "kubernetes.default"
external-dns String check external dns resolve from pod ""
external-address String check ping connection to an external address "114.114.114.114"
network-mode String The cni plugin current cluster used "kube-ovn"
enable-metrics Bool Whether to support metrics query true
ovs.timeout Int Timeout on JSON-RPC requests to OVS. 2
system.run.dir String OVS default run directory. "/var/run/openvswitch"
database.vswitch.name String The name of OVS db. "Open_vSwitch"
database.vswitch.socket.remote String JSON-RPC unix socket to OVS db. "unix:/var/run/openvswitch/db.sock"
database.vswitch.file.data.path String OVS db file. "/etc/openvswitch/conf.db"
database.vswitch.file.log.path String OVS db log file. "/var/log/openvswitch/ovsdb-server.log"
database.vswitch.file.pid.path String OVS db process id file. "/var/run/openvswitch/ovsdb-server.pid"
database.vswitch.file.system.id.path String OVS system id file. "/etc/openvswitch/system-id.conf"
service.vswitchd.file.log.path String OVS vswitchd daemon log file. "/var/log/openvswitch/ovs-vswitchd.log"
service.vswitchd.file.pid.path String OVS vswitchd daemon process id file. "/var/run/openvswitch/ovs-vswitchd.pid"
service.ovncontroller.file.log.path String OVN controller daemon log file. "/var/log/ovn/ovn-controller.log"
service.ovncontroller.file.pid.path String OVN controller daemon process id file. "/var/run/ovn/ovn-controller.pid"

微信群 Slack Twitter Support


Last update: February 23, 2023
Created: February 23, 2023

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/metrics/index.html b/v1.12.x/en/reference/metrics/index.html index e24eec8f0..3dabdf90c 100644 --- a/v1.12.x/en/reference/metrics/index.html +++ b/v1.12.x/en/reference/metrics/index.html @@ -1,4 +1,4 @@ - Metrics - Kube-OVN Document

Metrics

This document lists all the monitoring metrics provided by Kube-OVN.

ovn-monitor

OVN status metrics:

Type Metric Description
Gauge kube_ovn_ovn_status OVN Health Status. The values are: (2) for standby or follower, (1) for active or leader, (0) for unhealthy.
Gauge kube_ovn_failed_req_count The number of failed requests to OVN stack.
Gauge kube_ovn_log_file_size The size of a log file associated with an OVN component.
Gauge kube_ovn_db_file_size The size of a database file associated with an OVN component.
Gauge kube_ovn_chassis_info Whether the OVN chassis is up (1) or down (0), together with additional information about the chassis.
Gauge kube_ovn_db_status The status of OVN NB/SB DB, (1) for healthy, (0) for unhealthy.
Gauge kube_ovn_logical_switch_info The information about OVN logical switch. This metric is always up (1).
Gauge kube_ovn_logical_switch_external_id Provides the external IDs and values associated with OVN logical switches. This metric is always up (1).
Gauge kube_ovn_logical_switch_port_binding Provides the association between a logical switch and a logical switch port. This metric is always up (1).
Gauge kube_ovn_logical_switch_tunnel_key The value of the tunnel key associated with the logical switch.
Gauge kube_ovn_logical_switch_ports_num The number of logical switch ports connected to the OVN logical switch.
Gauge kube_ovn_logical_switch_port_info The information about OVN logical switch port. This metric is always up (1).
Gauge kube_ovn_logical_switch_port_tunnel_key The value of the tunnel key associated with the logical switch port.
Gauge kube_ovn_cluster_enabled Is OVN clustering enabled (1) or not (0).
Gauge kube_ovn_cluster_role A metric with a constant '1' value labeled by server role.
Gauge kube_ovn_cluster_status A metric with a constant '1' value labeled by server status.
Gauge kube_ovn_cluster_term The current raft term known by this server.
Gauge kube_ovn_cluster_leader_self Is this server consider itself a leader (1) or not (0).
Gauge kube_ovn_cluster_vote_self Is this server voted itself as a leader (1) or not (0).
Gauge kube_ovn_cluster_election_timer The current election timer value.
Gauge kube_ovn_cluster_log_not_committed The number of log entries not yet committed by this server.
Gauge kube_ovn_cluster_log_not_applied The number of log entries not yet applied by this server.
Gauge kube_ovn_cluster_log_index_start The log entry index start value associated with this server.
Gauge kube_ovn_cluster_log_index_next The log entry index next value associated with this server.
Gauge kube_ovn_cluster_inbound_connections_total The total number of inbound connections to the server.
Gauge kube_ovn_cluster_outbound_connections_total The total number of outbound connections from the server.
Gauge kube_ovn_cluster_inbound_connections_error_total The total number of failed inbound connections to the server.
Gauge kube_ovn_cluster_outbound_connections_error_total The total number of failed outbound connections from the server.

ovs-monitor

ovsdb and vswitchd status metrics:

Type Metric Description
Gauge ovs_status OVS Health Status. The values are: health(1), unhealthy(0).
Gauge ovs_info This metric provides basic information about OVS. It is always set to 1.
Gauge failed_req_count The number of failed requests to OVS stack.
Gauge log_file_size The size of a log file associated with an OVS component.
Gauge db_file_size The size of a database file associated with an OVS component.
Gauge datapath Represents an existing datapath. This metrics is always 1.
Gauge dp_total Represents total number of datapaths on the system.
Gauge dp_if Represents an existing datapath interface. This metrics is always 1.
Gauge dp_if_total Represents the number of ports connected to the datapath.
Gauge dp_flows_total The number of flows in a datapath.
Gauge dp_flows_lookup_hit The number of incoming packets in a datapath matching existing flows in the datapath.
Gauge dp_flows_lookup_missed The number of incoming packets in a datapath not matching any existing flow in the datapath.
Gauge dp_flows_lookup_lost The number of incoming packets in a datapath destined for userspace process but subsequently dropped before reaching userspace.
Gauge dp_masks_hit The total number of masks visited for matching incoming packets.
Gauge dp_masks_total The number of masks in a datapath.
Gauge dp_masks_hit_ratio The average number of masks visited per packet. It is the ration between hit and total number of packets processed by a datapath.
Gauge interface Represents OVS interface. This is the primary metric for all other interface metrics. This metrics is always 1.
Gauge interface_admin_state The administrative state of the physical network link of OVS interface. The values are: down(0), up(1), other(2).
Gauge interface_link_state The state of the physical network link of OVS interface. The values are: down(0), up(1), other(2).
Gauge interface_mac_in_use The MAC address in use by OVS interface.
Gauge interface_mtu The currently configured MTU for OVS interface.
Gauge interface_of_port Represents the OpenFlow port ID associated with OVS interface.
Gauge interface_if_index Represents the interface index associated with OVS interface.
Gauge interface_tx_packets Represents the number of transmitted packets by OVS interface.
Gauge interface_tx_bytes Represents the number of transmitted bytes by OVS interface.
Gauge interface_rx_packets Represents the number of received packets by OVS interface.
Gauge interface_rx_bytes Represents the number of received bytes by OVS interface.
Gauge interface_rx_crc_err Represents the number of CRC errors for the packets received by OVS interface.
Gauge interface_rx_dropped Represents the number of input packets dropped by OVS interface.
Gauge interface_rx_errors Represents the total number of packets with errors received by OVS interface.
Gauge interface_rx_frame_err Represents the number of frame alignment errors on the packets received by OVS interface.
Gauge interface_rx_missed_err Represents the number of packets with RX missed received by OVS interface.
Gauge interface_rx_over_err Represents the number of packets with RX overrun received by OVS interface.
Gauge interface_tx_dropped Represents the number of output packets dropped by OVS interface.
Gauge interface_tx_errors Represents the total number of transmit errors by OVS interface.
Gauge interface_collisions Represents the number of collisions on OVS interface.

kube-ovn-pinger

Network quality related metrics:

Type Metric Description
Gauge pinger_ovs_up If the ovs on the node is up
Gauge pinger_ovs_down If the ovs on the node is down
Gauge pinger_ovn_controller_up If the ovn_controller on the node is up
Gauge pinger_ovn_controller_down If the ovn_controller on the node is down
Gauge pinger_inconsistent_port_binding The number of mismatch port bindings between ovs and ovn-sb
Gauge pinger_apiserver_healthy If the apiserver request is healthy on this node
Gauge pinger_apiserver_unhealthy If the apiserver request is unhealthy on this node
Histogram pinger_apiserver_latency_ms The latency ms histogram the node request apiserver
Gauge pinger_internal_dns_healthy If the internal dns request is unhealthy on this node
Gauge pinger_internal_dns_unhealthy If the internal dns request is unhealthy on this node
Histogram pinger_internal_dns_latency_ms The latency ms histogram the node request internal dns
Gauge pinger_external_dns_health If the external dns request is healthy on this node
Gauge pinger_external_dns_unhealthy If the external dns request is unhealthy on this node
Histogram pinger_external_dns_latency_ms The latency ms histogram the node request external dns
Histogram pinger_pod_ping_latency_ms The latency ms histogram for pod peer ping
Gauge pinger_pod_ping_lost_total The lost count for pod peer ping
Gauge pinger_pod_ping_count_total The total count for pod peer ping
Histogram pinger_node_ping_latency_ms The latency ms histogram for pod ping node
Gauge pinger_node_ping_lost_total The lost count for pod ping node
Gauge pinger_node_ping_count_total The total count for pod ping node
Histogram pinger_external_ping_latency_ms The latency ms histogram for pod ping external address
Gauge pinger_external_lost_total The lost count for pod ping external address

kube-ovn-controller

kube-ovn-controller status metrics:

Type Metric Description
Histogram rest_client_request_latency_seconds Request latency in seconds. Broken down by verb and URL
Counter rest_client_requests_total Number of HTTP requests, partitioned by status code, method, and host
Counter lists_total Total number of API lists done by the reflectors
Summary list_duration_seconds How long an API list takes to return and decode for the reflectors
Summary items_per_list How many items an API list returns to the reflectors
Counter watches_total Total number of API watches done by the reflectors
Counter short_watches_total Total number of short API watches done by the reflectors
Summary watch_duration_seconds How long an API watch takes to return and decode for the reflectors
Summary items_per_watch How many items an API watch returns to the reflectors
Gauge last_resource_version Last resource version seen for the reflectors
Histogram ovs_client_request_latency_milliseconds The latency histogram for ovs request
Gauge subnet_available_ip_count The available num of ip address in subnet
Gauge subnet_used_ip_count The used num of ip address in subnet

kube-ovn-cni

kube-ovn-cni status metrics:

Type Metric Description
Histogram cni_op_latency_seconds The latency seconds for cni operations
Counter cni_wait_address_seconds_total Latency that cni wait controller to assign an address
Counter cni_wait_connectivity_seconds_total Latency that cni wait address ready in overlay network
Counter cni_wait_route_seconds_total Latency that cni wait controller to add routed annotation to pod
Histogram rest_client_request_latency_seconds Request latency in seconds. Broken down by verb and URL
Counter rest_client_requests_total Number of HTTP requests, partitioned by status code, method, and host
Counter lists_total Total number of API lists done by the reflectors
Summary list_duration_seconds How long an API list takes to return and decode for the reflectors
Summary items_per_list How many items an API list returns to the reflectors
Counter watches_total Total number of API watches done by the reflectors
Counter short_watches_total Total number of short API watches done by the reflectors
Summary watch_duration_seconds How long an API watch takes to return and decode for the reflectors
Summary items_per_watch How many items an API watch returns to the reflectors
Gauge last_resource_version Last resource version seen for the reflectors
Histogram ovs_client_request_latency_milliseconds The latency histogram for ovs request

微信群 Slack Twitter Support


最后更新: October 18, 2022
创建日期: June 30, 2022

评论

Metrics

This document lists all the monitoring metrics provided by Kube-OVN.

ovn-monitor

OVN status metrics:

Type Metric Description
Gauge kube_ovn_ovn_status OVN Health Status. The values are: (2) for standby or follower, (1) for active or leader, (0) for unhealthy.
Gauge kube_ovn_failed_req_count The number of failed requests to OVN stack.
Gauge kube_ovn_log_file_size The size of a log file associated with an OVN component.
Gauge kube_ovn_db_file_size The size of a database file associated with an OVN component.
Gauge kube_ovn_chassis_info Whether the OVN chassis is up (1) or down (0), together with additional information about the chassis.
Gauge kube_ovn_db_status The status of OVN NB/SB DB, (1) for healthy, (0) for unhealthy.
Gauge kube_ovn_logical_switch_info The information about OVN logical switch. This metric is always up (1).
Gauge kube_ovn_logical_switch_external_id Provides the external IDs and values associated with OVN logical switches. This metric is always up (1).
Gauge kube_ovn_logical_switch_port_binding Provides the association between a logical switch and a logical switch port. This metric is always up (1).
Gauge kube_ovn_logical_switch_tunnel_key The value of the tunnel key associated with the logical switch.
Gauge kube_ovn_logical_switch_ports_num The number of logical switch ports connected to the OVN logical switch.
Gauge kube_ovn_logical_switch_port_info The information about OVN logical switch port. This metric is always up (1).
Gauge kube_ovn_logical_switch_port_tunnel_key The value of the tunnel key associated with the logical switch port.
Gauge kube_ovn_cluster_enabled Is OVN clustering enabled (1) or not (0).
Gauge kube_ovn_cluster_role A metric with a constant '1' value labeled by server role.
Gauge kube_ovn_cluster_status A metric with a constant '1' value labeled by server status.
Gauge kube_ovn_cluster_term The current raft term known by this server.
Gauge kube_ovn_cluster_leader_self Is this server consider itself a leader (1) or not (0).
Gauge kube_ovn_cluster_vote_self Is this server voted itself as a leader (1) or not (0).
Gauge kube_ovn_cluster_election_timer The current election timer value.
Gauge kube_ovn_cluster_log_not_committed The number of log entries not yet committed by this server.
Gauge kube_ovn_cluster_log_not_applied The number of log entries not yet applied by this server.
Gauge kube_ovn_cluster_log_index_start The log entry index start value associated with this server.
Gauge kube_ovn_cluster_log_index_next The log entry index next value associated with this server.
Gauge kube_ovn_cluster_inbound_connections_total The total number of inbound connections to the server.
Gauge kube_ovn_cluster_outbound_connections_total The total number of outbound connections from the server.
Gauge kube_ovn_cluster_inbound_connections_error_total The total number of failed inbound connections to the server.
Gauge kube_ovn_cluster_outbound_connections_error_total The total number of failed outbound connections from the server.

ovs-monitor

ovsdb and vswitchd status metrics:

Type Metric Description
Gauge ovs_status OVS Health Status. The values are: health(1), unhealthy(0).
Gauge ovs_info This metric provides basic information about OVS. It is always set to 1.
Gauge failed_req_count The number of failed requests to OVS stack.
Gauge log_file_size The size of a log file associated with an OVS component.
Gauge db_file_size The size of a database file associated with an OVS component.
Gauge datapath Represents an existing datapath. This metrics is always 1.
Gauge dp_total Represents total number of datapaths on the system.
Gauge dp_if Represents an existing datapath interface. This metrics is always 1.
Gauge dp_if_total Represents the number of ports connected to the datapath.
Gauge dp_flows_total The number of flows in a datapath.
Gauge dp_flows_lookup_hit The number of incoming packets in a datapath matching existing flows in the datapath.
Gauge dp_flows_lookup_missed The number of incoming packets in a datapath not matching any existing flow in the datapath.
Gauge dp_flows_lookup_lost The number of incoming packets in a datapath destined for userspace process but subsequently dropped before reaching userspace.
Gauge dp_masks_hit The total number of masks visited for matching incoming packets.
Gauge dp_masks_total The number of masks in a datapath.
Gauge dp_masks_hit_ratio The average number of masks visited per packet. It is the ration between hit and total number of packets processed by a datapath.
Gauge interface Represents OVS interface. This is the primary metric for all other interface metrics. This metrics is always 1.
Gauge interface_admin_state The administrative state of the physical network link of OVS interface. The values are: down(0), up(1), other(2).
Gauge interface_link_state The state of the physical network link of OVS interface. The values are: down(0), up(1), other(2).
Gauge interface_mac_in_use The MAC address in use by OVS interface.
Gauge interface_mtu The currently configured MTU for OVS interface.
Gauge interface_of_port Represents the OpenFlow port ID associated with OVS interface.
Gauge interface_if_index Represents the interface index associated with OVS interface.
Gauge interface_tx_packets Represents the number of transmitted packets by OVS interface.
Gauge interface_tx_bytes Represents the number of transmitted bytes by OVS interface.
Gauge interface_rx_packets Represents the number of received packets by OVS interface.
Gauge interface_rx_bytes Represents the number of received bytes by OVS interface.
Gauge interface_rx_crc_err Represents the number of CRC errors for the packets received by OVS interface.
Gauge interface_rx_dropped Represents the number of input packets dropped by OVS interface.
Gauge interface_rx_errors Represents the total number of packets with errors received by OVS interface.
Gauge interface_rx_frame_err Represents the number of frame alignment errors on the packets received by OVS interface.
Gauge interface_rx_missed_err Represents the number of packets with RX missed received by OVS interface.
Gauge interface_rx_over_err Represents the number of packets with RX overrun received by OVS interface.
Gauge interface_tx_dropped Represents the number of output packets dropped by OVS interface.
Gauge interface_tx_errors Represents the total number of transmit errors by OVS interface.
Gauge interface_collisions Represents the number of collisions on OVS interface.

kube-ovn-pinger

Network quality related metrics:

Type Metric Description
Gauge pinger_ovs_up If the ovs on the node is up
Gauge pinger_ovs_down If the ovs on the node is down
Gauge pinger_ovn_controller_up If the ovn_controller on the node is up
Gauge pinger_ovn_controller_down If the ovn_controller on the node is down
Gauge pinger_inconsistent_port_binding The number of mismatch port bindings between ovs and ovn-sb
Gauge pinger_apiserver_healthy If the apiserver request is healthy on this node
Gauge pinger_apiserver_unhealthy If the apiserver request is unhealthy on this node
Histogram pinger_apiserver_latency_ms The latency ms histogram the node request apiserver
Gauge pinger_internal_dns_healthy If the internal dns request is unhealthy on this node
Gauge pinger_internal_dns_unhealthy If the internal dns request is unhealthy on this node
Histogram pinger_internal_dns_latency_ms The latency ms histogram the node request internal dns
Gauge pinger_external_dns_health If the external dns request is healthy on this node
Gauge pinger_external_dns_unhealthy If the external dns request is unhealthy on this node
Histogram pinger_external_dns_latency_ms The latency ms histogram the node request external dns
Histogram pinger_pod_ping_latency_ms The latency ms histogram for pod peer ping
Gauge pinger_pod_ping_lost_total The lost count for pod peer ping
Gauge pinger_pod_ping_count_total The total count for pod peer ping
Histogram pinger_node_ping_latency_ms The latency ms histogram for pod ping node
Gauge pinger_node_ping_lost_total The lost count for pod ping node
Gauge pinger_node_ping_count_total The total count for pod ping node
Histogram pinger_external_ping_latency_ms The latency ms histogram for pod ping external address
Gauge pinger_external_lost_total The lost count for pod ping external address

kube-ovn-controller

kube-ovn-controller status metrics:

Type Metric Description
Histogram rest_client_request_latency_seconds Request latency in seconds. Broken down by verb and URL
Counter rest_client_requests_total Number of HTTP requests, partitioned by status code, method, and host
Counter lists_total Total number of API lists done by the reflectors
Summary list_duration_seconds How long an API list takes to return and decode for the reflectors
Summary items_per_list How many items an API list returns to the reflectors
Counter watches_total Total number of API watches done by the reflectors
Counter short_watches_total Total number of short API watches done by the reflectors
Summary watch_duration_seconds How long an API watch takes to return and decode for the reflectors
Summary items_per_watch How many items an API watch returns to the reflectors
Gauge last_resource_version Last resource version seen for the reflectors
Histogram ovs_client_request_latency_milliseconds The latency histogram for ovs request
Gauge subnet_available_ip_count The available num of ip address in subnet
Gauge subnet_used_ip_count The used num of ip address in subnet

kube-ovn-cni

kube-ovn-cni status metrics:

Type Metric Description
Histogram cni_op_latency_seconds The latency seconds for cni operations
Counter cni_wait_address_seconds_total Latency that cni wait controller to assign an address
Counter cni_wait_connectivity_seconds_total Latency that cni wait address ready in overlay network
Counter cni_wait_route_seconds_total Latency that cni wait controller to add routed annotation to pod
Histogram rest_client_request_latency_seconds Request latency in seconds. Broken down by verb and URL
Counter rest_client_requests_total Number of HTTP requests, partitioned by status code, method, and host
Counter lists_total Total number of API lists done by the reflectors
Summary list_duration_seconds How long an API list takes to return and decode for the reflectors
Summary items_per_list How many items an API list returns to the reflectors
Counter watches_total Total number of API watches done by the reflectors
Counter short_watches_total Total number of short API watches done by the reflectors
Summary watch_duration_seconds How long an API watch takes to return and decode for the reflectors
Summary items_per_watch How many items an API watch returns to the reflectors
Gauge last_resource_version Last resource version seen for the reflectors
Histogram ovs_client_request_latency_milliseconds The latency histogram for ovs request

微信群 Slack Twitter Support


Last update: October 18, 2022
Created: June 30, 2022

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/ovs-ovn-customized/index.html b/v1.12.x/en/reference/ovs-ovn-customized/index.html index ff316dedd..af6c6c050 100644 --- a/v1.12.x/en/reference/ovs-ovn-customized/index.html +++ b/v1.12.x/en/reference/ovs-ovn-customized/index.html @@ -1,4 +1,4 @@ - OVS/OVN Customization - Kube-OVN Document

OVS/OVN Customization

Upstream OVN/OVS was originally designed with the goal of a general purpose SDN controller and data plane. Due to some specific usage of the Kubernetes network,Kube-OVN only focused on part of the features. In order to achieve better performance, stability and specific features, Kube-OVN has made some modifications to the upstream OVN/OVS. Users using their own OVN/OVS with Kube-OVN controllers need to be aware of the possible impact of the following changes:

Did not merge into the upstream modification.

  • 38df6fa3f7 Adjust the election timer to avoid large-scale cluster election jitter.
  • d4888c4e75 add fdb update logging.
  • d4888c4e75 fdb: fix mac learning in environments with hairpin enabled.
  • 9a81b91368 ovsdb-tool: add optional server id parameter for "join-cluster" command.
  • 0700cb90f9 Destination non-service traffic bypasses conntrack to improve performance on a particular data path.
  • c48049a64f ECMP algorithm is adjusted from dp_hash to hash to avoid the hash error problem in some kernels.
  • 64383c14a9 Fix kernel Crash issue under Windows.
  • 08a95db2ca Support for github action builds on Windows.
  • 680e77a190 Windows uses tcp listening by default.
  • 05e57b3227 add support for windows.
  • 0181b68be1 br-int controller: listen on 127.0.0.1:6653 by default.
  • b3801ecb73 modify src route priority.
  • 977e569539 fix reaching resubmit limit in underlay.
  • 45a4a22161 ovn-nbctl: do not remove LB if vips is empty.
  • 540592b9ff Replaces the Mac address as the destination address after DNAT to reduce additional performance overhead.
  • 10972d9632 Fix vswitchd ofport_usage memory leak.

Merged into upstream modification:

  • 20626ea909 Multicast traffic bypasses LB and ACL processing stages to improve specific data path performance.
  • a2d9ff3ccd Deb build adds compile optimization options.

微信群 Slack Twitter Support


最后更新: February 16, 2023
创建日期: June 30, 2022

评论

OVS/OVN Customization

Upstream OVN/OVS was originally designed with the goal of a general purpose SDN controller and data plane. Due to some specific usage of the Kubernetes network,Kube-OVN only focused on part of the features. In order to achieve better performance, stability and specific features, Kube-OVN has made some modifications to the upstream OVN/OVS. Users using their own OVN/OVS with Kube-OVN controllers need to be aware of the possible impact of the following changes:

Did not merge into the upstream modification.

  • 38df6fa3f7 Adjust the election timer to avoid large-scale cluster election jitter.
  • d4888c4e75 add fdb update logging.
  • d4888c4e75 fdb: fix mac learning in environments with hairpin enabled.
  • 9a81b91368 ovsdb-tool: add optional server id parameter for "join-cluster" command.
  • 0700cb90f9 Destination non-service traffic bypasses conntrack to improve performance on a particular data path.
  • c48049a64f ECMP algorithm is adjusted from dp_hash to hash to avoid the hash error problem in some kernels.
  • 64383c14a9 Fix kernel Crash issue under Windows.
  • 08a95db2ca Support for github action builds on Windows.
  • 680e77a190 Windows uses tcp listening by default.
  • 05e57b3227 add support for windows.
  • 0181b68be1 br-int controller: listen on 127.0.0.1:6653 by default.
  • b3801ecb73 modify src route priority.
  • 977e569539 fix reaching resubmit limit in underlay.
  • 45a4a22161 ovn-nbctl: do not remove LB if vips is empty.
  • 540592b9ff Replaces the Mac address as the destination address after DNAT to reduce additional performance overhead.
  • 10972d9632 Fix vswitchd ofport_usage memory leak.

Merged into upstream modification:

  • 20626ea909 Multicast traffic bypasses LB and ACL processing stages to improve specific data path performance.
  • a2d9ff3ccd Deb build adds compile optimization options.

微信群 Slack Twitter Support


Last update: February 16, 2023
Created: June 30, 2022

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/tunnel-protocol/index.html b/v1.12.x/en/reference/tunnel-protocol/index.html index 52fdfdb53..c41d7fdcb 100644 --- a/v1.12.x/en/reference/tunnel-protocol/index.html +++ b/v1.12.x/en/reference/tunnel-protocol/index.html @@ -1,4 +1,4 @@ - Tunnel Protocol Selection - Kube-OVN Document

Tunnel Protocol Selection

Kube-OVN uses OVN/OVS as the data plane implementation and currently supports Geneve, Vxlan and STT tunnel encapsulation protocols. These three protocols differ in terms of functionality, performance and ease of use. This document will describe the differences in the use of the three protocols so that users can choose according to their situation.

Geneve

The Geneve protocol is the default tunneling protocol selected during Kube-OVN deployment and is also the default recommended tunneling protocol for OVN. This protocol is widely supported in the kernel and can be accelerated using the generic offload capability of modern NICs. Since Geneve has a variable header, it is possible to use 24bit space to mark different datapaths users can create a larger number of virtual networks.

If you are using Mellanox or Corigine SmartNIC OVS offload, Geneve requires a higher kernel version. Upstream kernel of 5.4 or higher, or other compatible kernels that backports this feature.

Due to the use of UDP encapsulation, this protocol does not make good use of the TCP-related offloads of modern NICs when handling TCP over UDP, and consumes more CPU resources when handling large packets.

Vxlan

Vxlan is a recently supported protocol in the upstream OVN, which is widely supported in the kernel and can be accelerated using the common offload capabilities of modern NICs. Due to the limited length of the protocol header and the additional space required for OVN orchestration, there is a limit to the number of datapaths that can be created, with a maximum of 4096 datapaths and a maximum of 4096 ports under each datapath. Also, inport-based ACLs are not supported due to header length limitations.

Vxlan offloading is supported in common kernels if using Mellanox or Corigine SmartNIC.

Due to the use of UDP encapsulation, this protocol does not make good use of the TCP-related offloads of modern NICs when handling TCP over UDP, and consumes more CPU resources when handling large packets.

STT

The STT protocol is an early tunneling protocol supported by the OVN that uses TCP-like headers to take advantage of the TCP offload capabilities common to modern NICs and significantly increase TCP throughput. The protocol also has a long header to support full OVN capabilities and large-scale datapaths.

This protocol is not supported in the kernel. To use it, you need to compile an additional OVS kernel module and recompile the new version of the kernel module when upgrading the kernel.

This protocol is not currently supported by the SmartNic and cannot use the offloading capability of OVS offloading.

References

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

Tunnel Protocol Selection

Kube-OVN uses OVN/OVS as the data plane implementation and currently supports Geneve, Vxlan and STT tunnel encapsulation protocols. These three protocols differ in terms of functionality, performance and ease of use. This document will describe the differences in the use of the three protocols so that users can choose according to their situation.

Geneve

The Geneve protocol is the default tunneling protocol selected during Kube-OVN deployment and is also the default recommended tunneling protocol for OVN. This protocol is widely supported in the kernel and can be accelerated using the generic offload capability of modern NICs. Since Geneve has a variable header, it is possible to use 24bit space to mark different datapaths users can create a larger number of virtual networks.

If you are using Mellanox or Corigine SmartNIC OVS offload, Geneve requires a higher kernel version. Upstream kernel of 5.4 or higher, or other compatible kernels that backports this feature.

Due to the use of UDP encapsulation, this protocol does not make good use of the TCP-related offloads of modern NICs when handling TCP over UDP, and consumes more CPU resources when handling large packets.

Vxlan

Vxlan is a recently supported protocol in the upstream OVN, which is widely supported in the kernel and can be accelerated using the common offload capabilities of modern NICs. Due to the limited length of the protocol header and the additional space required for OVN orchestration, there is a limit to the number of datapaths that can be created, with a maximum of 4096 datapaths and a maximum of 4096 ports under each datapath. Also, inport-based ACLs are not supported due to header length limitations.

Vxlan offloading is supported in common kernels if using Mellanox or Corigine SmartNIC.

Due to the use of UDP encapsulation, this protocol does not make good use of the TCP-related offloads of modern NICs when handling TCP over UDP, and consumes more CPU resources when handling large packets.

STT

The STT protocol is an early tunneling protocol supported by the OVN that uses TCP-like headers to take advantage of the TCP offload capabilities common to modern NICs and significantly increase TCP throughput. The protocol also has a long header to support full OVN capabilities and large-scale datapaths.

This protocol is not supported in the kernel. To use it, you need to compile an additional OVS kernel module and recompile the new version of the kernel module when upgrading the kernel.

This protocol is not currently supported by the SmartNic and cannot use the offloading capability of OVS offloading.

References

微信群 Slack Twitter Support


Last update: February 15, 2023
Created: June 30, 2022

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/reference/underlay-topology/index.html b/v1.12.x/en/reference/underlay-topology/index.html index e6a7c6adf..b2b5a6587 100644 --- a/v1.12.x/en/reference/underlay-topology/index.html +++ b/v1.12.x/en/reference/underlay-topology/index.html @@ -1,4 +1,4 @@ - Underlay Traffic Topology - Kube-OVN Document

Underlay Traffic Topology

This document describes the forwarding path of traffic in Underlay mode under different scenarios.

Pods in Same Node and Same Subnet

Internal logical switches exchange packets directly, without access to the external network.

Pods in Different Nodes and Same Subnet

Packets enter the physic switch via the node NIC and are exchanged by the physic switch.

Pods in Same Node and Different Subnets

Packets enter the physic network via the node NIC and are exchanged and routed and forwarded by physic switches and routers.

Here br-provider-1 and br-provider-2 can be the same OVS bridge,multiple subnet can share a Provider Network。

Pods in Different Nodes and Different Subnets

Packets enter the physic network via the node NIC and are exchanged and routed and forwarded by physic switches and routers.

Access to External

Packets enter the physic network via the node NIC and are exchanged and routed and forwarded by physic switches and routers.

The communication between nodes and Pods follows the same logic.

Overview without Vlan Tag

Overview with Vlan Tag

Pod visit Service IP

Kube-OVN configures load balancing for each Kubernetes Service on a logical switch on each subnet. When a Pod accesses other Pods by accessing the Service IP, a network packet is constructed with the Service IP as the destination address and the MAC address of the gateway as the destination MAC address. After the network packet enters the logical switch, load balancing will intercept and DNAT the network packet to modify the destination IP and port to the IP and port of one of the Endpoint corresponding to the Service. Since the logical switch does not modify the Layer 2 destination MAC address of the network packet, the network packet will still be delivered to the physic gateway after entering the physic switch, and the physic gateway will be required to forward the network packet.

Service Backend is the Same Node and Same Subnet Pod

Service Backend is the Same Node and Different Subnets Pod

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

Underlay Traffic Topology

This document describes the forwarding path of traffic in Underlay mode under different scenarios.

Pods in Same Node and Same Subnet

Internal logical switches exchange packets directly, without access to the external network.

Pods in Different Nodes and Same Subnet

Packets enter the physic switch via the node NIC and are exchanged by the physic switch.

Pods in Same Node and Different Subnets

Packets enter the physic network via the node NIC and are exchanged and routed and forwarded by physic switches and routers.

Here br-provider-1 and br-provider-2 can be the same OVS bridge,multiple subnet can share a Provider Network。

Pods in Different Nodes and Different Subnets

Packets enter the physic network via the node NIC and are exchanged and routed and forwarded by physic switches and routers.

Access to External

Packets enter the physic network via the node NIC and are exchanged and routed and forwarded by physic switches and routers.

The communication between nodes and Pods follows the same logic.

Overview without Vlan Tag

Overview with Vlan Tag

Pod visit Service IP

Kube-OVN configures load balancing for each Kubernetes Service on a logical switch on each subnet. When a Pod accesses other Pods by accessing the Service IP, a network packet is constructed with the Service IP as the destination address and the MAC address of the gateway as the destination MAC address. After the network packet enters the logical switch, load balancing will intercept and DNAT the network packet to modify the destination IP and port to the IP and port of one of the Endpoint corresponding to the Service. Since the logical switch does not modify the Layer 2 destination MAC address of the network packet, the network packet will still be delivered to the physic gateway after entering the physic switch, and the physic gateway will be required to forward the network packet.

Service Backend is the Same Node and Same Subnet Pod

Service Backend is the Same Node and Different Subnets Pod

微信群 Slack Twitter Support


Last update: February 15, 2023
Created: June 30, 2022

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/requirements.txt b/v1.12.x/en/requirements.txt index f9a7e4b2b..d5489d9e1 100644 --- a/v1.12.x/en/requirements.txt +++ b/v1.12.x/en/requirements.txt @@ -5,4 +5,4 @@ mkdocs-git-revision-date-localized-plugin==1.0.1 mkdocs-static-i18n==0.46 mkdocs-minify-plugin==0.5.0 mkdocs-markdownextradata-plugin==0.2.5 -mike==2.0.0 +mike==1.1.2 diff --git a/v1.12.x/en/start/one-step-install/index.html b/v1.12.x/en/start/one-step-install/index.html index af6fd51fb..b492b6051 100644 --- a/v1.12.x/en/start/one-step-install/index.html +++ b/v1.12.x/en/start/one-step-install/index.html @@ -1,4 +1,4 @@ - One-Click Installation - Kube-OVN Document

One-Click Installation

Kube-OVN provides a one-click installation script to help you quickly install a highly available, production-ready Kube-OVN container network with Overlay networking by default.

Helm Chart installation is supported since Kube-OVN v1.12.0, and the default deployment is Overlay networking.

If you need Underlay/Vlan networking as the default container network,please read Underlay Installation

Before installation please read Prerequisites first to make sure the environment is ready.

Script Installation

Download the installation script

We recommend using the stable release version for production environments, please use the following command to download:

wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.12/dist/images/install.sh
+    

One-Click Installation

Kube-OVN provides a one-click installation script to help you quickly install a highly available, production-ready Kube-OVN container network with Overlay networking by default.

Helm Chart installation is supported since Kube-OVN v1.12.0, and the default deployment is Overlay networking.

If you need Underlay/Vlan networking as the default container network,please read Underlay Installation

Before installation please read Prerequisites first to make sure the environment is ready.

Script Installation

Download the installation script

We recommend using the stable release version for production environments, please use the following command to download:

wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.12/dist/images/install.sh
 

If you are interested in the latest features of the master branch, please use the following command to download:

wget https://raw.githubusercontent.com/kubeovn/kube-ovn/master/dist/images/install.sh
 

Modify Configuration Options

Open the script using the editor and change the following variables to the expected:

REGISTRY="kubeovn"                     # Image Repo 
 VERSION="v1.12.4"                      # Image Tag
@@ -57,7 +57,7 @@
 
 # Highly Available Cluster Installation
 $ helm install kube-ovn kubeovn/kube-ovn --set MASTER_NODES=${Node0IP},${Node1IP},${Node2IP}, --set replicaCount=3
-

微信群 Slack Twitter Support


最后更新: April 20, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/start/prepare/index.html b/v1.12.x/en/start/prepare/index.html index 93974f784..f80d02aea 100644 --- a/v1.12.x/en/start/prepare/index.html +++ b/v1.12.x/en/start/prepare/index.html @@ -1,4 +1,4 @@ - Prerequisites - Kube-OVN Document

Prerequisites

Kube-OVN is a CNI-compliant network system that depends on the Kubernetes environment and the corresponding kernel network module for its operation. Below are the operating system and software versions tested, the environment configuration and the ports that need to be opened.

Software Version

  • Kubernetes >= 1.23.
  • Docker >= 1.12.6, Containerd >= 1.3.4.
  • OS: CentOS 7/8, Ubuntu 16.04/18.04/20.04.
  • For other Linux distributions, please make sure geneve, openvswitch, ip_tables and iptable_nat kernel modules exist.

Attention

  1. For CentOS kernel version 3.10.0-862 bug exists in netfilter modules that lead Kube-OVN embed nat and lb failure.Please update kernel and check Floating IPs broken after kernel upgrade to Centos/RHEL 7.5 - DNAT not working.
  2. Kernel version 4.18.0-372.9.1.el8.x86_64 in Rocky Linux 8.6 has a TCP connection problem TCP connection failed in Rocky Linux 8.6,please update kernel to 4.18.0-372.13.1.el8_6.x86_64 or later。
  3. For kernel version 4.4, the related openvswitch module has some issues for ct,please update kernel version or manually compile openvswitch kernel module.
  4. When building Geneve tunnel IPv6 in kernel should be enabled,check the kernel bootstrap options with cat /proc/cmdline.Check Geneve tunnels don't work when ipv6 is disabled for the detail bug info.

Environment Setup

  • Kernel should enable IPv6, if kernel bootstrap options contain ipv6.disable=1, it should be set to 0.
  • kube-proxy works, Kube-OVN can visit kube-apiserver from Service ClusterIP.
  • Make sure kubelet enabled CNI and find cni-bin and cni-conf in default directories, kubelet bootstrap options should contain --network-plugin=cni --cni-bin-dir=/opt/cni/bin --cni-conf-dir=/etc/cni/net.d.
  • Make sure no other CNI installed or has been removed,check if any config files still exist in/etc/cni/net.d/.

Ports Need Open

Component Port Usage
ovn-central 6641/tcp, 6642/tcp, 6643/tcp, 6644/tcp ovn-db and raft server listen ports
ovs-ovn Geneve 6081/udp, STT 7471/tcp, Vxlan 4789/udp tunnel ports
kube-ovn-controller 10660/tcp metrics port
kube-ovn-daemon 10665/tcp metrics port
kube-ovn-monitor 10661/tcp metrics port

微信群 Slack Twitter Support


最后更新: July 20, 2023
创建日期: June 30, 2022

评论

Prerequisites

Kube-OVN is a CNI-compliant network system that depends on the Kubernetes environment and the corresponding kernel network module for its operation. Below are the operating system and software versions tested, the environment configuration and the ports that need to be opened.

Software Version

  • Kubernetes >= 1.23.
  • Docker >= 1.12.6, Containerd >= 1.3.4.
  • OS: CentOS 7/8, Ubuntu 16.04/18.04/20.04.
  • For other Linux distributions, please make sure geneve, openvswitch, ip_tables and iptable_nat kernel modules exist.

Attention

  1. For CentOS kernel version 3.10.0-862 bug exists in netfilter modules that lead Kube-OVN embed nat and lb failure.Please update kernel and check Floating IPs broken after kernel upgrade to Centos/RHEL 7.5 - DNAT not working.
  2. Kernel version 4.18.0-372.9.1.el8.x86_64 in Rocky Linux 8.6 has a TCP connection problem TCP connection failed in Rocky Linux 8.6,please update kernel to 4.18.0-372.13.1.el8_6.x86_64 or later。
  3. For kernel version 4.4, the related openvswitch module has some issues for ct,please update kernel version or manually compile openvswitch kernel module.
  4. When building Geneve tunnel IPv6 in kernel should be enabled,check the kernel bootstrap options with cat /proc/cmdline.Check Geneve tunnels don't work when ipv6 is disabled for the detail bug info.

Environment Setup

  • Kernel should enable IPv6, if kernel bootstrap options contain ipv6.disable=1, it should be set to 0.
  • kube-proxy works, Kube-OVN can visit kube-apiserver from Service ClusterIP.
  • Make sure kubelet enabled CNI and find cni-bin and cni-conf in default directories, kubelet bootstrap options should contain --network-plugin=cni --cni-bin-dir=/opt/cni/bin --cni-conf-dir=/etc/cni/net.d.
  • Make sure no other CNI installed or has been removed,check if any config files still exist in/etc/cni/net.d/.

Ports Need Open

Component Port Usage
ovn-central 6641/tcp, 6642/tcp, 6643/tcp, 6644/tcp ovn-db and raft server listen ports
ovs-ovn Geneve 6081/udp, STT 7471/tcp, Vxlan 4789/udp tunnel ports
kube-ovn-controller 10660/tcp metrics port
kube-ovn-daemon 10665/tcp metrics port
kube-ovn-monitor 10661/tcp metrics port

微信群 Slack Twitter Support


Last update: July 20, 2023
Created: June 30, 2022

Comments

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/start/sealos-install/index.html b/v1.12.x/en/start/sealos-install/index.html index 062b97ff3..8f4645495 100644 --- a/v1.12.x/en/start/sealos-install/index.html +++ b/v1.12.x/en/start/sealos-install/index.html @@ -1,4 +1,4 @@ - Use Sealos to Deploy Kubernetes and Kube-OVN - Kube-OVN Document

One-Click Deployment of Kubernetes and Kube-OVN with sealos

sealos, a distribution of Kubernetes, helps users quickly initialize a container cluster from scratch. By using sealos, users can deploy a Kubernetes cluster with Kube-OVN installed in minutes with a single command.

Download sealos

wget https://github.com/labring/sealos/releases/download/v4.0.0/sealos_4.0.0_linux_amd64.tar.gz \
+    

One-Click Deployment of Kubernetes and Kube-OVN with sealos

sealos, a distribution of Kubernetes, helps users quickly initialize a container cluster from scratch. By using sealos, users can deploy a Kubernetes cluster with Kube-OVN installed in minutes with a single command.

Download sealos

wget https://github.com/labring/sealos/releases/download/v4.0.0/sealos_4.0.0_linux_amd64.tar.gz \
   && tar zxvf sealos_4.0.0_linux_amd64.tar.gz sealos && chmod +x sealos && mv sealos /usr/bin
 
wget https://github.com/labring/sealos/releases/download/v4.0.0/sealos_4.0.0_linux_arm64.tar.gz \
   && tar zxvf sealos_4.0.0_linux_arm64.tar.gz sealos && chmod +x sealos && mv sealos /usr/bin
@@ -66,7 +66,7 @@
                   Website :https://www.sealos.io/
                   Address :github.com/labring/sealos
 ```
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: September 6, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/start/underlay/index.html b/v1.12.x/en/start/underlay/index.html index 298444b12..9f5cf47d8 100644 --- a/v1.12.x/en/start/underlay/index.html +++ b/v1.12.x/en/start/underlay/index.html @@ -1,4 +1,4 @@ - Underlay Installation - Kube-OVN Document

Underlay Installation

By default, the default subnet uses Geneve to encapsulate cross-host traffic, and build an overlay network on top of the infrastructure.

For the case that you want the container network to use the physical network address directly, you can set the default subnet of Kube-OVN to work in Underlay mode, which can directly assign the address resources in the physical network to the containers, achieving better performance and connectivity with the physical network.

topology

Limitation

Since the container network in this mode uses physical network directly for L2 packet forwarding, L3 functions such as SNAT/EIP, distributed gateway/centralized gateway in Overlay mode cannot be used. VPC level isolation is also not available for underlay subnet.

Comparison with Macvlan

The Underlay mode of Kube-OVN is very similar to the Macvlan, with the following major differences in functionality and performance:

  1. Macvlan performs better in terms of throughput and latency performance metrics due to its shorter kernel path and the fact that it does not require OVS for packet processing.
  2. Kube-OVN provides arp-proxy functionality through flow tables to mitigate the risk of arp broadcast storms on large-scale networks.
  3. Since Macvlan works at the bottom of the kernel and bypasses the host netfilter, Service and NetworkPolicy functionality requires additional development. Kube-OVN provides Service and NetworkPolicy capabilities through the OVS flow table.
  4. Kube-OVN Underlay mode provides additional features such as address management, fixed IP and QoS compared to Macvlan.

Environment Requirements

In Underlay mode, the OVS will bridge a node NIC to the OVS bridge and send packets directly through that node NIC, relying on the underlying network devices for L2/L3 level forwarding capabilities. You need to configure the corresponding gateway, Vlan and security policy in the underlying network device in advance.

  1. For OpenStack VM environments, you need to turn off PortSecurity on the corresponding network port.
  2. For VMware vSwitch networks, MAC Address Changes, Forged Transmits and Promiscuous Mode Operation should be set to allow.
  3. For Hyper-V virtualization, MAC Address Spoofing should be enabled in VM nic advanced features.
  4. Public clouds, such as AWS, GCE, AliCloud, etc., do not support user-defined Mac, so they cannot support Underlay mode network. In this scenario, if you want to use Underlay, it is recommended to use the VPC-CNI provided by the corresponding public cloud vendor..
  5. The network interface that is bridged into ovs can not be type of Linux Bridge.

For management and container networks using the same NIC, Kube-OVN will transfer the NIC's Mac address, IP address, route, and MTU to the corresponding OVS Bridge to support single NIC deployment of Underlay networks. OVS Bridge name format is br-PROVIDER_NAMEPROVIDER_NAME is the name of ProviderNetwork (Default: provider).

Specify Network Mode When Deploying

This deployment mode sets the default subnet to Underlay mode, and all Pods with no subnet specified will run in the Underlay network by default.

Download Script

wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.12/dist/images/install.sh
+    

Underlay Installation

By default, the default subnet uses Geneve to encapsulate cross-host traffic, and build an overlay network on top of the infrastructure.

For the case that you want the container network to use the physical network address directly, you can set the default subnet of Kube-OVN to work in Underlay mode, which can directly assign the address resources in the physical network to the containers, achieving better performance and connectivity with the physical network.

topology

Limitation

Since the container network in this mode uses physical network directly for L2 packet forwarding, L3 functions such as SNAT/EIP, distributed gateway/centralized gateway in Overlay mode cannot be used. VPC level isolation is also not available for underlay subnet.

Comparison with Macvlan

The Underlay mode of Kube-OVN is very similar to the Macvlan, with the following major differences in functionality and performance:

  1. Macvlan performs better in terms of throughput and latency performance metrics due to its shorter kernel path and the fact that it does not require OVS for packet processing.
  2. Kube-OVN provides arp-proxy functionality through flow tables to mitigate the risk of arp broadcast storms on large-scale networks.
  3. Since Macvlan works at the bottom of the kernel and bypasses the host netfilter, Service and NetworkPolicy functionality requires additional development. Kube-OVN provides Service and NetworkPolicy capabilities through the OVS flow table.
  4. Kube-OVN Underlay mode provides additional features such as address management, fixed IP and QoS compared to Macvlan.

Environment Requirements

In Underlay mode, the OVS will bridge a node NIC to the OVS bridge and send packets directly through that node NIC, relying on the underlying network devices for L2/L3 level forwarding capabilities. You need to configure the corresponding gateway, Vlan and security policy in the underlying network device in advance.

  1. For OpenStack VM environments, you need to turn off PortSecurity on the corresponding network port.
  2. For VMware vSwitch networks, MAC Address Changes, Forged Transmits and Promiscuous Mode Operation should be set to allow.
  3. For Hyper-V virtualization, MAC Address Spoofing should be enabled in VM nic advanced features.
  4. Public clouds, such as AWS, GCE, AliCloud, etc., do not support user-defined Mac, so they cannot support Underlay mode network. In this scenario, if you want to use Underlay, it is recommended to use the VPC-CNI provided by the corresponding public cloud vendor..
  5. The network interface that is bridged into ovs can not be type of Linux Bridge.

For management and container networks using the same NIC, Kube-OVN will transfer the NIC's Mac address, IP address, route, and MTU to the corresponding OVS Bridge to support single NIC deployment of Underlay networks. OVS Bridge name format is br-PROVIDER_NAMEPROVIDER_NAME is the name of ProviderNetwork (Default: provider).

Specify Network Mode When Deploying

This deployment mode sets the default subnet to Underlay mode, and all Pods with no subnet specified will run in the Underlay network by default.

Download Script

wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.12/dist/images/install.sh
 

Modify Configuration Options

ENABLE_ARP_DETECT_IP_CONFLICT # disable vlan arp conflict detection if necessary
 NETWORK_TYPE                  # set to vlan
 VLAN_INTERFACE_NAME           # set to the NIC that carries the Underlay traffic, e.g. eth1
@@ -84,7 +84,7 @@
 Datapath actions: drop
 2022-11-13T08:44:34.077Z|00224|ofproto_dpif_xlate(handler5)|WARN|over 4096 resubmit actions on bridge br-int while processing arp,in_port=13483,vlan_tci=0x0000,dl_src=00:00:00:59:ef:13,dl_dst=ff:ff:ff:ff:ff:ff,arp_spa=10.213.152.3,arp_tpa=10.213.159.254,arp_op=1,arp_sha=00:00:00:59:ef:13,arp_tha=ff:ff:ff:ff:ff:ff
 

To solve this issue, modify the OVN NB option bcast_arp_req_flood to false:

kubectl ko nbctl set NB_Global . options:bcast_arp_req_flood=false
-

微信群 Slack Twitter Support


最后更新: September 12, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/en/start/uninstall/index.html b/v1.12.x/en/start/uninstall/index.html index 48f49e27c..c0c7382d4 100644 --- a/v1.12.x/en/start/uninstall/index.html +++ b/v1.12.x/en/start/uninstall/index.html @@ -1,4 +1,4 @@ - Uninstall - Kube-OVN Document

Uninstall

If you need to remove the Kube-OVN and replace it with another network plugin, please follow the steps below to remove all the corresponding Kube-OVN component and OVS configuration to avoid interference with other network plugins.

Feel free to contact us with an Issue to give us feedback on why you don't use Kube-OVN to help us improve it.

Delete Resource in Kubernetes

Download and run the script below to delete resource created in Kubernetes:

wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.12/dist/images/cleanup.sh
+    

Uninstall

If you need to remove the Kube-OVN and replace it with another network plugin, please follow the steps below to remove all the corresponding Kube-OVN component and OVS configuration to avoid interference with other network plugins.

Feel free to contact us with an Issue to give us feedback on why you don't use Kube-OVN to help us improve it.

Delete Resource in Kubernetes

Download and run the script below to delete resource created in Kubernetes:

wget https://raw.githubusercontent.com/kubeovn/kube-ovn/release-1.12/dist/images/cleanup.sh
 bash cleanup.sh
 

Cleanup Config and Logs on Every Node

Run the following commands on each node to clean up the configuration retained by ovsdb and openvswitch:

rm -rf /var/run/openvswitch
 rm -rf /var/run/ovn
@@ -18,7 +18,7 @@
 rm -rf /var/log/ovn
 rm -fr /var/log/kube-ovn
 

Reboot Node

Reboot the machine to ensure that the corresponding NIC information and iptable/ipset rules are cleared to avoid the interference with other network plugins:

reboot
-

微信群 Slack Twitter Support


最后更新: February 15, 2023
创建日期: June 30, 2022

评论

回到页面顶部
\ No newline at end of file +
Back to top
\ No newline at end of file diff --git a/v1.12.x/guide/custom-routes/index.html b/v1.12.x/guide/custom-routes/index.html index 81167c667..331c3cc0a 100644 --- a/v1.12.x/guide/custom-routes/index.html +++ b/v1.12.x/guide/custom-routes/index.html @@ -1,4 +1,4 @@ - 自定义路由 - Kube-OVN 文档