-
Notifications
You must be signed in to change notification settings - Fork 232
Fix formating & add needed config for xpack.security.remote_cluster_s… #6732
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
Changes from 3 commits
922e83c
0d6e4af
4e3bd71
8a51e44
665a8da
3982a76
9a408a0
479bb9b
9ef6dbc
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -90,7 +90,7 @@ | |
| apiVersion: elasticsearch.k8s.elastic.co/v1 | ||
| kind: Elasticsearch | ||
| metadata: | ||
| name: es | ||
| name: quickstart | ||
| spec: | ||
| version: 8.16.1 | ||
| transport: | ||
|
|
@@ -123,10 +123,63 @@ | |
| csi.cert-manager.io/dns-names: "${POD_NAME}.${POD_NAMESPACE}.svc.cluster.local" <3> | ||
| ``` | ||
|
|
||
| 1. Disables the default certificates generated by ECK for the transport layer. | ||
| 2. The example assumes that a `ClusterIssuer` by the name of `ca-cluster-issuer` exists and a PEM encoded version of the CA certificate is available in a ConfigMap (in the example named `trust`). The CA certificate must be in a file called `ca.crt` inside the ConfigMap in the same namespace as the {{es}} resource. | ||
| 3. If the remote cluster server is enabled, then the DNS names must also include both:* The DNS name for the related Kubernetes `Service`: `<cluster-name>-es-remote-cluster.${POD_NAMESPACE}.svc` | ||
| * The Pod DNS name: `${POD_NAME}.<cluster-name>-es-<nodeset-name>.${POD_NAMESPACE}.svc` | ||
| 3. If the remote cluster server is enabled, the DNS names and nodeSet configuration require additional settings, as shown in the following example. | ||
|
|
||
| ::::{dropdown} Remote cluster server with third-party transport certificates | ||
| If you enable the remote cluster server interface for [Remote clusters](/deploy-manage/remote-clusters/eck-remote-clusters-landing.md) with API key-based authentication and use third-party tools to issue transport certificates, you must apply additional configuration beyond the settings shown in the previous example: | ||
|
|
||
| * DNS names: configure `csi.cert-manager.io/dns-names` to include the remote cluster service and Pod FQDNs, in the following format: | ||
| * `<cluster-name>-es-remote-cluster.${POD_NAMESPACE}.svc` | ||
| * `${POD_NAME}.<cluster-name>-es-<nodeset-name>.${POD_NAMESPACE}.svc` | ||
| * Remote cluster server SSL settings: add the certificate and key. | ||
|
|
||
| The following manifest shows a complete configuration for a cluster named `quickstart` with a single nodeSet named `default`: | ||
|
|
||
| ```yaml | ||
| apiVersion: elasticsearch.k8s.elastic.co/v1 | ||
| kind: Elasticsearch | ||
| metadata: | ||
| name: quickstart | ||
| spec: | ||
| version: 8.16.1 | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This might not even be relevant, but should we try to use 9.something as this is the 9.X docset?
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. yeah, I'm planning to address all ECK examples in a different PR, to use {{version.stack}} where applicable. |
||
| remoteClusterServer: | ||
| enabled: true | ||
| transport: | ||
| tls: | ||
| certificateAuthorities: | ||
| configMapName: trust | ||
| selfSignedCertificates: | ||
| disabled: true | ||
| nodeSets: | ||
| - name: default | ||
| count: 3 | ||
| config: | ||
| xpack.security.transport.ssl.key: /usr/share/elasticsearch/config/cert-manager-certs/tls.key | ||
| xpack.security.transport.ssl.certificate: /usr/share/elasticsearch/config/cert-manager-certs/tls.crt | ||
| xpack.security.remote_cluster_server.ssl.key: /usr/share/elasticsearch/config/cert-manager-certs/tls.key <1> | ||
| xpack.security.remote_cluster_server.ssl.certificate: /usr/share/elasticsearch/config/cert-manager-certs/tls.crt <1> | ||
| podTemplate: | ||
| spec: | ||
| containers: | ||
| - name: elasticsearch | ||
| volumeMounts: | ||
| - name: transport-certs | ||
| mountPath: /usr/share/elasticsearch/config/cert-manager-certs | ||
| volumes: | ||
| - name: transport-certs | ||
| csi: | ||
| driver: csi.cert-manager.io | ||
| readOnly: true | ||
| volumeAttributes: | ||
| csi.cert-manager.io/issuer-name: ca-cluster-issuer | ||
| csi.cert-manager.io/issuer-kind: ClusterIssuer | ||
| csi.cert-manager.io/dns-names: "${POD_NAME}.${POD_NAMESPACE}.svc.cluster.local,quickstart-es-remote-cluster.${POD_NAMESPACE}.svc,${POD_NAME}.quickstart-es-default.${POD_NAMESPACE}.svc" <2> | ||
| ``` | ||
| 1. The remote cluster server endpoint uses the same certificate as the transport endpoint. | ||
| 2. The DNS names include the Pod FQDNs and the remote cluster service FQDN. | ||
| :::: | ||
|
|
||
| The following manifest is only provided to illustrate how these certificates can be configured in principle, using the trust-manager Bundle resource and cert-manager provisioned certificates: | ||
|
|
||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.