Skip to content

Commit da7b612

Browse files
authored
Merge pull request #190 from ovh/feat/cloud-kube-cilium-ip-allocation
feat : add IPAllocationPolicy and cilium customization on cloud kube
2 parents ee0db4d + 4cb39be commit da7b612

9 files changed

Lines changed: 992 additions & 126 deletions

doc/ovhcloud_cloud_managed-kubernetes_create.md

Lines changed: 43 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -49,32 +49,49 @@ ovhcloud cloud managed-kubernetes create [flags]
4949
### Options
5050

5151
```
52-
--customization.api-server.admission-plugins.disabled strings Admission plugins to disable on API server (AlwaysPullImages, NodeRestriction)
53-
--customization.api-server.admission-plugins.enabled strings Admission plugins to enable on API server (AlwaysPullImages, NodeRestriction)
54-
--customization.kube-proxy.iptables.min-sync-period string Minimum period that iptables rules are refreshed, in RFC3339 duration format (e.g. 'PT60S')
55-
--customization.kube-proxy.iptables.sync-period string Period that iptables rules are refreshed, in RFC3339 duration format (e.g. 'PT60S')
56-
--customization.kube-proxy.ipvs.min-sync-period string Minimum period that ipvs rules are refreshed in RFC3339 duration format (e.g. 'PT60S')
57-
--customization.kube-proxy.ipvs.scheduler string Scheduler for kube-proxy ipvs (dh, lc, nq, rr, sed, sh)
58-
--customization.kube-proxy.ipvs.sync-period string Period that ipvs rules are refreshed in RFC3339 duration format (e.g. 'PT60S')
59-
--customization.kube-proxy.ipvs.tcp-fin-timeout string Timeout value used for IPVS TCP sessions after receiving a FIN in RFC3339 duration format (e.g. 'PT60S')
60-
--customization.kube-proxy.ipvs.tcp-timeout string Timeout value used for idle IPVS TCP sessions in RFC3339 duration format (e.g. 'PT60S')
61-
--customization.kube-proxy.ipvs.udp-timeout string Timeout value used for IPVS UDP packets in RFC3339 duration format (e.g. 'PT60S')
62-
--editor Use a text editor to define parameters
63-
--from-file string File containing parameters
64-
-h, --help help for create
65-
--init-file string Create a file with example parameters
66-
--kube-proxy-mode string Kube-proxy mode (iptables or ipvs)
67-
--load-balancers-subnet-id string OpenStack subnet ID that the load balancers will use
68-
--name string Name of the Kubernetes cluster
69-
--nodes-subnet-id string OpenStack subnet ID that the cluster nodes will use
70-
--plan string Kubernetes cluster plan (free or standard, default: free)
71-
--private-network-id string OpenStack private network ID that the cluster will use
72-
--private-network.default-vrack-gateway string If defined, all egress traffic will be routed towards this IP address, which should belong to the private network
73-
--private-network.routing-as-default Set private network routing as default
74-
--region string Region for the Kubernetes cluster
75-
--replace Replace parameters file if it already exists
76-
--update-policy string Update policy for the cluster (ALWAYS_UPDATE, MINIMAL_DOWNTIME, NEVER_UPDATE)
77-
--version string Kubernetes version
52+
--api-server.admission-plugins.disabled strings Admission plugins to disable on API server (AlwaysPullImages, NodeRestriction)
53+
--api-server.admission-plugins.enabled strings Admission plugins to enable on API server (AlwaysPullImages, NodeRestriction)
54+
--cilium-cluster-id uint8 Cilium cluster ID
55+
--cilium-cluster-mesh-apiserver-node-port uint16 ClusterMesh API server node port
56+
--cilium-cluster-mesh-apiserver-service-type string ClusterMesh API server service type (LoadBalancer, NodePort)
57+
--cilium-cluster-mesh-enabled Enable Cilium ClusterMesh
58+
--cilium-hubble-enabled Enable Hubble observability
59+
--cilium-hubble-relay-enabled Enable Hubble Relay
60+
--cilium-hubble-ui-backend-limits-cpu string Hubble UI backend CPU limit (e.g. '500m')
61+
--cilium-hubble-ui-backend-limits-memory string Hubble UI backend memory limit (e.g. '256Mi')
62+
--cilium-hubble-ui-backend-requests-cpu string Hubble UI backend CPU request (e.g. '100m')
63+
--cilium-hubble-ui-backend-requests-memory string Hubble UI backend memory request (e.g. '128Mi')
64+
--cilium-hubble-ui-enabled Enable Hubble UI
65+
--cilium-hubble-ui-frontend-limits-cpu string Hubble UI frontend CPU limit (e.g. '500m')
66+
--cilium-hubble-ui-frontend-limits-memory string Hubble UI frontend memory limit (e.g. '256Mi')
67+
--cilium-hubble-ui-frontend-requests-cpu string Hubble UI frontend CPU request (e.g. '100m')
68+
--cilium-hubble-ui-frontend-requests-memory string Hubble UI frontend memory request (e.g. '128Mi')
69+
--editor Use a text editor to define parameters
70+
--from-file string File containing parameters
71+
-h, --help help for create
72+
--init-file string Create a file with example parameters
73+
--ip-allocation-policy-pods-ipv4-cidr string IPv4 CIDR for pods
74+
--ip-allocation-policy-services-ipv4-cidr string IPv4 CIDR for services
75+
--kube-proxy-mode string Kube-proxy mode (iptables or ipvs)
76+
--kube-proxy.iptables.min-sync-period string Minimum period that iptables rules are refreshed, in RFC3339 duration format (e.g. 'PT60S')
77+
--kube-proxy.iptables.sync-period string Period that iptables rules are refreshed, in RFC3339 duration format (e.g. 'PT60S')
78+
--kube-proxy.ipvs.min-sync-period string Minimum period that ipvs rules are refreshed in RFC3339 duration format (e.g. 'PT60S')
79+
--kube-proxy.ipvs.scheduler string Scheduler for kube-proxy ipvs (dh, lc, nq, rr, sed, sh)
80+
--kube-proxy.ipvs.sync-period string Period that ipvs rules are refreshed in RFC3339 duration format (e.g. 'PT60S')
81+
--kube-proxy.ipvs.tcp-fin-timeout string Timeout value used for IPVS TCP sessions after receiving a FIN in RFC3339 duration format (e.g. 'PT60S')
82+
--kube-proxy.ipvs.tcp-timeout string Timeout value used for idle IPVS TCP sessions in RFC3339 duration format (e.g. 'PT60S')
83+
--kube-proxy.ipvs.udp-timeout string Timeout value used for IPVS UDP packets in RFC3339 duration format (e.g. 'PT60S')
84+
--load-balancers-subnet-id string OpenStack subnet ID that the load balancers will use
85+
--name string Name of the Kubernetes cluster
86+
--nodes-subnet-id string OpenStack subnet ID that the cluster nodes will use
87+
--plan string Kubernetes cluster plan (free or standard, default: free)
88+
--private-network-id string OpenStack private network ID that the cluster will use
89+
--private-network.default-vrack-gateway string If defined, all egress traffic will be routed towards this IP address, which should belong to the private network
90+
--private-network.routing-as-default Set private network routing as default
91+
--region string Region for the Kubernetes cluster
92+
--replace Replace parameters file if it already exists
93+
--update-policy string Update policy for the cluster (ALWAYS_UPDATE, MINIMAL_DOWNTIME, NEVER_UPDATE)
94+
--version string Kubernetes version
7895
```
7996

8097
### Options inherited from parent commands

doc/ovhcloud_cloud_managed-kubernetes_customization_edit.md

Lines changed: 27 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,18 +9,33 @@ ovhcloud cloud managed-kubernetes customization edit <cluster_id> [flags]
99
### Options
1010

1111
```
12-
--api-server.admission-plugins.disabled strings Admission plugins to disable on API server (AlwaysPullImages, NodeRestriction)
13-
--api-server.admission-plugins.enabled strings Admission plugins to enable on API server (AlwaysPullImages, NodeRestriction)
14-
--editor Use a text editor to define parameters
15-
-h, --help help for edit
16-
--kube-proxy.iptables.min-sync-period string Minimum period that iptables rules are refreshed, in RFC3339 duration format (e.g. 'PT60S')
17-
--kube-proxy.iptables.sync-period string Period that iptables rules are refreshed, in RFC3339 duration format (e.g. 'PT60S')
18-
--kube-proxy.ipvs.min-sync-period string Minimum period that ipvs rules are refreshed in RFC3339 duration format (e.g. 'PT60S')
19-
--kube-proxy.ipvs.scheduler string Scheduler for kube-proxy ipvs (dh, lc, nq, rr, sed, sh)
20-
--kube-proxy.ipvs.sync-period string Period that ipvs rules are refreshed in RFC3339 duration format (e.g. 'PT60S')
21-
--kube-proxy.ipvs.tcp-fin-timeout string Timeout value used for IPVS TCP sessions after receiving a FIN in RFC3339 duration format (e.g. 'PT60S')
22-
--kube-proxy.ipvs.tcp-timeout string Timeout value used for idle IPVS TCP sessions in RFC3339 duration format (e.g. 'PT60S')
23-
--kube-proxy.ipvs.udp-timeout string Timeout value used for IPVS UDP packets in RFC3339 duration format (e.g. 'PT60S')
12+
--api-server.admission-plugins.disabled strings Admission plugins to disable on API server (AlwaysPullImages, NodeRestriction)
13+
--api-server.admission-plugins.enabled strings Admission plugins to enable on API server (AlwaysPullImages, NodeRestriction)
14+
--cilium-cluster-id uint8 Cilium cluster ID
15+
--cilium-cluster-mesh-apiserver-node-port uint16 ClusterMesh API server node port
16+
--cilium-cluster-mesh-apiserver-service-type string ClusterMesh API server service type (LoadBalancer, NodePort)
17+
--cilium-cluster-mesh-enabled Enable Cilium ClusterMesh
18+
--cilium-hubble-enabled Enable Hubble observability
19+
--cilium-hubble-relay-enabled Enable Hubble Relay
20+
--cilium-hubble-ui-backend-limits-cpu string Hubble UI backend CPU limit (e.g. '500m')
21+
--cilium-hubble-ui-backend-limits-memory string Hubble UI backend memory limit (e.g. '256Mi')
22+
--cilium-hubble-ui-backend-requests-cpu string Hubble UI backend CPU request (e.g. '100m')
23+
--cilium-hubble-ui-backend-requests-memory string Hubble UI backend memory request (e.g. '128Mi')
24+
--cilium-hubble-ui-enabled Enable Hubble UI
25+
--cilium-hubble-ui-frontend-limits-cpu string Hubble UI frontend CPU limit (e.g. '500m')
26+
--cilium-hubble-ui-frontend-limits-memory string Hubble UI frontend memory limit (e.g. '256Mi')
27+
--cilium-hubble-ui-frontend-requests-cpu string Hubble UI frontend CPU request (e.g. '100m')
28+
--cilium-hubble-ui-frontend-requests-memory string Hubble UI frontend memory request (e.g. '128Mi')
29+
--editor Use a text editor to define parameters
30+
-h, --help help for edit
31+
--kube-proxy.iptables.min-sync-period string Minimum period that iptables rules are refreshed, in RFC3339 duration format (e.g. 'PT60S')
32+
--kube-proxy.iptables.sync-period string Period that iptables rules are refreshed, in RFC3339 duration format (e.g. 'PT60S')
33+
--kube-proxy.ipvs.min-sync-period string Minimum period that ipvs rules are refreshed in RFC3339 duration format (e.g. 'PT60S')
34+
--kube-proxy.ipvs.scheduler string Scheduler for kube-proxy ipvs (dh, lc, nq, rr, sed, sh)
35+
--kube-proxy.ipvs.sync-period string Period that ipvs rules are refreshed in RFC3339 duration format (e.g. 'PT60S')
36+
--kube-proxy.ipvs.tcp-fin-timeout string Timeout value used for IPVS TCP sessions after receiving a FIN in RFC3339 duration format (e.g. 'PT60S')
37+
--kube-proxy.ipvs.tcp-timeout string Timeout value used for idle IPVS TCP sessions in RFC3339 duration format (e.g. 'PT60S')
38+
--kube-proxy.ipvs.udp-timeout string Timeout value used for IPVS UDP packets in RFC3339 duration format (e.g. 'PT60S')
2439
```
2540

2641
### Options inherited from parent commands

0 commit comments

Comments
 (0)