Introduction
Cloud is a set of modules to realize Cloud management: Drupal-based Cloud dashboard such as Amazon Management Console, RightScale, ElasticFox, and etc. The module aims to support not only public Cloud like AWS EC2 but also private Cloud like OpenStack since the system is highly modularized by Drupal architecture.
Requirements
-
PHP 7.0
or Higher (128 MB
Memory or higher) -
MySQL 5.5
or higher OR -
MariaDB 5.5
or higher -
Drupal 8.6.3
or higher -
Cloud 8.x-1.x
- This branch is still under development. Any volunteer effort is greatly appreciated.
- Currently,
aws_cloud
is the onlyCloud
implementation that is working. - Future support includes
GCP
,Azure
,OpenStack
andKubernetes
.
Limitations
-
The aws_cloud module does not support Classic Ec2 instances (
Non-VPC
).Note: Classic instances (
Non-VPC
) are available for AWS accounts created before 2013-12-03.aws_cloud
module is only tested forEC2-VPC
instances.See also:
Installation (For usage with Amazon EC2)
- Download
aws-sdk
from: https://docs.aws.amazon.com/aws-sdk-php/v3/download/aws.zip and unzip it into thevendor
directory. - Download
cloud
module. - Enable the
aws_cloud module
. This will also enable the required modules.
OR (using composer
)
composer require drupal/cloud
Configuration
Basic Setup
- Create a new
Cloud Config
based on your needs. Go toStructure
>Cloud config list
and+ Add Cloud config
- Enter all required configuration parameters.
You must add each AWS region (e.g.
us-east-1
,us-west-2
, and etc.) as a separateCloud Config entity
- Run cron to update your specific Cloud region.
- Use the links under
Cloud Service Providers
>[CLOUD CONFIG]
to manage your AWS EC2 entities. - Import Images using the tab:
Cloud Service Providers
>[CLOUD CONFIG]
|Images
- Click on
+ Import AWS Cloud Image
- Search for images by AMI name. For example, to import
Anaconda
images based on Ubuntu, type inanaconda*ubuntu*
. Use the AWS Console onaws.amazon.com
to search for images to import
- Click on
-
Import
orAdd a Keypair
. The keypair is used to log into any system you launch. Use the links under the tab:Cloud Service Providers
>[CLOUD CONFIG]
|Key Pair
- Use the
+ Import AWS Cloud Key Pair
button to import an existing key pair. You will be uploading your public key. - Use
+ Add AWS Cloud Key Pair
to have AWS generate a new private key. You will be prompted to download the key after it is created.
- Use the
- Setup
Security groups
,Network Interfaces
as needed from AWS Management Console.
Launching Instance
- Create a server template under
Design
>Cloud Server Template
>[CLOUD CONFIG]
- Once template is created, click the
Launch
tab to launch it.
Permissions
Configure permissions per your requirements
Directory Structure
cloud (Cloud is a core module for Cloud package)
+-modules (depends on Cloud module)
+-cloud_server_templates
+-modules
- cloud_service_providers
- aws_cloud
Maintainers
-
yas
(https://drupal.org/u/yas) -
baldwinlouie
(https://www.drupal.org/u/baldwinlouie) -
xiaohua-guan
(https://www.drupal.org/u/xiaohua-guan) -
shidat
(https://www.drupal.org/u/shidat) -
Masami
(https://www.drupal.org/u/Masami)