Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

operator: Ship slimmer binaries #10972

Merged
merged 2 commits into from
May 29, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
65 changes: 65 additions & 0 deletions Documentation/cmdref/cilium-operator-aws.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
<!-- This file was autogenerated via cilium-operator --cmdref, do not edit manually-->

## cilium-operator-aws

Run cilium-operator-aws

### Synopsis

Run cilium-operator-aws

```
cilium-operator-aws [flags]
```

### Options

```
--aws-instance-limit-mapping map Add or overwrite mappings of AWS instance limit in the form of {"AWS instance type": "Maximum Network Interfaces","IPv4 Addresses per Interface","IPv6 Addresses per Interface"}. cli example: --aws-instance-limit-mapping=a1.medium=2,4,4 --aws-instance-limit-mapping=a2.somecustomflavor=4,5,6 configmap example: {"a1.medium": "2,4,4", "a2.somecustomflavor": "4,5,6"} (default map[])
--aws-release-excess-ips Enable releasing excess free IP addresses from AWS ENI.
--cilium-endpoint-gc-interval duration GC interval for cilium endpoints (default 5m0s)
--cluster-id int Unique identifier of the cluster
--cluster-name string Name of the cluster (default "default")
--cluster-pool-ipv4-cidr string IPv4 CIDR Range for Pods in cluster. Requires 'ipam=cluster-pool' and 'enable-ipv4=true'
--cluster-pool-ipv4-mask-size int Mask size for each IPv4 podCIDR per node. Requires 'ipam=cluster-pool' and 'enable-ipv4=true' (default 24)
--cluster-pool-ipv6-cidr string IPv6 CIDR Range for Pods in cluster. Requires 'ipam=cluster-pool' and 'enable-ipv6=true'
--cluster-pool-ipv6-mask-size int Mask size for each IPv6 podCIDR per node. Requires 'ipam=cluster-pool' and 'enable-ipv6=true' (default 112)
--cnp-node-status-gc-interval duration GC interval for nodes which have been removed from the cluster in CiliumNetworkPolicy Status (default 2m0s)
--cnp-status-update-interval duration Interval between CNP status updates sent to the k8s-apiserver per-CNP (default 1s)
--config string Configuration file (default "$HOME/ciliumd.yaml")
--config-dir string Configuration directory that contains a file for each option
-D, --debug Enable debugging mode
--enable-ipv4 Enable IPv4 support (default true)
--enable-ipv6 Enable IPv6 support (default true)
--enable-k8s-api-discovery Enable discovery of Kubernetes API groups and resources with the discovery API
--enable-k8s-endpoint-slice Enables k8s EndpointSlice feature into Cilium-Operator if the k8s cluster supports it (default true)
--enable-metrics Enable Prometheus metrics
--eni-tags map ENI tags in the form of k1=v1 (multiple k/v pairs can be passed by repeating the CLI flag) (default map[])
-h, --help help for cilium-operator-aws
--identity-allocation-mode string Method to use for identity allocation (default "kvstore")
--identity-gc-interval duration GC interval for security identities (default 15m0s)
--identity-heartbeat-timeout duration Timeout after which identity expires on lack of heartbeat (default 30m0s)
--ipam string Backend to use for IPAM (default "eni")
--k8s-api-server string Kubernetes API server URL
--k8s-client-burst int Burst value allowed for the K8s client
--k8s-client-qps float32 Queries per second limit for the K8s client
--k8s-heartbeat-timeout duration Configures the timeout for api-server heartbeat, set to 0 to disable (default 30s)
--k8s-kubeconfig-path string Absolute path of the kubernetes kubeconfig file
--k8s-namespace string Name of the Kubernetes namespace in which Cilium Operator is deployed in
--kvstore string Key-value store type
--kvstore-opt map Key-value store options (default map[])
--limit-ipam-api-burst int Upper burst limit when accessing external APIs (default 4)
--limit-ipam-api-qps float Queries per second limit when accessing external IPAM APIs (default 20)
--nodes-gc-interval duration GC interval for nodes store in the kvstore (default 2m0s)
--operator-api-serve-addr string Address to serve API requests (default "localhost:9234")
--operator-prometheus-serve-addr string Address to serve Prometheus metrics (default ":6942")
--parallel-alloc-workers int Maximum number of parallel IPAM workers (default 50)
--subnet-ids-filter strings Subnets IDs (separated by commas)
--subnet-tags-filter stringToString Subnets tags in the form of k1=v1,k2=v2 (multiple k/v pairs can also be passed by repeating the CLI flag (default [])
--synchronize-k8s-nodes Synchronize Kubernetes nodes to kvstore and perform CNP GC (default true)
--synchronize-k8s-services Synchronize Kubernetes services to kvstore (default true)
--unmanaged-pod-watcher-interval int Interval to check for unmanaged kube-dns pods (0 to disable) (default 15)
--update-ec2-apdater-limit-via-api Use the EC2 API to update the instance type to adapter limits
--version Print version information
```

64 changes: 64 additions & 0 deletions Documentation/cmdref/cilium-operator-azure.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
<!-- This file was autogenerated via cilium-operator --cmdref, do not edit manually-->

## cilium-operator-azure

Run cilium-operator-azure

### Synopsis

Run cilium-operator-azure

```
cilium-operator-azure [flags]
```

### Options

```
--azure-resource-group string Resource group to use for Azure IPAM
--azure-subscription-id string Subscription ID to access Azure API
--cilium-endpoint-gc-interval duration GC interval for cilium endpoints (default 5m0s)
--cluster-id int Unique identifier of the cluster
--cluster-name string Name of the cluster (default "default")
--cluster-pool-ipv4-cidr string IPv4 CIDR Range for Pods in cluster. Requires 'ipam=cluster-pool' and 'enable-ipv4=true'
--cluster-pool-ipv4-mask-size int Mask size for each IPv4 podCIDR per node. Requires 'ipam=cluster-pool' and 'enable-ipv4=true' (default 24)
--cluster-pool-ipv6-cidr string IPv6 CIDR Range for Pods in cluster. Requires 'ipam=cluster-pool' and 'enable-ipv6=true'
--cluster-pool-ipv6-mask-size int Mask size for each IPv6 podCIDR per node. Requires 'ipam=cluster-pool' and 'enable-ipv6=true' (default 112)
--cnp-node-status-gc-interval duration GC interval for nodes which have been removed from the cluster in CiliumNetworkPolicy Status (default 2m0s)
--cnp-status-update-interval duration Interval between CNP status updates sent to the k8s-apiserver per-CNP (default 1s)
--config string Configuration file (default "$HOME/ciliumd.yaml")
--config-dir string Configuration directory that contains a file for each option
-D, --debug Enable debugging mode
--enable-ipv4 Enable IPv4 support (default true)
--enable-ipv6 Enable IPv6 support (default true)
--enable-k8s-api-discovery Enable discovery of Kubernetes API groups and resources with the discovery API
--enable-k8s-endpoint-slice Enables k8s EndpointSlice feature into Cilium-Operator if the k8s cluster supports it (default true)
--enable-metrics Enable Prometheus metrics
-h, --help help for cilium-operator-azure
--identity-allocation-mode string Method to use for identity allocation (default "kvstore")
--identity-gc-interval duration GC interval for security identities (default 15m0s)
--identity-heartbeat-timeout duration Timeout after which identity expires on lack of heartbeat (default 30m0s)
--ipam string Backend to use for IPAM (default "azure")
--k8s-api-server string Kubernetes API server URL
--k8s-client-burst int Burst value allowed for the K8s client
--k8s-client-qps float32 Queries per second limit for the K8s client
--k8s-heartbeat-timeout duration Configures the timeout for api-server heartbeat, set to 0 to disable (default 30s)
--k8s-kubeconfig-path string Absolute path of the kubernetes kubeconfig file
--k8s-namespace string Name of the Kubernetes namespace in which Cilium Operator is deployed in
--kvstore string Key-value store type
--kvstore-opt map Key-value store options (default map[])
--limit-ipam-api-burst int Upper burst limit when accessing external APIs (default 4)
--limit-ipam-api-qps float Queries per second limit when accessing external IPAM APIs (default 20)
--nodes-gc-interval duration GC interval for nodes store in the kvstore (default 2m0s)
--operator-api-serve-addr string Address to serve API requests (default "localhost:9234")
--operator-prometheus-serve-addr string Address to serve Prometheus metrics (default ":6942")
--parallel-alloc-workers int Maximum number of parallel IPAM workers (default 50)
--subnet-ids-filter strings Subnets IDs (separated by commas)
--subnet-tags-filter stringToString Subnets tags in the form of k1=v1,k2=v2 (multiple k/v pairs can also be passed by repeating the CLI flag (default [])
--synchronize-k8s-nodes Synchronize Kubernetes nodes to kvstore and perform CNP GC (default true)
--synchronize-k8s-services Synchronize Kubernetes services to kvstore (default true)
--unmanaged-pod-watcher-interval int Interval to check for unmanaged kube-dns pods (0 to disable) (default 15)
--update-ec2-apdater-limit-via-api Use the EC2 API to update the instance type to adapter limits
--version Print version information
```

62 changes: 62 additions & 0 deletions Documentation/cmdref/cilium-operator-generic.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
<!-- This file was autogenerated via cilium-operator --cmdref, do not edit manually-->

## cilium-operator-generic

Run cilium-operator-generic

### Synopsis

Run cilium-operator-generic

```
cilium-operator-generic [flags]
```

### Options

```
--cilium-endpoint-gc-interval duration GC interval for cilium endpoints (default 5m0s)
--cluster-id int Unique identifier of the cluster
--cluster-name string Name of the cluster (default "default")
--cluster-pool-ipv4-cidr string IPv4 CIDR Range for Pods in cluster. Requires 'ipam=cluster-pool' and 'enable-ipv4=true'
--cluster-pool-ipv4-mask-size int Mask size for each IPv4 podCIDR per node. Requires 'ipam=cluster-pool' and 'enable-ipv4=true' (default 24)
--cluster-pool-ipv6-cidr string IPv6 CIDR Range for Pods in cluster. Requires 'ipam=cluster-pool' and 'enable-ipv6=true'
--cluster-pool-ipv6-mask-size int Mask size for each IPv6 podCIDR per node. Requires 'ipam=cluster-pool' and 'enable-ipv6=true' (default 112)
--cnp-node-status-gc-interval duration GC interval for nodes which have been removed from the cluster in CiliumNetworkPolicy Status (default 2m0s)
--cnp-status-update-interval duration Interval between CNP status updates sent to the k8s-apiserver per-CNP (default 1s)
--config string Configuration file (default "$HOME/ciliumd.yaml")
--config-dir string Configuration directory that contains a file for each option
-D, --debug Enable debugging mode
--enable-ipv4 Enable IPv4 support (default true)
--enable-ipv6 Enable IPv6 support (default true)
--enable-k8s-api-discovery Enable discovery of Kubernetes API groups and resources with the discovery API
--enable-k8s-endpoint-slice Enables k8s EndpointSlice feature into Cilium-Operator if the k8s cluster supports it (default true)
--enable-metrics Enable Prometheus metrics
-h, --help help for cilium-operator-generic
--identity-allocation-mode string Method to use for identity allocation (default "kvstore")
--identity-gc-interval duration GC interval for security identities (default 15m0s)
--identity-heartbeat-timeout duration Timeout after which identity expires on lack of heartbeat (default 30m0s)
--ipam string Backend to use for IPAM (default "cluster-pool")
--k8s-api-server string Kubernetes API server URL
--k8s-client-burst int Burst value allowed for the K8s client
--k8s-client-qps float32 Queries per second limit for the K8s client
--k8s-heartbeat-timeout duration Configures the timeout for api-server heartbeat, set to 0 to disable (default 30s)
--k8s-kubeconfig-path string Absolute path of the kubernetes kubeconfig file
--k8s-namespace string Name of the Kubernetes namespace in which Cilium Operator is deployed in
--kvstore string Key-value store type
--kvstore-opt map Key-value store options (default map[])
--limit-ipam-api-burst int Upper burst limit when accessing external APIs (default 4)
--limit-ipam-api-qps float Queries per second limit when accessing external IPAM APIs (default 20)
--nodes-gc-interval duration GC interval for nodes store in the kvstore (default 2m0s)
--operator-api-serve-addr string Address to serve API requests (default "localhost:9234")
--operator-prometheus-serve-addr string Address to serve Prometheus metrics (default ":6942")
--parallel-alloc-workers int Maximum number of parallel IPAM workers (default 50)
--subnet-ids-filter strings Subnets IDs (separated by commas)
--subnet-tags-filter stringToString Subnets tags in the form of k1=v1,k2=v2 (multiple k/v pairs can also be passed by repeating the CLI flag (default [])
--synchronize-k8s-nodes Synchronize Kubernetes nodes to kvstore and perform CNP GC (default true)
--synchronize-k8s-services Synchronize Kubernetes services to kvstore (default true)
--unmanaged-pod-watcher-interval int Interval to check for unmanaged kube-dns pods (0 to disable) (default 15)
--update-ec2-apdater-limit-via-api Use the EC2 API to update the instance type to adapter limits
--version Print version information
```

4 changes: 2 additions & 2 deletions Documentation/cmdref/cilium-operator.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@

## cilium-operator

Run the cilium-operator
Run cilium-operator

### Synopsis

Run the cilium-operator
Run cilium-operator

```
cilium-operator [flags]
Expand Down
3 changes: 3 additions & 0 deletions Documentation/cmdref/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,7 @@ Command Reference
cli_index
cilium-health
cilium-operator
cilium-operator-aws
cilium-operator-azure
cilium-operator-generic
kvstore
3 changes: 3 additions & 0 deletions Documentation/update-cmdref.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ generators=(
"bugtool/cilium-bugtool cmdref -d"
"cilium-health/cilium-health --cmdref"
"operator/cilium-operator --cmdref"
"operator/cilium-operator-aws --cmdref"
"operator/cilium-operator-azure --cmdref"
"operator/cilium-operator-generic --cmdref"
)

for g in "${generators[@]}" ; do
Expand Down
5 changes: 4 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,10 @@ include Makefile.defs
# Use the main repo as the build-context by default
DOCKER_BUILD_DIR := .
CILIUM_DOCKERFILE := Dockerfile
OPERATOR_DOCKERFILE := cilium-operator.Dockerfile
OPERATOR_DOCKERFILES := cilium-operator.Dockerfile \
cilium-operator-aws.Dockerfile \
cilium-operator-azure.Dockerfile \
cilium-operator-generic.Dockerfile
DOCKER_PLUGIN_DOCKERFILE := cilium-docker-plugin.Dockerfile
HUBBLE_RELAY_DOCKERFILE := hubble-relay.Dockerfile

Expand Down
5 changes: 4 additions & 1 deletion Makefile.buildkit
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,10 @@ veryclean: clean-build
# Overrides for the main Dockerfile
DOCKER_BUILD_DIR := $(BUILD_DIR)/context
CILIUM_DOCKERFILE := $(BUILD_DIR)/cilium.Dockerfile
OPERATOR_DOCKERFILE := $(BUILD_DIR)/cilium-operator.Dockerfile
OPERATOR_DOCKERFILES := $(BUILD_DIR)/cilium-operator.Dockerfile \
$(BUILD_DIR)/cilium-operator-aws.Dockerfile \
$(BUILD_DIR)/cilium-operator-azure.Dockerfile \
$(BUILD_DIR)/cilium-operator-generic.Dockerfile
DOCKER_PLUGIN_DOCKERFILE := $(BUILD_DIR)/cilium-docker-plugin.Dockerfile
HUBBLE_RELAY_DOCKERFILE := $(BUILD_DIR)/hubble-relay.Dockerfile

Expand Down