Skip to content

Commit 9cb808e

Browse files
authored
Update package release documentation to point to latest version (#9751)
* update package release documentation * update changelog and cert manager version * modify changelog * change cert-manager version
1 parent 0c004bc commit 9cb808e

File tree

7 files changed

+362
-4
lines changed

7 files changed

+362
-4
lines changed
Lines changed: 133 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,133 @@
1+
---
2+
title: "v0.43.1"
3+
linkTitle: "v0.43.1"
4+
weight: 20
5+
aliases:
6+
/docs/reference/packagespec/adot/v0.43.1/
7+
description: >
8+
---
9+
10+
{{% pageinfo %}}
11+
The logging exporter is now [deprecated](https://github.com/open-telemetry/opentelemetry-collector/pull/11037) , users should update the config to the debug exporter instead
12+
13+
{{% /pageinfo %}}
14+
15+
### Configuring ADOT in EKS Anywhere package spec
16+
17+
#### Example
18+
19+
We included a sample configuration below for reference. For in-depth examples and use cases, please refer to [ADOT with AMP and AMG.]({{< relref "adot_amp_amg.md" >}})
20+
21+
```
22+
apiVersion: packages.eks.amazonaws.com/v1alpha1
23+
kind: Package
24+
metadata:
25+
name: my-adot
26+
namespace: eksa-packages-<cluster-name>
27+
spec:
28+
packageName: adot
29+
targetNamespace: observability
30+
config: |
31+
mode: daemonset
32+
```
33+
34+
#### Configurable parameters and default values under `spec.config`
35+
36+
| Parameter | Description | Default |
37+
|-----|---------|-------------|
38+
|**General**|
39+
| hostNetwork | Indicates if the pod should run in the host networking namespace. | `false` |
40+
| image.pullPolicy | Specifies image pull policy: `IfNotPresent`, `Always`, `Never`. | `"IfNotPresent"` |
41+
| mode | Specifies Collector deployment options: `daemonset`, `deployment`, or `statefulset`. | `"daemonset"` |
42+
| ports.[\*].containerPort | Specifies containerPort used. | See footnote [^1] |
43+
| ports.[\*].enabled | Indicates if a port is enabled. | See footnote [^1] |
44+
| ports.[\*].hostPort | Specifies hostPort used. | See footnote [^1] |
45+
| ports.[\*].protocol | Specifies protocol used. | See footnote [^1] |
46+
| ports.[\*].servicePort | Specifies servicePort used. | See footnote [^1] |
47+
| resources.limits.cpu | Specifies CPU resource limits for containers. | `1` |
48+
| resources.limits.memory | Specifies memory resource limits for containers. | `"2Gi"` |
49+
|**Config**|
50+
| config.config | Specifies Collector receiver, processor, exporter, and extensions configurations. Refer to [aws-otel-collector](https://github.com/aws-observability/aws-otel-collector) for full details. **Note EKS Anywhere ADOT package version matches the exact aws-otel-collector version.** | See footnote [^2] |
51+
| config.config.receiver | Specifies how data gets in the Collector. Receivers can be either push or pull based, and support one or more data source. | See footnote [^2] |
52+
| config.config.processor | Specifies how processors are run on data between the stage of being received and being exported. Processors are optional though some are [recommended.](https://github.com/open-telemetry/opentelemetry-collector/tree/main/processor#recommended-processors) | See footnote [^2] |
53+
| config.config.exporters | Specifies how data gets sent to backends/destinations. Exporters can be either push or pull based, and support one or more data source. | See footnote [^2] |
54+
| config.config.extensions | Specifies tasks that do not involve processing telemetry data. Examples of extensions include health monitoring, service discovery, and data forwarding. Extensions are optional. | See footnote [^2] |
55+
| config.config.service | Specifies what components are enabled in the Collector based on the configuration found in the receivers, processors, exporters, and extensions sections. **If a component is configured, but not defined within the service section, then it is not enabled.** | See footnote [^2] |
56+
|**Deployment mode only**|
57+
| replicaCount | Specifies replicaCount for pods. | `1` |
58+
| service.type | Specifies service types: `ClusterIP`, `NodePort`, `LoadBalancer`, `ExternalName`. |`"ClusterIP"` |
59+
60+
[^1]:
61+
The default `ports` enables `otlp` and `otlp-http`. See below specification for details.
62+
```yaml
63+
apiVersion: packages.eks.amazonaws.com/v1alpha1
64+
kind: Package
65+
...
66+
spec:
67+
config: |
68+
ports:
69+
otlp:
70+
enabled: true
71+
containerPort: 4317
72+
servicePort: 4317
73+
hostPort: 4317
74+
protocol: TCP
75+
otlp-http:
76+
enabled: true
77+
containerPort: 4318
78+
servicePort: 4318
79+
hostPort: 4318
80+
protocol: TCP
81+
```
82+
83+
[^2]:
84+
The default `config.config` deploys an ADOT Collector with the metrics pipeline, which includes otlp and prometheus receiver, and logging exporter. See below specification for details.
85+
```yaml
86+
apiVersion: packages.eks.amazonaws.com/v1alpha1
87+
kind: Package
88+
...
89+
spec:
90+
config: |
91+
config:
92+
receivers:
93+
otlp:
94+
protocols:
95+
grpc:
96+
endpoint: 0.0.0.0:4317
97+
http:
98+
endpoint: 0.0.0.0:4318
99+
prometheus:
100+
config:
101+
scrape_configs:
102+
- job_name: opentelemetry-collector
103+
scrape_interval: 10s
104+
static_configs:
105+
- targets:
106+
- ${MY_POD_IP}:8888
107+
processors:
108+
batch: {}
109+
memory_limiter: null
110+
exporters:
111+
logging:
112+
loglevel: info
113+
extensions:
114+
health_check: {}
115+
memory_ballast: {}
116+
service:
117+
telemetry:
118+
metrics:
119+
address: 0.0.0.0:8888
120+
extensions:
121+
- health_check
122+
- memory_ballast
123+
pipelines:
124+
metrics:
125+
exporters:
126+
- logging
127+
processors:
128+
- memory_limiter
129+
- batch
130+
receivers:
131+
- otlp
132+
- prometheus
133+
```
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
---
2+
title: "v1.16.4"
3+
linkTitle: "v1.16.4"
4+
weight: 50
5+
aliases:
6+
/docs/reference/packagespec/cert-manager/v1.16.4/
7+
description: >
8+
---
9+
10+
### Configuring Cert-Manager in EKS Anywhere package spec
11+
12+
#### Example
13+
```
14+
apiVersion: packages.eks.amazonaws.com/v1alpha1
15+
kind: Package
16+
metadata:
17+
name: my-cert-manager
18+
namespace: eksa-packages-<cluster-name>
19+
spec:
20+
packageName: cert-manager
21+
config: |
22+
global:
23+
logLevel: 4
24+
```
25+
26+
The following table lists the configurable parameters of the cert-manager package spec and the default values.
27+
28+
| Parameter | Description | Default |
29+
|--------------------------|------------------------------------------------------------------------------------------------------|----------------|
30+
| **General** | | |
31+
| `namespace` | The namespace to use for installing cert-manager package | `cert-manager` |
32+
| `imagePullPolicy` | The image pull policy | `IfNotPresent` |
33+
| **global** | | |
34+
| `global.logLevel` | The log level: integer from 0-6 | `2` |
35+
| **Webhook** | | |
36+
| `webhook.timeoutSeconds` | The time in seconds to wait for the webhook to connect with the kube-api server | `0` |
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
title: "v9.46.6"
3+
linkTitle: "v9.46.6"
4+
weight: 30
5+
aliases:
6+
/docs/reference/packagespec/cluster-autoscaler/v9.46.6/
7+
description: >
8+
---
9+
10+
### Configuring Cluster Autoscaler in EKS Anywhere package spec
11+
12+
| Parameter | Description | Default |
13+
|---|---|---|
14+
|**General**|||
15+
| cloudProvider | Cluster Autoscaler cloud provider. This should always be clusterapi. <br/>Example:<br/> <pre>cloudProvider: "clusterapi"</pre>| "clusterapi"
16+
| autoDiscovery.clusterName | Name of the kubernetes cluster this autoscaler package should autoscale. <br/>Example:<br/> <pre>autoDiscovery.clusterName: "mgmt-cluster"</pre>| false
17+
| clusterAPIMode | Where Cluster Autoscaler should look for a kubeconfig to communicate with the cluster it will manage. See https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/cloudprovider/clusterapi/README.md#connecting-cluster-autoscaler-to-cluster-api-management-and-workload-clusters <br/>Example:<br/> <pre>clusterAPIMode: "incluster-kubeconfig"</pre>| "incluster-incluster"
18+
| clusterAPICloudConfigPath | Path to kubeconfig for connecting to Cluster API Management Cluster, only used if `clusterAPIMode=kubeconfig-kubeconfig or incluster-kubeconfig` <br/>Example:<br/> <pre>clusterAPICloudConfigPath: "/etc/kubernetes/value"</pre>| "/etc/kubernetes/mgmt-kubeconfig"
19+
| extraVolumeSecrets | Additional volumes to mount from Secrets. <br/>Example:<br/> <pre>extraVolumeSecrets: {}</pre>| {}
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
---
2+
title: "v0.4.6"
3+
linkTitle: "v0.4.6"
4+
weight: 30
5+
aliases:
6+
/docs/reference/packagespec/credential-provider-package/v0.4.6/
7+
description: >
8+
---
9+
10+
### Configuring Credential Provider Package in EKS Anywhere package spec
11+
12+
#### Example
13+
14+
The following is the sample configuration for the credential provider package that is installed by default with the package controller.
15+
Please refer to [Credential Provider Package with IAM Roles Anywhere.]({{< relref "iam_roles_anywhere" >}})
16+
17+
```
18+
apiVersion: packages.eks.amazonaws.com/v1alpha1
19+
kind: Package
20+
metadata:
21+
name: ecr-credential-provider-package
22+
namespace: eksa-packages-<clusterName>
23+
annotations:
24+
"helm.sh/resource-policy": keep
25+
"anywhere.eks.aws.com/internal": "true"
26+
spec:
27+
packageName: credential-provider-package
28+
targetNamespace: eksa-packages
29+
config: |-
30+
tolerations:
31+
- key: "node-role.kubernetes.io/master"
32+
operator: "Exists"
33+
effect: "NoSchedule"
34+
- key: "node-role.kubernetes.io/control-plane"
35+
operator: "Exists"
36+
effect: "NoSchedule"
37+
sourceRegistry: public.ecr.aws/eks-anywhere
38+
credential:
39+
- matchImages:
40+
- 783794618700.dkr.ecr.us-west-2.amazonaws.com
41+
profile: "default"
42+
secretName: aws-secret
43+
defaultCacheDuration: "5h"
44+
```
45+
46+
In this example, the credential provider will use the secret provided in aws-secret (created automatically on cluster creation) to authenticate to the repository from which curated package images are pulled. Tolerations were also added so that the control plane nodes would also be configured with authentication.
47+
48+
The secret can exist in two forms: either a base64 encoding of a credential config or individual keys for fields.
49+
50+
Example credential
51+
```
52+
[default]
53+
aws_access_key_id=EXAMPLE_ACCESS_KEY
54+
aws_secret_access_key=EXAMPLE_SECRET_KEY
55+
region=us-west-2
56+
```
57+
58+
##### Example secret with separate keys
59+
```
60+
apiVersion: v1
61+
kind: Secret
62+
metadata:
63+
name: aws-secret
64+
namespace: eksa-packages
65+
data:
66+
AWS_ACCESS_KEY_ID: "QUtJQUlPU0ZPRE5ON0VYQU1QTEUK"
67+
AWS_SECRET_ACCESS_KEY: "d0phbHJYVXRuRkVNSS9LN01ERU5HL2JQeFJmaUNZRVhBTVBMRUtFWQo="
68+
REGION: dXMtd2VzdC0yCg==
69+
```
70+
71+
##### Example secret in config form
72+
```
73+
apiVersion: v1
74+
kind: Secret
75+
metadata:
76+
name: aws-secret
77+
namespace: eksa-packages
78+
data:
79+
config: W2RlZmF1bHRdCmF3c19hY2Nlc3Nfa2V5X2lkPUFLSUFJT1NGT0ROTjdFWEFNUExFCmF3c19zZWNyZXRfYWNjZXNzX2tleT13SmFsclhVdG5GRU1JL0s3TURFTkcvYlB4UmZpQ1lFWEFNUExFS0VZCnJlZ2lvbj11cy13ZXN0LTI=
80+
type: Opaque
81+
```
82+
83+
#### Configurable parameters and default values under `spec.config`
84+
85+
| Parameter | Description | Default |
86+
|----------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------|
87+
| **General** | | |
88+
| image.pullPolicy | Specifies image pull policy: `IfNotPresent`, `Always`, `Never`. | `"IfNotPresent"` |
89+
| tolerations | [Kubernetes tolerations](https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/) for pod scheduling | `{}` |
90+
| **Credential** | | |
91+
| credential | List of credential providers for authenticating with ECR. Currently only one is supported | <pre>credential: <br/> - secretName: "aws-secret"<br/> matchImages: []<br/> defaultCacheDuration: "1h"<br/> profile: "default</pre> |
92+
| secretName | Name of secret that contains the aws credentials | `"aws-secret"` |
93+
| profile | AWS Profile for secretName | `"default"` |
94+
| matchImages | List of strings used to match against images. See [here](https://kubernetes.io/docs/tasks/administer-cluster/kubelet-credential-provider/#configure-image-matching) for more info <br/>Example to match against any account across multiple regions for ECR:<br/></pre>`"*.dkr.ecr.*.amazonaws.com"`</pre> | `"[]"` |
95+
| defaultCacheDuration | Duration the kubelet will cache credentials in-memory. For ECR it is recommended to keep this value less then 12 hours. | `"5h"` |
96+

0 commit comments

Comments
 (0)