-
Notifications
You must be signed in to change notification settings - Fork 94
Google Compute Deployment
Google Compute Engine Tools, you can download and install it from the following link:
Google Compute Engine Template files that are located in this git repository under ECS-CommunityEdition/ecs-single-node/gce/
The following are the base requirements for running ECS 2.x software for a single node install, this will be created as part of the gcloud commands below:
- Operative system: CentOS 7.1
- CPU/Cores: 4 Cores
- Memory: Minimum of 50 GB RAM (64 GB recommended)
- Disks: An un-partitioned/Raw disk with at least 100 GB of Storage per disk per host. Multiple disks can be attached on each ECS Node to increase capacity and performance. Each disk need to be un-partitioned before running the installation scripts.
The following instructions will allow you to install ECS 2.x software using a GCE Deployment Manager with a single command.
Using GCE Deployment Manager to deploy a single node ECS. Please make sure to reference the right template from ECS-CommunityEdition/ecs-single-node/gce/ecs_singlenode.yaml
Deployment Manager is GCE's deployment orchestration tool. It enables developers/ops to describe deployments using templates so it is easier to consume, manage and deploy. The following is a deployment template that basically does the following;
- Open required firewall ports for ECS
- Create a new data disk of 256 GB size.
- Create a new VM Instance of type n1-highmem-8 (8core 50GB)
- Attach Disk
- Assign Network
- Run a startup script for installing and provisioning ECS.
Note I am using here a preemtible GCE node type, this means it lasts only 24 hours. If you are looking to run this for sometime remove this option from the template.
gcloud deployment-manager deployments create ecs-deployment --config ./ecs_singlenode.yaml
After the installation has completed the script will attempt to login using curl, this may take from 10 - 15 minutes.
The following instructions will allow you to install ECS 2.x software using a GCE Deployment Manager, using a simple template file.
Using GCE Deployment Manager to deploy a multi node ECS. Please make sure to reference the right template from ECS-CommunityEdition/ecs-multi-node/gce/ecs_multinode.yaml
Deployment Manager is GCE's deployment orchestration tool. It enables developers/ops to describe deployments using templates so it is easier to consume, manage and deploy. The following is a deployment template that basically does the following;
- Create required firewall rules for ECS
- Create a set of 4 data disk of 256 GB size each.
- Create a set of 4 VM Instance of type n1-highmem-2 (2core 13GB)
- Attach Disk for each node
- Assign Network
- Run a startup script for installing and provisioning ECS.
Note I am using here a preemtible GCE node type, this means it lasts only 24 hours. If you are looking to run this for sometime remove this option from the template.
gcloud deployment-manager deployments create ecs-deployment --config ./ecs-multi-node/gce/ecs_multinode.yaml
After the installation has completed wait 10 - 15 minutes, and then attempt to login into the ECS portal for any of the nodes.
The automated provisioning may get stuck, login into the portal and start the manual provisioning.
- Upload License
- Create Storage Pool
- Create Virtual Data Center
- Create Replication Group
- Create Namespace
- Create User and retrieve S3 Secret Key
- Create Bucket
For details follow these steps in the ECS Portal.
In order to monitor the installation process, you need to get a serial port dump from GCE, this can be done using the following command:
gcloud compute instances get-serial-port-output --zone us-central1-f ecs1
The ECS Administrative portal can be accessed from any one of the ECS data nodes via HTTPS on port 443. For example: https://ecs-node-ip-address. Once you see the screen below:
Now once you are done, you can cleaup instance, disk and networks created (note the disk will be automatically deleted once the instance is deleted)
gcloud deployment-manager deployments delete ecs-deployment