Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

When deploying Aspire in a Kubernetes cluster.

Prerequisites

The current guide assumes that a Elasticsearch/Kibana services have already been deployed, and basic authentication is used.

See ECK quickstart on how to deploy Elasticsearch / Kibana on Kubernetes.

If using HTTPS on elasticsearch, make sure the certificate is signed by a Trusted CA, otherwise you would need to have access to its CA certificate, and import it into a JKS for Aspire to trust. See Enable HTTPS for instructions on how to import a certificate authority.

For AWS Elasticsearch configuration see Elasticsearch NoSQL Provider Properties.


Step-by-step guide

Deploy Elasticsearch and Kibana.

(Skip these steps if you already have an Elasticsearch cluster for Aspire to use). The current guide is based on ECK quickstart

  1. Install custom resource definitions

    Code Block
    languagebash
    themeRDark
    kubectl create -f https://download.elastic.co/downloads/eck/1.7.0/crds.yaml
    kubectl apply -f https://download.elastic.co/downloads/eck/1.7.0/operator.yaml
  2. Deploy Elasticsearch cluster (single node)
    1. Create a file called elasticsearch.yaml

      Code Block
      languageyml
      themeRDark
      linenumberstrue
      collapsetrue
      apiVersion: elasticsearch.k8s.elastic.co/v1
      kind: Elasticsearch
      metadata:
        name: quickstart
      spec:
        version: 7.9.2
        nodeSets:
        - name: default
          count: 1
          config:
            node.store.allow_mmap: false



    2. Deploy the Elasticsearch cluster

      Code Block
      languagebash
      themeRDark
      kubectl apply -f elasticsearch.yaml
  3. Obtain Basic Authentication password
    1. The password will be stored in the environment variable called "PASSWORD"

      Code Block
      languagebash
      themeRDark
      PASSWORD=$(kubectl get secret quickstart-es-elastic-user -o go-template='{{.data.elastic | base64decode}}')
  4. Deploy Kibana cluster
    1. Create a file called kibana.yaml

      Code Block
      languageyml
      themeRDark
      linenumberstrue
      collapsetrue
      apiVersion: kibana.k8s.elastic.co/v1
      kind: Kibana
      metadata:
        name: quickstart
      spec:
        version: 7.9.2
        count: 1
        elasticsearchRef:
          name: quickstart
    2. Deploy Kibana

      Code Block
      languagebash
      themeRDark
      kubectl apply -f kibana.yaml
  5. Expose Kibana's port locally

    Code Block
    languagebash
    themeRDark
    kubectl port-forward service/quickstart-kb-http 5601
  6. Browse to Kibana at https://localhost:5601/ (HTTPS warnings will appear on the browser due to the self-signed certificates elasticsearch and kibana generates)
    1. Log in using username "elastic" and the password obtained at step #3.

Deploy Aspire 5

  1. (Optional) Upload Kibana Dashboards
  2. Create kubernetes secret for connecting to SCA docker registry
  3. Create Aspire ConfigMap
  4. Upload License and Settings to Elasticsearch
  5. Deploy Managers
  6. Deploy Workers
  7. Expose Manager port
  8. Browse to Aspire Admin UI


Info