Skip to content

Commit

Permalink
Merge pull request #265 from EMCECS/develop
Browse files Browse the repository at this point in the history
release 2.1.0
  • Loading branch information
padthaitofuhot committed Jun 8, 2017
2 parents c4a187f + 8d42fd4 commit 9943c69
Show file tree
Hide file tree
Showing 32 changed files with 771 additions and 211 deletions.
16 changes: 8 additions & 8 deletions README.md
Expand Up @@ -61,7 +61,7 @@ Hardware or virtual machine with:
## Deployment Scenarios
### Deploy into Internet-Connected Environments

#### [ECS Single-Node All-in-One Deployment (recommended, smallest footprint)](docs/source/installation/ECS-Installation.md)
#### [ECS Single-Node All-in-One Deployment (recommended, fastest, smallest footprint)](docs/source/installation/ECS-Installation.md)
Deploy a stand-alone instance of ECS to a single hardware or virtual machine.

#### [ECS Multi-Node All-in-One Deployment with Install Node (EC replication with > 3 nodes)](docs/source/installation/ECS-Installation.md)
Expand All @@ -73,8 +73,8 @@ Please be aware that Install Node bootstrapping requires Internet access to the

If you prefer to download a prefab Install Node as an OVF/OVA, follow one of the links below. Please note that OVAs are produced upon each release and do not necessarily have the most current software.

* [dellemc-ecsce-2.0.2-beta.ova](http://130852476153187606.public.ecstestdrive.com/public/dellemc-ecsce-2.0.2-beta.ova)
* [dellemc-ecsce-2.0.2-beta.ova.xz](http://130852476153187606.public.ecstestdrive.com/public/dellemc-ecsce-2.0.2-beta.ova.xz)
* [dellemc-ecsce-2.1.0-vm0.ova](http://130852476153187606.public.ecstestdrive.com/public/dellemc-ecsce-2.1.0-vm0.ova)
* [dellemc-ecsce-2.1.0-vm0.ova.xz](http://130852476153187606.public.ecstestdrive.com/public/dellemc-ecsce-2.1.0-vm0.ova.xz)

#### [ECS Single-Node Deployment with Install Node (recommended)](docs/source/installation/ECS-Installation.md)
Using an Install Node for isolated environments, deploy a stand-alone instance of ECS to a single hardware or virtual machine.
Expand All @@ -91,11 +91,11 @@ Using an Install Node for isolated environments, deploy a multi-node ECS instanc
| [examples](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/examples) | Deployment and configuration examples for common scenarios
| [contrib](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/contrib) | Unsupported community-contributed scripts content related to ECS CE
| [patches](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/patches) | Patches to the ECS Community Edition Docker image
| [bootstrap.sh](https://github.com/EMCECS/ECS-CommunityEdition/blob/develop/bootstrap.sh) | Installer 2.0 bootstrap script
| [release.conf](https://github.com/EMCECS/ECS-CommunityEdition/blob/develop/release.conf) | Installer 2.0 release information file
| [ui](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/ui) | Installer 2.0 (`ecsdeploy`, `ecsconfig`, related utilities, and support files)
| [bootstrap_plugins](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/bootstrap_plugins) | Installer 2.0 (`bootstrap.sh` support files)
| [legacy](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/legacy) | Legacy deployment scripts
| [bootstrap.sh](https://github.com/EMCECS/ECS-CommunityEdition/blob/develop/bootstrap.sh) | Install Node bootstrap script
| [release.conf](https://github.com/EMCECS/ECS-CommunityEdition/blob/develop/release.conf) | Installer release information file
| [ui](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/ui) | Install Node utilities and support files
| [bootstrap_plugins](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/bootstrap_plugins) | Install Node bootstrap script support files
| [legacy](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/legacy) | (Legacy) Deployment scripts
| [legacy/ecs-single-node](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/legacy/ecs-single-node) | (Legacy) Contains the scripts to run a Elastic Cloud Storage single Node Docker and Vagrant deployments|
| [legacy/ecs-multi-node](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/legacy/ecs-multi-node) | (Legacy) Contains the scripts to run a Elastic Cloud Storage Multiple Node Docker deployment|
| [legacy/Documentation](https://github.com/EMCECS/ECS-CommunityEdition/tree/develop/legacy/Documentation) | (Legacy) Contains documentation files and media|
Expand Down
16 changes: 8 additions & 8 deletions bootstrap.sh
Expand Up @@ -47,9 +47,9 @@ cat <<EOH
option it's possible for bootstrapping to hang indefinitely if the
mirror cannot be contacted.
-b <mirror> Build the installer image (ecs-install) locally instead of fetching
the current release build from DockerHub (not recommended). Use the
Alpine Linux mirror <mirror> when building the image.
-b <mirror> Build the installer image (ecs-install) locally using the Alpine Linux
<mirror> URL instead of pulling the current release build from DockerHub.
WARNING: This is not recommended.
[Docker Options]
-r <registry> Use the Docker registry at <registry> instead of DockerHub.
Expand Down Expand Up @@ -217,12 +217,13 @@ done
##############################################################################
### Main
o ""
o " ${release_name} ${release_version} Install Node Bootstrap"
o " ${release_name} Install Node Bootstrap ${ver_maj}.${ver_min}.${ver_rev}${ver_tag}"
o " ${release_product} Image ${release_artifact}:${release_tag}"
o "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"


### No arguments given.. are you sure?
if [ -z "$1" ]; then
o ""
o "No options were given, but it's possible your environment may"
o "depend on one or more options to bootstrap properly."
o ""
Expand Down Expand Up @@ -563,7 +564,7 @@ else
v "Tagging ${release_artifact}:${release_tag} -> ${release_common_name}"
sudo docker tag "${release_artifact}:${release_tag}" "${release_common_name}" 2>&1 | log
fi

ping_sudo

### Next steps
p ''
Expand Down Expand Up @@ -592,17 +593,16 @@ o ''

### Needs rebooting?
if get_os_needs_restarting; then

ping_sudo
q "The system has indicated it wants to reboot."
o "Please reboot BEFORE continuing to ensure this node is"
o "operating with the latest kernel and system libraries."
o ''

if $override_flag; then
if $override_val; then
q "Automatically rebooting by user request (-y argument)"
log "REBOOT-REBOOTING-ARGUMENT"
wait_bar 15 "Press CTRL-C to abort"
do_reboot
else
q "Skipping reboot by user request (-n argument)"
Expand Down
13 changes: 8 additions & 5 deletions bootstrap_plugins/centos73.plugin.sh
Expand Up @@ -25,7 +25,8 @@ do_preflight() {
}

# packages to install before others
list_prefix_packages='epel-release python-devel wget curl ntp'
#list_prefix_packages='epel-release python-devel wget curl ntp'
list_prefix_packages='wget curl ntp epel-release yum-utils'

# script to run for installing prefix_packages
in_prefix_packages() {
Expand All @@ -39,17 +40,19 @@ in_prefix_packages() {
}

# packages to install
list_general_packages='yum-utils git python-pip python-docker-py'
# list_general_packages='yum-utils git python-pip python-docker-py'
list_general_packages='git python-docker-py'

# script to run for installing general_packages
in_general_packages() {
in_repo_pkg "$list_general_packages"
sudo pip install --upgrade pip
sudo pip install --upgrade virtualenv
# sudo pip install --upgrade pip
# sudo pip install --upgrade virtualenv
}

# packages to install after others
list_suffix_packages='vim htop iotop iftop jq rsync pigz gdisk aria2'
# list_suffix_packages='vim htop iotop iftop jq rsync pigz gdisk aria2'
list_suffix_packages='htop jq pigz gdisk aria2'

# script to run for installing suffix_packages
in_suffix_packages() {
Expand Down
2 changes: 2 additions & 0 deletions docs/design/bootstrapper.mmd
Expand Up @@ -38,6 +38,8 @@ Mind Map generated by NB MindMap plugin

### Alpine mirror

### Base OS Mirror

## PackageConfigurator

### per\-OS package requirements list
Expand Down
74 changes: 56 additions & 18 deletions docs/design/deploy.yml.mmd
Expand Up @@ -14,15 +14,15 @@ Mind Map generated by NB MindMap plugin
> mmd.emoticon=`anchor`


### install\_node: \<host\>
### install\_node: \<str | hostspec\>
> mmd.emoticon=`anchor`


### management\_clients: \<list\>
> mmd.emoticon=`anchor`


#### \<host\> | \<cidr\>
#### \<str | hostspec\> | \<str | CIDRMask\>
> mmd.emoticon=`anchor`


Expand All @@ -32,15 +32,15 @@ Mind Map generated by NB MindMap plugin

#### ssh\_port: \<int\>

#### ssh\_username: \<str\>
#### ssh\_username: \<str | alphanumeric\>
> mmd.emoticon=`anchor`


#### ssh\_password: \<str\>
> mmd.emoticon=`anchor`


#### ansible\_user: \<str\>
#### ansible\_user: \<str | alphanumeric\>

#### ansible\_ssh\_pass: \<str\>

Expand All @@ -50,33 +50,33 @@ Mind Map generated by NB MindMap plugin
> mmd.emoticon=`anchor`


#### dns\_domain: \<str\>
#### dns\_domain: \<str | DNSDomain\>
> mmd.emoticon=`anchor`


#### dns\_servers: \<list\>
> mmd.emoticon=`anchor`


##### \<ip\>
##### \<ip | IPAddress\>
> mmd.emoticon=`anchor`


#### ntp\_servers: \<list\>
> mmd.emoticon=`anchor`


##### \<ip\>
##### \<ip | IPAddress\>
> mmd.emoticon=`anchor`


#### ecs\_root\_user: \<str\>
#### ecs\_root\_user: \<str | alphanumeric\>

#### ecs\_root\_pass: \<str\>

#### entropy\_source: \<unixpath\>

#### autonaming: \<str\>
#### autonaming: \<str | alphanumeric\>

### storage\_pool\_defaults: \<dict\>

Expand Down Expand Up @@ -108,7 +108,7 @@ Mind Map generated by NB MindMap plugin
> mmd.emoticon=`anchor`


###### \<str: node hostname or ip\>
###### \<str | IPAddress\> or \<str | FQDN\>
> mmd.emoticon=`anchor`


Expand All @@ -130,15 +130,15 @@ Mind Map generated by NB MindMap plugin
> mmd.emoticon=`anchor`


##### name: \<str\>
##### name: \<str | alphanumeric\>
> mmd.emoticon=`anchor`


##### members: \<list\>
> mmd.emoticon=`anchor`


###### \<str: storage pool name\>
###### \<str | alphanumeric \(valid storage pool name\)\>
> mmd.emoticon=`anchor`


Expand All @@ -156,21 +156,21 @@ Mind Map generated by NB MindMap plugin

#### full\_replication: \<bool\>

#### description: \<str\>
#### description: \<str | alphanumeric\>

### replication\_groups: \<list\>

#### \<dict\>:

##### name: \<str\>
##### name: \<str | alphanumeric\>
> mmd.emoticon=`anchor`


##### members: \<list\>
> mmd.emoticon=`anchor`


###### \<str: virtual data center name\>
###### \<str | alphanumeric \(virtual data center name\)\>
> mmd.emoticon=`anchor`


Expand All @@ -180,6 +180,22 @@ Mind Map generated by NB MindMap plugin
> mmd.emoticon=`anchor`


### management\_user\_defaults: \<dict\>

#### is\_system\_admin: \<bool\>

#### is\_system\_monitor: \<bool\>

### management\_users: \<list\>

#### username: \<str | alphanumeric\>

#### password: \<str\> | alphanumeric

#### options: \<dict\>

##### \{k:v any management user option\}

### namespace\_defaults: \<dict\>

#### is\_stale\_allowed: \<bool\>
Expand All @@ -190,19 +206,19 @@ Mind Map generated by NB MindMap plugin

#### \<dict\>

##### name: \<str\>
##### name: \<str | alphanumeric\>
> mmd.emoticon=`anchor`


##### replication\_group: \<str\>
##### replication\_group: \<str | alphanumeric \(valid replication group name\)\>
> mmd.emoticon=`anchor`


##### administrators: \<list\>
> mmd.emoticon=`anchor`


###### \<str: valid management user\>
###### \<str | alphanumeric \(valid management user\)\>
> mmd.emoticon=`anchor`


Expand All @@ -211,3 +227,25 @@ Mind Map generated by NB MindMap plugin
###### \{k:v any namespace option\}
> mmd.emoticon=`anchor`


### object\_user\_defaults: \<dict\>

#### s3\_expiry\_time: \<int\>

#### s3\_secret\_key: \<str | S3SecretKey\>

#### swift\_password: \<str\>

#### swift\_groups\_list: \<list\>

##### \<str | alphanumeric \(valid Swift group\)\>

### object\_users: \<list\>

#### username: \<str | alphanumeric\>

#### namespace: \<str | alphanumeric \(valid namespace\)\>

#### options: \<dict\>

##### \{k:v any object\_user option\}
Binary file modified docs/design/deploy.yml.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
49 changes: 47 additions & 2 deletions docs/design/reference.deploy.yml
@@ -1,4 +1,4 @@
# deploy.yml reference implementation
# deploy.yml reference implementation v2.1.0

# [Optional]
# By changing the license_accepted boolean value to "true" you are
Expand Down Expand Up @@ -130,7 +130,25 @@ facts:
is_full_rep: false

# [Optional]
# Namespace defaults.
# Management User defaults
management_user_defaults:
is_system_admin: false
is_system_monitor: false

# [Optional]
# Management Users
management_users:
- username: admin1
password: ChangeMe
options:
is_system_admin: true
- username: monitor1
password: ChangeMe
options:
is_system_monitor: true

# [Optional]
# Namespace defaults
namespace_defaults:
is_stale_allowed: false
is_compliance_enabled: false
Expand All @@ -145,3 +163,30 @@ facts:
options:
is_stale_allowed: false
is_compliance_enabled: false

# [Optional]
# Object User defaults
object_user_defaults:
# Comma-separated list of Swift authorization groups
swift_groups_list:
- users
# Lifetime of S3 secret key in minutes
s3_expiry_time: 2592000

# [Optional]
# Object Users
object_users:
- username: object_admin1
namespace: ns1
options:
swift_password: ChangeMe
swift_groups_list:
- admin
- users
s3_secret_key: ChangeMeChangeMeChangeMeChangeMeChangeMe
s3_expiry_time: 2592000
- username: object_user1
namespace: ns1
options:
swift_password: ChangeMe
s3_secret_key: ChangeMeChangeMeChangeMeChangeMeChangeMe

0 comments on commit 9943c69

Please sign in to comment.