Skip to content

Commit

Permalink
Merge branch 'master' into develop (fixed single conflicting newline)
Browse files Browse the repository at this point in the history
  • Loading branch information
APeter0807 committed Jul 25, 2016
2 parents 5c14872 + 5b96a97 commit 29bb4b2
Show file tree
Hide file tree
Showing 3 changed files with 50 additions and 14 deletions.
5 changes: 3 additions & 2 deletions Documentation/ECS-MultiNode-Instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,7 +88,8 @@ Now we attach a new disk to the host VM. The new disk **/dev/sdc** looks like th
2. **Open Ports:** ECS requires the following ports to be open:

In addition, please refer to the [ECS Security Configuration Guide](https://community.emc.com/docs/DOC-45012 "ECS Security Configuration Guide") and our the [troubleshooting page](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting.md "troubleshooting page") if you find any issues.
rt Number|Port Description|

|Port Number|Port Description|
|-----------|----------------|
|22| SSH, needed if using remote access |
|443 | Port used for accessing the ECS management website|
Expand All @@ -98,7 +99,7 @@ rt Number|Port Description|
|9021| Port used for the S3 API on HTTPS|
|9022| Port used for Atmos API|
|9023| Port used for Atmos API on HTTPS|
|9024| Port used for SWIFT API |
|9024| Port used for SWIFT API|
|9025| Port used for SWIFT API on HTTPS|
|9100| Port used for DT Query service|
|9101| ECS Diagnostic Service Index |
Expand Down
31 changes: 25 additions & 6 deletions ecs-multi-node/step1_ecs_multinode_install.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/usr/bin/env python
# An installation program for ECS SW 2.1 Multiple Data nodes
# An installation program for ECS SW 2.2.1 Multiple Data nodes
import argparse
import getopt
import subprocess
Expand Down Expand Up @@ -131,12 +131,18 @@ def docker_cleanup_old_images():
sys.exit()


def docker_pull_func(docker_image_name):
def docker_pull_func(docker_image_name,proxy=None):
"""
Getting the ECS Docker image from DockerHub. Using Docker Pull
"""
try:

if proxy!=None:
os.system("echo http_proxy=" + proxy +" >>/etc/sysconfig/docker")
os.system("echo https_proxy=" + proxy +" >>/etc/sysconfig/docker")
os.system("echo HTTP_PROXY=" + proxy +" >>/etc/sysconfig/docker")
os.system("echo HTTPS_PROXY=" + proxy +" >>/etc/sysconfig/docker")


#Start docker service
subprocess.call(["service","docker","start"])

Expand Down Expand Up @@ -483,14 +489,17 @@ def set_docker_configuration_func():
logger.fatal("Aborting program! Please review log")


def execute_docker_func(docker_image_name, use_urandom=False):
def execute_docker_func(docker_image_name, use_urandom=False,proxy=None):
"""
Execute Docker Container
"""
try:

# docker run -d -e SS_GENCONFIG=1 -v /ecs:/dae -v /host:/host -v /var/log/vipr/emcvipr-object:/var/log -v /data:/data:rw --net=host emccorp/ecs-software --name=ecsmultinode
docker_command = ["docker", "run", "-d", "-e", "SS_GENCONFIG=1"]
if proxy!=None:
docker_command.extend(["-e", "HTTP_PROXY="+proxy, "-e", "HTTPS_PROXY="+proxy])

if use_urandom:
docker_command.extend(["-v", "/dev/urandom:/dev/random"])
docker_command.extend(["-v", "/ecs:/dae", "-v", "/host:/host", "-v", "/var/log/vipr/emcvipr-object:/var/log", "-v", "/data:/data:rw", "--net=host",
Expand Down Expand Up @@ -668,9 +677,13 @@ def main():
parser.add_argument('--load-image', dest='image_file', nargs='?',
help='If present, gives the name of a docker image file to load.',
required=False)
parser.add_argument('--proxy', dest='proxy',nargs='?',
help='If present, use defined proxy to pull docker images and run docker',
required=False)
parser.set_defaults(cleanup=False)
parser.set_defaults(imagename="emccorp/ecs-software-2.2.1")
parser.set_defaults(imagetag="latest")
parser.set_defaults(proxy=False)
parser.set_defaults(image_file=False)
args = parser.parse_args()

Expand Down Expand Up @@ -734,15 +747,21 @@ def main():
if args.image_file:
docker_load_image(args.image_file)
elif not args.no_internet:
docker_pull_func(docker_image_name)
if args.proxy:
docker_pull_func(docker_image_name,args.proxy)
else:
docker_pull_func(docker_image_name)
network_file_func(ethernet_adapter_name)
seeds_file_func(args.ips)
hosts_file_func(args.ips, args.hostnames)
prepare_data_disk_func(args.disks)
run_additional_prep_file_func(args.disks)
directory_files_conf_func()
set_docker_configuration_func()
execute_docker_func(docker_image_name, args.use_urandom)
if args.proxy:
execute_docker_func(docker_image_name, args.use_urandom,args.proxy)
else:
execute_docker_func(docker_image_name, args.use_urandom)
modify_container_conf_func(args.no_internet)
getAuthToken(ip_address,"root","ChangeMe")
logger.info(
Expand Down
28 changes: 22 additions & 6 deletions ecs-single-node/step1_ecs_singlenode_install.py
Original file line number Diff line number Diff line change
Expand Up @@ -116,12 +116,17 @@ def docker_cleanup_old_images():
sys.exit()


def docker_pull_func(docker_image_name):
def docker_pull_func(docker_image_name,proxy=None):
"""
Getting the ECS Docker image from DockerHub. Using Docker Pull
"""
try:

if proxy!=None:
os.system("echo http_proxy=" + proxy +" >>/etc/sysconfig/docker")
os.system("echo https_proxy=" + proxy +" >>/etc/sysconfig/docker")
os.system("echo HTTP_PROXY=" + proxy +" >>/etc/sysconfig/docker")
os.system("echo HTTPS_PROXY=" + proxy +" >>/etc/sysconfig/docker")

#Start docker service
subprocess.call(["service","docker","start"])

Expand Down Expand Up @@ -409,14 +414,16 @@ def set_docker_configuration_func():
logger.fatal("Aborting program! Please review log")


def execute_docker_func(docker_image_name, use_urandom=False):
def execute_docker_func(docker_image_name, use_urandom=False,proxy=None):
'''
Execute Docker Container
'''
try:

# docker run -d -e SS_GENCONFIG=1 -v /ecs:/disks -v /host:/host -v /var/log/vipr/emcvipr-object:/opt/storageos/logs -v /data:/data:rw --net=host emccode/ecsstandalone:v2.0 --name=ecsstandalone
docker_command = ["docker", "run", "-d", "-e", "SS_GENCONFIG=1"]
if proxy!=None:
docker_command.extend(["-e", "HTTP_PROXY="+proxy, "-e", "HTTPS_PROXY="+proxy])
if use_urandom:
docker_command.extend(["-v", "/dev/urandom:/dev/random"])
docker_command.extend(["-v", "/ecs:/dae", "-v", "/host:/host", "-v", "/var/log/vipr/emcvipr-object:/var/log", "-v", "/data:/data:rw", "--net=host",
Expand Down Expand Up @@ -696,11 +703,14 @@ def main():
parser.add_argument('--load-image', dest='image_file', nargs='?',
help='If present, gives the name of a docker image file to load.',
required=False)

parser.add_argument('--proxy', dest='proxy',nargs='?',
help='If present, use defined proxy to pull docker images and run docker',
required=False)
parser.set_defaults(container_config=False)
parser.set_defaults(cleanup=False)
parser.set_defaults(imagename="emccorp/ecs-software-2.2.1")
parser.set_defaults(imagetag="latest")
parser.set_defaults(proxy=False)
parser.set_defaults(image_file=False)
args = parser.parse_args()

Expand Down Expand Up @@ -779,15 +789,21 @@ def main():
if args.image_file:
docker_load_image(args.image_file)
elif not args.no_internet:
docker_pull_func(docker_image_name)
if args.proxy:
docker_pull_func(docker_image_name,args.proxy)
else:
docker_pull_func(docker_image_name)
hosts_file_func(args.hostname, ethernet_adapter_name)
network_file_func(ethernet_adapter_name)
seeds_file_func(ethernet_adapter_name)
prepare_data_disk_func(args.disks)
run_additional_prep_file_func(args.disks)
directory_files_conf_func()
set_docker_configuration_func()
execute_docker_func(docker_image_name, args.use_urandom)
if args.proxy:
execute_docker_func(docker_image_name, args.use_urandom,args.proxy)
else:
execute_docker_func(docker_image_name, args.use_urandom)
modify_container_conf_func(args.no_internet)
getAuthToken(ip_address,"root","ChangeMe")
logger.info(
Expand Down

0 comments on commit 29bb4b2

Please sign in to comment.