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

Cloud Saas example deployment wrong #221

Closed
111andre111 opened this issue Mar 18, 2020 · 2 comments · Fixed by #224
Closed

Cloud Saas example deployment wrong #221

111andre111 opened this issue Mar 18, 2020 · 2 comments · Fixed by #224
Labels
ESS Elasticsearch Service related issue

Comments

@111andre111
Copy link

Overview

Expected Behavior

Deployment should be created without error.

Current Behavior

The documented way of creating a new deployment may work for ECE, but it doesn't work with Cloud SaaS.
I found at least 2 references, maybe there exist more in the documentation:
https://www.elastic.co/guide/en/ecctl/current/ecctl_deployment_create.html
https://github.com/elastic/ecctl/blob/master/docs/ecctl_deployment_create.md#examples

ecctl deployment create --file ./deployment_example.json --name=my-new-deployment --version=7.4.1
It results in error message:
Instance configuration [data.default] does not exist or is not available to you. The instance configuration must be one of the available configurations. Use the Instance Configuration API to get a list of available configurations.

Possible Solution

I did lots of investigation and came up with this solution creating a deployment with elasticsearch, kibana and apm:

cat deployment_example_gcp.json

{
  "cluster_name": "",
  "plan": {
    "cluster_topology": [
      {
        "node_type": {
          "data": true,
          "master": true,
          "ingest": true
        },
        "instance_configuration_id": "gcp.data.highio.1",
        "zone_count": 3,
        "size": {
          "resource": "memory",
          "value": 65536
        },
        "elasticsearch": {
          "enabled_built_in_plugins": []
        }
      },
      {
        "node_type": {
          "data": false,
          "master": false,
          "ingest": false,
          "ml": true
        },
        "instance_configuration_id": "gcp.ml.1",
        "zone_count": 1,
        "size": {
          "resource": "memory",
          "value": 16384
        },
        "elasticsearch": {
          "enabled_built_in_plugins": []
        }
      }
    ],
    "elasticsearch": {
      "version": "7.4.0"
    },
    "transient": {},
    "deployment_template": {
      "id": "gcp-io-optimized"
    }
  },
  "settings": {
    "dedicated_masters_threshold": 6
  },
  "kibana": {
    "plan": {
      "cluster_topology": [
        {
          "instance_configuration_id": "gcp.kibana.1",
          "zone_count": 1,
          "size": {
            "resource": "memory",
            "value": 1024
          }
        }
      ],
      "kibana": {
        "version": "7.4.0"
      }
    }
  }
}


ecctl deployment create --file ./deployment_example_gcp.json --name=my-new-deployment --version=7.4.1

Context

I found at least another issue:

At the moment the plan path plan.cluster_topology.instance_configuration_id is not well documented for Cloud SaaS implementation.

I did not find a command which can list all available possibilities.

I found at least these ones:

    aws-appsearch-dedicated
    aws-compute-optimized
    aws-cross-cluster-search
    aws-hot-warm
    aws-io-optimized
    aws-memory-optimized
    default
    gcp-appsearch-dedicated
    gcp-compute-optimized
    gcp-cross-cluster-search
    gcp-hot-warm
    gcp-io-optimized
    gcp-memory-optimized
    azure-appsearch-dedicated
    azure-compute-optimized
    azure-cross-cluster-search
    azure-hot-warm
    azure-io-optimized
    azure-memory-optimized

Additionally I tried to monitor this deployment plan, but it didn't seem to work as well:
ecctl deployment elasticsearch plan monitor <cloudID>

Reference:
#129

@karencfv
Copy link
Contributor

karencfv commented Mar 19, 2020

Hi @111andre111! First of all thank you so much for taking the time to try out ecctl and give us feedback 🙇‍♀

About the ecctl deployment create command, I'm currently working on a related issue -> #116 and will take the feedback here into account and implement it in that PR since I'll be changing the help text anyway.

I think the command you're looking for regarding the deployment templates is ecctl platform deployment-template list . Maybe it'd be a good idea to reference that command within the ecctl deployment create help text 🤔

With the ecctl deployment elasticsearch plan monitor <cloudID> command, what were the issues you ran into?

@karencfv karencfv added the ESS Elasticsearch Service related issue label Mar 19, 2020
@marclop
Copy link
Collaborator

marclop commented Mar 19, 2020

I think we should add a reference on how to find the instance configuration IDs and deployment templates, it can get confusing otherwise.

Also, by specifying the --track flag on ecctl deployment create will automatically track / monitor the creation of the deployment and all of its downstream resources.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ESS Elasticsearch Service related issue
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants