0.0.4 • Published 6 years ago

@cumulus-ce/deployment v0.0.4

Weekly downloads
1
License
Apache-2.0
Repository
github
Last release
6 years ago

@cumulus-ce/deployment

CircleCI

@cumulus-ce/deployment includes cloudformation templates needed for a successful deployment of a Cumulus Instance. The templates can be used with kes, a node CLI helper for AWS CloudFormation.

What is Cumulus?

Cumulus is a cloud-based data ingest, archive, distribution and management prototype for NASA's future Earth science data streams.

Cumulus Documentation

Usage

  1. Copy app.example to a new deployment project.
  2. Edit app.example/config.yml and your deployment information

  3. Rename app.example to app.

  4. Execute kes command:

    $ ./node_modules/.bin/kes cf deploy --kes-folder app --deployment \<my-deployment> --template node_modules/@cumulus-ce/deployment/app

All additions to app/api.yml should contain sources with a path to the corresponding npm installed packages, not a path to the folder in the local cumulus repository.

For example:

$ source: 'node_modules/@cumulus-ce/api/dist/'

config.yml Explained

fielddefaultdescription
stackName(required)the name used as a prefix in all aws resources
stackNameNoDash(required)stackName with no dash
urs_urluat.ursurs url used for OAuth
api_backend_urlapigateway backend urlthe API backend url
api_distribution_urlapigateway dist urlthe API url used for file distribution
shared_data_bucketcumulus-data-sharedthe bucket has the shared data artifacts
buckets.internal(required)the bucket used for storing deployment artifacts
buckets.private(required)the bucket used for storing private ingest data
buckets.protected(required)the bucket used for storing protected ingest data
buckets.public(required)the bucket used for storing public ingest data
cmr.usernamedevseedthe username used for posting metadata to CMR
cmr.providerCUMULUSthe provider used for posting metadata to CMR
cmr.clientIdCUMULUSthe clientId used to authenticate with the CMR
cmr.password(required)the password used to authenticate with the CMR
ems.providerCUMULUSthe provider used for sending reports to EMS
vpc.vpcId(required if ecs is used)the vpcId used with the deployment
vpc.subnets(required)the subnets used
defaults_userscumulus corelist of default users included in all deployments
ecs.amiidami-9eb4b1e5amiid of an optimized ecs instance (differnet for each region)
ecs.instanceType(required)the instance type of the ec2 machine used for running ecs tasks
ecs.volumeSize50the storage on ec2 instance running the ecs tasks
ecs.availabilityZoneus-east-1athe availibity zone used for launching ec2 machines
ecs.maxInstances1max number of ec2 instances to launch in an autoscaling group
ecs.desiredInstances0desired number of ec2 instances needed in an autoscaling group
es.namees5name of the elasticsearch cluster
es.elasticSearchMapping4version number of the elasticsearch mapping used
es.version5.3elasticsearch software version
es.instanceCount1number of elasticsearch nodes
es.instanceTypet2.small.elasticsearchsize of the ec2 instance used for the elasticsearch
es.volumeSize35the storage used in each elasticsearch node
sns.\<name>N/Aname of the sns topic
sns.\<name>.subscriptions.lambda.endpointsns2elasticsearchlambda function triggered for each message in the topic
apis.\<name>N/Aname of the apigateway application
apiStagedevstage name used for each api gateway deployment stage
dynamos.\<name>N/Aname of the dynamoDB table
dynamos.\<name>.read5number of reads per second
dynamos.\<name>.write1number of writes per second
dynamos.\<name>.attributesN/Alist of attributes
sqs.\<name>N/Aname of the queue
sqs.\<name>.visibilityTimeout20# of seconds the message returns to the queue after it is read by a consumer
sqs.\<name>.retry30number of time the message is returned to the queue before being discarded
sqs.\<name>.consumerN/Alist of lambda function queue consumers
rules.\<name>N/Alist of cloudwathch rules
rules.\<name>.scheduleN/Arule's schedule
rules.\<name>.stateENABLEDstate of the rule
rules.\<name>.targetsN/Alist of lambda functions to be invoked
stepFunctionsN/Alist of step functions
lambdasN/Alist of lambda functions

Contributing

See Cumulus README