From 19942acc5408e866014c1bd5051f68d996b87ad3 Mon Sep 17 00:00:00 2001 From: Travis Wichert Date: Fri, 16 Jun 2017 12:48:28 -0400 Subject: [PATCH 1/7] Implements #76 Installer must support installing multiple VDCs (#268) * Implements #76 Installer must support installing multiple VDCs * Implements #76 Installer must support installing multiple VDCs --- ui/ecsconfig.py | 359 +++++++++++++++++++++++++++++++--------------- ui/run.sh | 5 +- ui/tui/ecsconf.py | 23 +++ ui/tui/ecsdiag.py | 3 + ui/tui/tools.py | 13 +- 5 files changed, 282 insertions(+), 121 deletions(-) diff --git a/ui/ecsconfig.py b/ui/ecsconfig.py index 461df348..fe414b4d 100755 --- a/ui/ecsconfig.py +++ b/ui/ecsconfig.py @@ -49,8 +49,6 @@ class Conf(tui.Director): """ Subclass Director for ecs-install cli tools """ - api_root_user = None - api_root_pass = None api_endpoint = None api_token = None api_client = None @@ -62,10 +60,7 @@ def __init__(self): logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) tui.Director.__init__(self) self.ecs = tui.ECSConf(self.deploy) - self.api_root_user = self.ecs.get_root_user() - self.api_root_pass = self.ecs.get_root_pass() - # Default to the first data node listed - self.api_endpoint = self.ecs.list_all_sp_nodes()[0] + self.api_set_endpoint(self.ecs.get_vdc_endpoint(self.ecs.get_vdc_primary())) self.api_client = self._api_get_client() # self.expected_dt_total = self.ecs.get_expected_dts() self.expected_dt_total = 416 @@ -90,24 +85,27 @@ def _api_get_client(self): url = "{0}://{1}:{2}".format(API_PROTOCOL, self.api_endpoint, API_PORT) return Client('3', - username=self.api_root_user, - password=self.api_root_pass, + username=self.ecs.get_root_user(), + password=self.ecs.get_root_pass(), token_endpoint=url + '/login', ecs_endpoint=url, verify_ssl=self.api_verify_ssl, request_timeout=self.api_timeout) - def api_close(self): - """ - Logs out and destroys the API instance - """ - self.api_client.authentication.logout() - del self.api_client - def api_reset(self): """ Resets the APIAdminClient instance """ + try: + self.api_client.authentication.logout() + except Exception: + pass + + try: + del self.api_client + except Exception: + pass + self.api_client = self._api_get_client() def diag_dt_get(self): @@ -132,19 +130,28 @@ def diag_dt_ready(self, footprint='small'): else: return True - def diag_dt_status_text(self): + def diag_dt_status_text(self, dt_data=None): """ Get a status string :return: dt status string """ - try: - dt_data = self.diag_dt_get() - dt_string = "dt_total={} dt_unready={} dt_unknown={}".format( - dt_data['total_dt_num'], - dt_data['unready_dt_num'], - dt_data['unknown_dt_num']) - except KeyError: - dt_string = "dt_query fail" + dt_string = None + + if dt_data is None: + try: + dt_data = self.diag_dt_get() + except Exception as e: + dt_string = "dt_query fail: {}".format(e) + + if dt_string is None: + try: + dt_string = "diag_endpoint={} dt_total={} dt_unready={} dt_unknown={}".format( + dt_data['endpoint'], + dt_data['total_dt_num'], + dt_data['unready_dt_num'], + dt_data['unknown_dt_num']) + except Exception as e: + dt_string = "dt_query fail: {}".format(e) return dt_string @@ -168,9 +175,21 @@ def api_task_get_status(self, task_id): pass def get_vdc_id_by_name(self, vdc_name): + """ + Get the VDC ID of the VDC named vdc_name + :param vdc_name: name of the deploy.yml VDC + :return: VDC ID + """ return self.api_client.vdc.get(name=vdc_name)['id'] - def get_vdc_secret(self, vdc_name): + def get_vdc_secret_by_name(self, vdc_name): + """ + Get the VDC Secret Key of the VDC named vdc_name from the top node in that VDC + :param vdc_name: name of the deploy.yml VDC + :return: VDC Secret Key + """ + self.api_set_endpoint(self.ecs.get_vdc_endpoint(vdc_name)) + self.api_reset() return self.api_client.vdc.get_local_secret_key()['key'] pass_conf = click.make_pass_decorator(Conf, ensure=True) @@ -185,7 +204,7 @@ def get_vdc_secret(self, vdc_name): @pass_conf def ecsconfig(conf, verbose): """ - Command line interface to configure ECS + Command line interface to configure ECS from declarations in deploy.yml """ conf.config.verbosity = verbose @@ -217,12 +236,15 @@ def ecsconfig(conf, verbose): # conf.api_create_rg(rg_name, rg_members) -@ecsconfig.command('ping', short_help='Check ECS Management API Endpoint') +@ecsconfig.command('ping', short_help='Check ECS Management API Endpoint(s)') @click.option('-c', is_flag=True, help='Continuous ping') @click.option('-w', default=10, help='(with -c) Seconds to wait between pings') @click.option('-x', is_flag=True, help='Exit upon successful PONG') @pass_conf def ping(conf, c, w, x): + """ + Check ECS Management API Endpoint(s) + """ """ Ping ECS management API for connectivity :param conf: Click object containing the configuration @@ -232,53 +254,75 @@ def ping(conf, c, w, x): :return: retval """ - if c: - msg = " (CTRL-C to break)" - else: - msg = "" - o("Pinging endpoint {}...{}".format(conf.api_endpoint, msg)) + def do_ping(): + if c: + msg = " (CTRL-C to break)" + else: + msg = "" + o("Pinging endpoint {}...{}".format(conf.api_endpoint, msg)) - pinging = True - while pinging is True: + pinging = True + while pinging is True: - try: - resp_dict = conf.api_client.user_info.whoami() - if resp_dict is not None: - if resp_dict['common_name'] is not None: - o('PONG: username={} {}'.format(resp_dict['common_name'], conf.diag_dt_status_text())) - if x: - sys.exit(0) - else: - raise ECSClientException("Unexpected response from API") - except requests.ConnectionError or httplib.HTTPException: - o("FAIL: API service unavailable {}".format(conf.diag_dt_status_text())) try: - del conf.api_client - if not c: - sys.exit(1) - except AssertionError: - if not c: - sys.exit(1) - except ECSClientException as e: - if 'Connection refused' in e.message: - o('WAIT: API service is not alive. This is likely temporary.') - elif 'connection failed' in e.message: - o('WAIT: API service is alive but ECS is not. This is likely temporary.') - elif 'Invalid username or password' in e.message: - o('WAIT: Invalid username or password. If ECS authsvc is bootstrapping, this is likely temporary.') - elif 'Non-200' in e.message: - o('WAIT: ECS API internal error. If ECS services are still bootstrapping, this is likely temporary.') - elif 'Read timed out' in e.message: - o('WAIT: ECS API timed out. If ECS services are still bootstrapping, this is likely temporary.') - else: - o('FAIL: Unexpected response from API client: {0}'.format(e)) - if not c: - raise - if not c: - pinging = False - if c: - time.sleep(w) + resp_dict = conf.api_client.user_info.whoami() + if resp_dict is not None: + if resp_dict['common_name'] is not None: + o('PONG: api_endpoint={} username={} {}'.format(conf.api_endpoint, + resp_dict['common_name'], + conf.diag_dt_status_text())) + if x: + pinging = False + else: + raise ECSClientException("Unexpected response from API") + except requests.ConnectionError or httplib.HTTPException: + o("FAIL: API service unavailable {}".format(conf.diag_dt_status_text())) + try: + del conf.api_client + if not c: + sys.exit(1) + except AssertionError: + if not c: + sys.exit(1) + except ECSClientException as e: + if 'Connection refused' in e.message: + o('WAIT: API service is not alive. This is likely temporary.') + elif 'connection failed' in e.message: + o('WAIT: API service is alive but ECS is not. This is likely temporary.') + elif 'Invalid username or password' in e.message: + o('WAIT: Invalid username or password. If ECS authsvc is bootstrapping, this is likely temporary.') + elif 'Non-200' in e.message: + o('WAIT: ECS API internal error. If ECS services are still bootstrapping, this is likely temporary.') + elif 'Read timed out' in e.message: + o('WAIT: ECS API timed out. If ECS services are still bootstrapping, this is likely temporary.') + else: + o('FAIL: Unexpected response from API client: {0}'.format(e)) + if not c: + raise + if not c: + pinging = False + if c and pinging is True: + time.sleep(w) + + vdc_list = conf.ecs.get_vdc_names() + + if vdc_list is not None: + # o('vdc_list={}'.format(vdc_list)) + if len(vdc_list) > 1: + o('Pinging endpoints for {} VDCs:'.format(len(vdc_list))) + for vdc in vdc_list: + o('\t{}: {}'.format(vdc, conf.ecs.get_vdc_endpoint(vdc))) + endpoint_list = [conf.ecs.get_vdc_endpoint(vdc) for vdc in vdc_list] + else: + endpoint_list = conf.ecs.get_vdc_endpoint(conf.ecs.get_vdc_primary()) + for endpoint in endpoint_list: + conf.api_set_endpoint(endpoint) + conf.api_reset() + do_ping() + + else: + do_ping() @ecsconfig.command('licensing', short_help='Work with ECS Licenses') @click.option('-l', is_flag=True, help='List current license installed in ECS') @@ -289,7 +333,6 @@ def licensing(conf, l, a, c): """ Work with ECS Licensing """ - """ Work with a collection of ECS abstractions :param conf: Click object containing the configuration @@ -306,12 +349,22 @@ def add_license(license_blob): # can be overridden. # o(license_blob) #license_dict = {"license_text": license_blob.rstrip('\n')} - return conf.api_client.licensing.add_license(license_blob) + # License has to be uploaded to every VDC's top endpoint + result_list = [] + for vdc in conf.ecs.get_vdc_names(): + o('Adding licensing to VDC: {}'.format(vdc)) + conf.api_endpoint = conf.ecs.get_vdc_endpoint(vdc) + conf.api_reset() + result_list.extend(conf.api_client.licensing.add_license(license_blob)) + o('\tOK') + return result_list def add_default_license(): + o('Using default license') return add_license(license_text) def add_custom_license(license_path): + o('Using custom license from {}'.format(license_path)) with open('{}'.format(license_path), 'r') as fp: license_blob = fp.read() return add_license(license_blob) @@ -328,6 +381,7 @@ def add_custom_license(license_path): die("Could not get license from ECS", e) if a: + o('Installing licensing in ECS VDC(s)') c = None try: license_blob = add_default_license() @@ -336,6 +390,7 @@ def add_custom_license(license_path): die("Could not add default license", e) if c is not None: + o('Installing licensing in ECS VDC(s)') try: license_blob = add_custom_license(c) o('Added custom license to ECS') @@ -353,6 +408,9 @@ def add_custom_license(license_path): @click.option('-k', help='(with -c) Private key to use for custom cert') @pass_conf def trust(conf, l, x, t, c, k): + """ + Work with ECS Certificates + """ """ Work with a collection of ECS abstractions :param conf: Click object containing the configuration @@ -435,6 +493,9 @@ def install_custom_cert(cert_path, key_path): @click.option('-n', default=None, help='Add the given SP to ECS') @pass_conf def sp(conf, l, r, a, n): + """ + Work with ECS Storage Pools + """ """ Work with a collection of ECS abstractions :param conf: Click object containing the configuration @@ -453,14 +514,12 @@ def get_all(): def sp_create(name, sp_ecs_options): """ Create a storage pool - :param name: + :param name: name of storage pool :param sp_ecs_options: dict of kwargs :return: Storage Pool ID as URN """ kwargs = {"name": name} kwargs.update(sp_ecs_options) - #o('kwargs: {}'.format(kwargs)) - resp = conf.api_client.storage_pool.create(**kwargs) return resp['id'] @@ -489,13 +548,24 @@ def create(self, name, description, node_id, storage_pool_id): return conf.api_client.data_store.create(**kwargs) def add_one(name): - o('Adding SP {}'.format(name)) + vdc_name = conf.ecs.get_sp_vdc(name) + o('Creating Storage Pool {}/{}'.format(vdc_name, name)) + + # Set the correct endpoint for this VDC/SP combo + conf.api_set_endpoint(conf.ecs.get_vdc_endpoint(vdc_name)) + conf.api_reset() + conf.wait_for_dt_ready() + sp_id = sp_create(name, conf.ecs.sp_ecs_options(name)) sp_tasks = [] + o('\tOK') + nodes = conf.ecs.get_sp_members(name) + if nodes is not None: + o('Adding Data Stores to Storage Pool:') for node in nodes: - o('Adding datastore node {} to {}'.format(node, name)) + o('\t{}/{}/{}'.format(vdc_name, name, node)) conf.wait_for_dt_ready() # def api_sp_add_node(self, node_ip, sp_id, node_name=None, node_description=None): sp_tasks.append(sp_add_node(sp_id, node)) @@ -515,7 +585,7 @@ def add_all(): if available_sp_configs is not None: o("Available Storage Pool configurations:") for sp_name in available_sp_configs: - o("\t{}".format(sp_name)) + o("\t{}: '{}'".format(conf.ecs.get_sp_vdc(sp_name), sp_name)) else: o("No storage pool configurations are present.") @@ -529,24 +599,20 @@ def add_all(): if available_sp_configs is not None: n = None conf.api_set_timeout(300) - conf.api_close() conf.api_reset() tasks = add_all() #o(tasks) conf.api_set_timeout(API_TIMEOUT) - conf.api_close() conf.api_reset() else: o('No storage pool configurations were provided in deploy.yml') if n is not None: conf.api_set_timeout(300) - conf.api_close() conf.api_reset() tasks = add_one(n) #o(tasks) conf.api_set_timeout(API_TIMEOUT) - conf.api_close() conf.api_reset() @@ -651,24 +717,20 @@ def add_all(): # if available_sp_configs is not None: # n = None # conf.api_set_timeout(300) -# conf.api_close() # conf.api_reset() # tasks = add_all() # #o(tasks) # conf.api_set_timeout(API_TIMEOUT) -# conf.api_close() # conf.api_reset() # else: # o('No storage pool configurations were provided in deploy.yml') # # if n is not None: # conf.api_set_timeout(300) -# conf.api_close() # conf.api_reset() # tasks = add_one(n) # #o(tasks) # conf.api_set_timeout(API_TIMEOUT) -# conf.api_close() # conf.api_reset() # @@ -677,8 +739,12 @@ def add_all(): @click.option('-r', is_flag=True, help='Get current VDC configs from ECS') @click.option('-a', is_flag=True, help="Add all VDCs to ECS") @click.option('-n', default=None, help='Add the given VDC to ECS') +@click.option('-p', is_flag=True, help="Ping Remote VDCs for active status") @pass_conf -def vdc(conf, l, r, a, n): +def vdc(conf, l, r, a, n, p): + """ + Work with ECS Virtual Data Centers + """ """ Work with a collection of ECS abstractions :param conf: Click object containing the configuration @@ -686,6 +752,7 @@ def vdc(conf, l, r, a, n): :param r: list instances of this abstraction configured on ECS :param a: add all known configurations of this abstraction :param n: add a single known configuration of this abstraction + :param p: Ping Remote VDCs for active status :return: retval """ def list_all(): @@ -695,33 +762,74 @@ def get_all(): return conf.api_client.vdc.list() def vdc_create(vdc_name): - vdc_secret = conf.get_vdc_secret(vdc_name) + vdc_secret = conf.get_vdc_secret_by_name(vdc_name) if vdc_secret is None: raise AssertionError # vdc_secret = conf.ecs.gen_secret() - endpoints = [] + endpoints_list = [] for sp in conf.ecs.get_vdc_members(vdc_name): - endpoints.extend(conf.ecs.get_sp_members(sp)) - endpoints = ','.join(endpoints) + endpoints_list.extend(conf.ecs.get_sp_members(sp)) + endpoints = ','.join(endpoints_list) + + # Always create VDCs from the top (first listed) VDC using the secret keys acquired + # from remote VDCs. This allows VDCs to be coordinated from one endpoint for other + # constructs, such as geo replication. + # Always use get_vdc_primary() to find the top VDC + conf.api_set_endpoint(conf.ecs.get_vdc_endpoint(conf.ecs.get_vdc_primary())) + conf.api_reset() return conf.api_client.vdc.update('vdc', inter_vdc_endpoints=endpoints, + inter_vdc_cmd_endpoints=endpoints, secret_key=vdc_secret, new_name=vdc_name, management_endpoints=endpoints) + def add_one(vdc_name): + conf.wait_for_dt_ready() + o('\t{}'.format(vdc_name)) + return vdc_create(vdc_name) + def add_all(): tasks = [] for vdc_name in conf.ecs.get_vdc_names(): - o('\t{}'.format(vdc_name)) - conf.wait_for_dt_ready() - tasks.append(vdc_create(vdc_name)) + tasks.append(add_one(vdc_name)) return tasks - def add_one(vdc_name): - pass + def get_status(vdc_name): + try: + vdc_id = conf.get_vdc_id_by_name(vdc_name) + vdc_dict = conf.api_client.vdc.get(vdc_id) + + # First see if the remote VDC storage pools are visible from this endpoint + try: + storage_pool_visibility_probe = conf.api_client.storage_pool.list(vdc_id=vdc_id) + except Exception: + return False + + # Second see if any VDC statuses are problematic + if vdc_dict['permanentlyFailed'] is True: + return False + elif vdc_dict['inactive'] is True: + return False + else: + return True + + except Exception: + return False + + def ping_vdcs(vdc_list): + status = True + for vdc_name in vdc_list: + o('Checking {}: '.format(vdc_name), nl=False) + if get_status(vdc_name) is False: + o('\tWAIT: VDC still onlining...') + status = False + else: + o('\tOK: VDC online') + return status if l: available_vdc_configs = list_all() @@ -737,6 +845,12 @@ def add_one(vdc_name): for vdc_name in get_all(): o('\t{}'.format(vdc_name)) + if p: + o('Waiting for all VDCs to online and become active...') + while not ping_vdcs(list_all()): + o('Retrying...') + time.sleep(10) + if a: n = None available_vdc_configs = list_all() @@ -744,11 +858,14 @@ def add_one(vdc_name): o('Creating all VDCs...') # apparently doesn't return tasks tasks = add_all() + o('Created all VDCs') else: o('No VDC configurations are present in deploy.yml') if n is not None: + o('Creating VDC...') add_one(n) + o('Created VDC') @ecsconfig.command('rg', short_help='Work with ECS Replication Groups') @@ -758,6 +875,9 @@ def add_one(vdc_name): @click.option('-n', default=None, help='Add the given RG to ECS') @pass_conf def rg(conf, l, r, a, n): + """ + Work with ECS Replication Groups + """ """ Work with a collection of ECS abstractions :param conf: Click object containing the configuration @@ -771,20 +891,20 @@ def list_all(): return conf.ecs.get_rg_names() def get_all(): - return conf.api_client.replication_group.list() + return conf.api_client.replication_group.list()['data_service_vpool'] def add_rg(rg_name): - o('Adding replication group {}'.format(rg_name)) + o('Creating replication group {}'.format(rg_name)) zone_mappings = [] for vdc_name in conf.ecs.get_rg_members(rg_name): - o('Generating zone mappings for {}/{}'.format(rg_name, vdc_name)) + o('\tGenerating zone mappings for {}/{}'.format(rg_name, vdc_name)) vdc_id = conf.get_vdc_id_by_name(vdc_name) sp_records = conf.api_client.storage_pool.list(vdc_id=vdc_id)['varray'] for sp_record in sp_records: o('\t{}'.format(sp_record['name'])) zone_mappings.append((vdc_id, sp_record['id'])) rg_options = conf.ecs.get_rg_options(rg_name) - o('Applying mappings') + o('\tApplying mappings') resp = conf.api_client.replication_group.create(rg_name, zone_mappings=zone_mappings, description=rg_options['description'], @@ -797,6 +917,7 @@ def add_all(): results = [] for rg_name in conf.ecs.get_rg_names(): results.append(add_rg(rg_name)) + o('\tOK') return results if l: @@ -811,8 +932,8 @@ def add_all(): if r: try: o('Replication Groups currently configured:') - for name in get_all(): - o('\t{}'.format(name)) + for rg_dict in get_all(): + o('\t{}'.format(rg_dict['name'])) except ECSClientException as e: die('') @@ -821,8 +942,7 @@ def add_all(): available_rg_configs = list_all() if available_rg_configs is not None: results = add_all() - for result in results: - o('Created replication group {}'.format(result['name'])) + o('Created all Replication Groups') else: o('No replication group configurations in deploy.yml') @@ -839,7 +959,9 @@ def add_all(): @pass_conf def namespace(conf, l, r, a, n): """ - # BUG: Broken - doesn't build NS right + Work with ECS Namespaces + """ + """ Work with a collection of ECS abstractions :param conf: Click object containing the configuration :param l: list known configurations of this abstraction @@ -860,28 +982,26 @@ def namespace_exists(name): return False def add_namespace(namespace_name): - o('Adding namespace {}'.format(namespace_name)) ns_dict = conf.ecs.get_ns_dict(namespace_name) - default_data_services_vpool = [ x['id'] for x in conf.api_client.replication_group.list()['data_service_vpool'] if x['name'] == ns_dict['replication_group'] ][0] - kwargs = {"is_stale_allowed": ns_dict['is_stale_allowed'], "is_compliance_enabled": ns_dict['is_compliance_enabled'], "is_encryption_enabled": ns_dict['is_encryption_enabled'], "namespace_admins": ns_dict['administrators'], "default_data_services_vpool": default_data_services_vpool} - return conf.api_client.namespace.create(namespace_name, **kwargs) def add_all(): + o('Creating all Namespaces') for namespace_name in list_all(): + o('Adding namespace {}'.format(namespace_name)) add_namespace(namespace_name) - o('Created namespace {}'.format(namespace_name)) + o('\tOK') if l: available_rg_configs = list_all() @@ -920,6 +1040,9 @@ def add_all(): @click.option('-n', default=None, help='Add the given object user to ECS') @pass_conf def object_user(conf, l, r, s, a, n): + """ + Work with ECS Object Users + """ """ Work with a collection of ECS abstractions :param conf: Click object containing the configuration @@ -958,17 +1081,17 @@ def add_one(name): ou_namespace = conf.ecs.get_ou_namespace(name) ou_dict = conf.ecs.get_ou_dict(name) - o("Adding {} '{}' to namespace '{}'".format(config_type, name, ou_namespace)) + o("Creating '{}' in namespace '{}'".format(name, ou_namespace)) conf.api_client.object_user.create(name, namespace=ou_namespace) - o("\tAdding S3 credentials for '{}'".format(name)) + o("\tAdding {}'s S3 credentials".format(name)) conf.api_client.secret_key.create(user_id=name, namespace=ou_namespace, expiry_time=ou_dict['s3_expiry_time'], secret_key=ou_dict['s3_secret_key']) if ou_dict['swift_password'] is not None and ou_dict['swift_groups_list'] is not None: - o("\tAdding Swift credentials for '{}'".format(name)) + o("\tAdding {}'s Swift credentials".format(name)) conf.api_client.password_group.create(user_id=name, namespace=ou_namespace, password=ou_dict['swift_password'], @@ -985,6 +1108,7 @@ def add_one(name): if a: n = None if available_configs is not None: + o('Creating all configured {}s:'.format(config_type)) add_all() o('Created all configured {}s'.format(config_type)) else: @@ -1015,6 +1139,9 @@ def add_one(name): @click.option('-n', default=None, help='Add the given management user to ECS') @pass_conf def management_user(conf, l, r, a, g, n): + """ + Work with ECS Management Users + """ """ Work with a collection of ECS abstractions :param conf: Click object containing the configuration @@ -1047,7 +1174,7 @@ def get_one(name): def add_all(): for this_name in list_all(): add_one(this_name) - o('Created {}: {}'.format(config_type, this_name)) + o('\t{}'.format(this_name)) def add_one(name): mu_pass = conf.ecs.get_mu_password(name) @@ -1066,6 +1193,7 @@ def add_one(name): if a: n = None if available_configs is not None: + o('Creating all configured {}s:'.format(config_type)) add_all() o('Created all configured {}s'.format(config_type)) else: @@ -1096,6 +1224,9 @@ def add_one(name): # @pass_conf # def bucket(conf, l, r, s, a, n): # """ +# Work with ECS Buckets +# """ +# """ # Work with a collection of ECS abstractions # :param conf: Click object containing the configuration # :param l: list known configurations of this abstraction diff --git a/ui/run.sh b/ui/run.sh index e61d1701..9b472799 100755 --- a/ui/run.sh +++ b/ui/run.sh @@ -36,7 +36,9 @@ run() { run="${1}" shift sudo docker run --rm -it --privileged --net=host ${default_mount_opts[@]} ${image_release} ${run} ${@} - return $? + rc=$? + o "" + return ${rc} } case "$(basename ${0})" in @@ -116,6 +118,7 @@ case "$(basename ${0})" in o "Pinging Management API Endpoint until ready" run ecsconfig ping -c -x || exit $? run ecsconfig vdc -a || exit $? + run ecsconfig vdc -p || exit $? o "Pinging Management API Endpoint until ready" run ecsconfig ping -c -x || exit $? run ecsconfig rg -a || exit $? diff --git a/ui/tui/ecsconf.py b/ui/tui/ecsconf.py index 5a9bdef8..68fb4ca2 100644 --- a/ui/tui/ecsconf.py +++ b/ui/tui/ecsconf.py @@ -379,6 +379,17 @@ def get_any_endpoint(self): """ return random.SystemRandom().choice(self.list_all_sp_nodes()) + def get_sp_vdc(self, sp): + """ + Returns the VDC name that the sp belongs to + :param sp: storage pool name + :return: vdc name or None + """ + for vdc in self.get_vdc_names(): + if sp in self.get_vdc_members(vdc): + return vdc + return None + # Storage Pools def get_sp_names(self): """ @@ -435,6 +446,11 @@ def get_vdc_members(self, vdc_name): return self.get_members(VDC, vdc_name) def get_vdc_endpoint(self, vdc_name): + """ + Gets the top (first listed) storage pool member from the named VDC + :param vdc_name: VDC name string + :return: top storage pool of the VDC + """ return self.get_sp_members(self.get_vdc_members(vdc_name)[0])[0] # def get_vdc_endpoint(self, vdc_name): @@ -446,6 +462,13 @@ def get_vdc_endpoint(self, vdc_name): # nodes += self.get_sp_members(sp) # return random.SystemRandom().choice(nodes) + def get_vdc_primary(self): + """ + Gets the top (first listed) VDC + :return: + """ + return self.get_vdc_names()[0] + def get_new_vdc_secret(self, vdc_name): """ Returns the configured VDC secret key, or None if no key is defined for the VDC diff --git a/ui/tui/ecsdiag.py b/ui/tui/ecsdiag.py index 2d01f508..07d72517 100644 --- a/ui/tui/ecsdiag.py +++ b/ui/tui/ecsdiag.py @@ -13,6 +13,7 @@ class ECSDiag(object): """ def __init__(self, endpoint): + self.address = endpoint self.endpoint = '{0}://{1}:{2}'.format(DIAGNOSTIC_PROTOCOL, endpoint, DIAGNOSTIC_PORT) def get_dt_status(self): @@ -29,4 +30,6 @@ def get_dt_status(self): except Exception as e: status_dict.update({'unready_dt_num': 0, 'unknown_dt_num': -1}) + status_dict.update({'endpoint': self.address}) + return status_dict diff --git a/ui/tui/tools.py b/ui/tui/tools.py index 3ce88d29..1ccecb59 100755 --- a/ui/tui/tools.py +++ b/ui/tui/tools.py @@ -214,10 +214,11 @@ def write_file(self, dst, cooked_file): raise -def o(message): +def o(message, nl=True): """ - - :param message: + Generic unified output function + :param message: string message to output + :param nl: bool trailing newline :return: """ click.echo('> {}'.format(message)) @@ -225,9 +226,9 @@ def o(message): def die(message, exception=None): """ - - :param message: - :param exception: + Generic unified output and exit(1) function + :param message: see o() + :param exception: the exception to output :return: """ o("FATAL: {}".format(message)) From 7658129afed05cd0409259e69020586458fc2e56 Mon Sep 17 00:00:00 2001 From: Travis Wichert Date: Fri, 16 Jun 2017 15:49:27 -0400 Subject: [PATCH 2/7] Remove the /legacy directory (#271) --- .../ECS-GCE-MultiNode-Instructions.md | 77 -- .../ECS-GCE-SingleNode-Instructions.md | 77 -- .../ECS-MultiNode-Instructions.md | 196 ----- .../ECS-MultiNode-Puppet-Instructions.md | 163 ---- .../ECS-SingleNode-Instructions.md | 177 ---- .../ECS-SingleNode-Vagrant-Instructions.md | 119 --- legacy/Documentation/ECS-Troubleshooting.md | 136 --- legacy/Documentation/ECS-UI-Automation.md | 70 -- legacy/Documentation/ECS-UI-Web-Interface.md | 53 -- legacy/Documentation/google-compute.md | 61 -- legacy/Documentation/google-compute.rst | 98 --- legacy/Documentation/install.md | 213 ----- legacy/Documentation/install.rst | 482 ----------- .../media/Create_replication_group.PNG | Bin 175455 -> 0 bytes .../Documentation/media/create_namespace.PNG | Bin 152876 -> 0 bytes .../media/create_object_user.png | Bin 54812 -> 0 bytes .../media/create_object_user_keys.png | Bin 77720 -> 0 bytes .../media/create_storage_vpool.PNG | Bin 63432 -> 0 bytes .../media/create_virtual_data_center.PNG | Bin 159362 -> 0 bytes .../media/ecc-host-network-example.png | Bin 15187 -> 0 bytes .../media/ecs-disk-install-step1.PNG | Bin 28519 -> 0 bytes .../media/ecs-disk-install-step2.PNG | Bin 73921 -> 0 bytes .../media/ecs-disk-install-step3.PNG | Bin 35520 -> 0 bytes .../media/ecs-disk-install-step4.PNG | Bin 58322 -> 0 bytes .../media/ecs-waiting-for-webserver.PNG | Bin 20651 -> 0 bytes legacy/Documentation/media/input_license.PNG | Bin 182394 -> 0 bytes legacy/Documentation/system-requirements.md | 82 -- legacy/Documentation/system-requirements.rst | 163 ---- legacy/ecs-multi-node/.gitignore | 62 -- legacy/ecs-multi-node/README.md | 23 - legacy/ecs-multi-node/__init__.py | 0 legacy/ecs-multi-node/additional_prep.sh | 80 -- .../ecs-multi-node/ecs_multinode_install.sh | 68 -- .../gce/ecs_multi_node_template.jinja | 74 -- legacy/ecs-multi-node/gce/ecs_multinode.yaml | 28 - legacy/ecs-multi-node/license.lic | 51 -- .../ecs3datanodes/facts.d/checkecsfile.sh | 2 - .../ecs3datanodes/manifests/configure.pp | 125 --- .../puppet/ecs3datanodes/manifests/ini.pp | 13 - legacy/ecs-multi-node/settings.py | 36 - .../step1_ecs_multinode_install.py | 780 ----------------- .../step2_object_provisioning.py | 360 -------- legacy/ecs-multi-node/systemd/README.md | 13 - .../systemd/docker.ecsmultinode.service | 13 - legacy/ecs-single-node/.gitignore | 49 -- legacy/ecs-single-node/README.md | 20 - legacy/ecs-single-node/Vagrantfile | 27 - legacy/ecs-single-node/__init__.py | 0 legacy/ecs-single-node/additional_prep.sh | 80 -- .../gce/ecs_node_template.jinja | 65 -- .../ecs-single-node/gce/ecs_singlenode.yaml | 16 - legacy/ecs-single-node/license.lic | 51 -- legacy/ecs-single-node/settings.py | 35 - .../step1_ecs_singlenode_install.py | 814 ------------------ .../step2_object_provisioning.py | 362 -------- legacy/ecs-single-node/systemd/README.md | 13 - .../systemd/docker.ecsstandalone.service | 13 - legacy/ecs-single-node/vagrant-install.sh | 14 - 58 files changed, 5454 deletions(-) delete mode 100644 legacy/Documentation/ECS-GCE-MultiNode-Instructions.md delete mode 100644 legacy/Documentation/ECS-GCE-SingleNode-Instructions.md delete mode 100644 legacy/Documentation/ECS-MultiNode-Instructions.md delete mode 100644 legacy/Documentation/ECS-MultiNode-Puppet-Instructions.md delete mode 100644 legacy/Documentation/ECS-SingleNode-Instructions.md delete mode 100644 legacy/Documentation/ECS-SingleNode-Vagrant-Instructions.md delete mode 100644 legacy/Documentation/ECS-Troubleshooting.md delete mode 100644 legacy/Documentation/ECS-UI-Automation.md delete mode 100644 legacy/Documentation/ECS-UI-Web-Interface.md delete mode 100644 legacy/Documentation/google-compute.md delete mode 100644 legacy/Documentation/google-compute.rst delete mode 100644 legacy/Documentation/install.md delete mode 100644 legacy/Documentation/install.rst delete mode 100644 legacy/Documentation/media/Create_replication_group.PNG delete mode 100644 legacy/Documentation/media/create_namespace.PNG delete mode 100644 legacy/Documentation/media/create_object_user.png delete mode 100644 legacy/Documentation/media/create_object_user_keys.png delete mode 100644 legacy/Documentation/media/create_storage_vpool.PNG delete mode 100644 legacy/Documentation/media/create_virtual_data_center.PNG delete mode 100644 legacy/Documentation/media/ecc-host-network-example.png delete mode 100644 legacy/Documentation/media/ecs-disk-install-step1.PNG delete mode 100644 legacy/Documentation/media/ecs-disk-install-step2.PNG delete mode 100644 legacy/Documentation/media/ecs-disk-install-step3.PNG delete mode 100644 legacy/Documentation/media/ecs-disk-install-step4.PNG delete mode 100644 legacy/Documentation/media/ecs-waiting-for-webserver.PNG delete mode 100644 legacy/Documentation/media/input_license.PNG delete mode 100644 legacy/Documentation/system-requirements.md delete mode 100644 legacy/Documentation/system-requirements.rst delete mode 100644 legacy/ecs-multi-node/.gitignore delete mode 100644 legacy/ecs-multi-node/README.md delete mode 100644 legacy/ecs-multi-node/__init__.py delete mode 100644 legacy/ecs-multi-node/additional_prep.sh delete mode 100644 legacy/ecs-multi-node/ecs_multinode_install.sh delete mode 100644 legacy/ecs-multi-node/gce/ecs_multi_node_template.jinja delete mode 100644 legacy/ecs-multi-node/gce/ecs_multinode.yaml delete mode 100644 legacy/ecs-multi-node/license.lic delete mode 100644 legacy/ecs-multi-node/puppet/ecs3datanodes/facts.d/checkecsfile.sh delete mode 100644 legacy/ecs-multi-node/puppet/ecs3datanodes/manifests/configure.pp delete mode 100644 legacy/ecs-multi-node/puppet/ecs3datanodes/manifests/ini.pp delete mode 100644 legacy/ecs-multi-node/settings.py delete mode 100644 legacy/ecs-multi-node/step1_ecs_multinode_install.py delete mode 100644 legacy/ecs-multi-node/step2_object_provisioning.py delete mode 100644 legacy/ecs-multi-node/systemd/README.md delete mode 100644 legacy/ecs-multi-node/systemd/docker.ecsmultinode.service delete mode 100644 legacy/ecs-single-node/.gitignore delete mode 100644 legacy/ecs-single-node/README.md delete mode 100644 legacy/ecs-single-node/Vagrantfile delete mode 100644 legacy/ecs-single-node/__init__.py delete mode 100644 legacy/ecs-single-node/additional_prep.sh delete mode 100644 legacy/ecs-single-node/gce/ecs_node_template.jinja delete mode 100644 legacy/ecs-single-node/gce/ecs_singlenode.yaml delete mode 100644 legacy/ecs-single-node/license.lic delete mode 100644 legacy/ecs-single-node/settings.py delete mode 100644 legacy/ecs-single-node/step1_ecs_singlenode_install.py delete mode 100644 legacy/ecs-single-node/step2_object_provisioning.py delete mode 100644 legacy/ecs-single-node/systemd/README.md delete mode 100644 legacy/ecs-single-node/systemd/docker.ecsstandalone.service delete mode 100644 legacy/ecs-single-node/vagrant-install.sh diff --git a/legacy/Documentation/ECS-GCE-MultiNode-Instructions.md b/legacy/Documentation/ECS-GCE-MultiNode-Instructions.md deleted file mode 100644 index 8ee69c27..00000000 --- a/legacy/Documentation/ECS-GCE-MultiNode-Instructions.md +++ /dev/null @@ -1,77 +0,0 @@ -# ECS SW 2.x Google Compute Engine Deployment - -ECS 2.x Multi Node installation on Google Compute Engine: - -The following instructions will allow you to install ECS 2.x software using a GCE Deployment Manager, using a simple template file. - -## Prerequisite - -1. Google Compute Engine Tools, you can download and install it from the following link: **[gcloud Tools Install](https://cloud.google.com/sdk/gcloud/ "gcloud Tool Guide")** - -2. Google Compute Engine Template files that are located in this git repository under ECS-CommunityEdition/ecs-multi-node/gce/ - - -## Evnvironment Requirements -The following are the base requirements for running ECS 2.2 software for a mutli 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. - - -## Deploy ECS Multi Node Install - -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; - -1. Create required firewall rules for ECS -2. Create a set of 4 data disk of 256 GB size each. -2. Create a set of 4 VM Instance of type n1-highmem-2 (2core 13GB) -3. Attach Disk for each node -4. Assign Network -5. 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. - - -## Provisioning -The automated provisioning may get stuck, login into the portal and start the manual provisioning. - -1. Upload License -2. Create Storage Pool -3. Create Virtual Data Center -4. Create Replication Group -5. Create Namespace -6. Create User and retrieve S3 Secret Key -7. Create Bucket - -[For details follow these steps in the ECS Portal.](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-UI-Web-Interface.md "ECS Manual Provisioning using ECS Web UI") - - -## Monitor Node Status -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 - -## Access the ECS Web UI - - 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: - -![ECS UI](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-waiting-for-webserver.PNG) - - -## Cleanup -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 - - - diff --git a/legacy/Documentation/ECS-GCE-SingleNode-Instructions.md b/legacy/Documentation/ECS-GCE-SingleNode-Instructions.md deleted file mode 100644 index 5794dc7d..00000000 --- a/legacy/Documentation/ECS-GCE-SingleNode-Instructions.md +++ /dev/null @@ -1,77 +0,0 @@ -# ECS SW 2.x Google Compute Engine Deployment - -ECS 2.x Single Node installation on Google Compute Engine: - -The following instructions will allow you to install ECS 2.x software using a GCE Deployment Manager with a single command. - -## Prerequisite - -Google Compute Engine Tools, you can download and install it from the following link: -- **[gcloud Tools Install](https://cloud.google.com/sdk/gcloud/ "gcloud Tool Guide")** - -Google Compute Engine Template files that are located in this git repository under ECS-CommunityEdition/ecs-single-node/gce/ - - -## Evnvironment Requirements -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. - - -## Deploy ECS Single Node Install - -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; - -1. Open required firewall ports for ECS -2. Create a new data disk of 256 GB size. -2. Create a new VM Instance of type n1-highmem-8 (8core 50GB) -3. Attach Disk -4. Assign Network -5. 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. - - -# Provisioning -The automated provisioning may get stuck, login into the portal and start the manual provisioning. The license is already uploaded so you will need to just provision the following in order: - -1. Create Storage Pool -2. Create Virtual Data Center -3. Create Replication Group -4. Create Namespace -4. Create User and retrieve S3 Secret Key -5. Create Bucket - -[For details follow these steps in the ECS Portal.](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-UI-Web-Interface.md "ECS Manual Provisioning using ECS Web UI") - - -## Monitor Node Status -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 - -## Access the ECS Web UI - - 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: - -![ECS UI](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-waiting-for-webserver.PNG) - - -## Cleanup -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 - - - diff --git a/legacy/Documentation/ECS-MultiNode-Instructions.md b/legacy/Documentation/ECS-MultiNode-Instructions.md deleted file mode 100644 index 1eda7dc0..00000000 --- a/legacy/Documentation/ECS-MultiNode-Instructions.md +++ /dev/null @@ -1,196 +0,0 @@ -# ECS Software - Multi-Node Docker Configuration Instructions - - -**Table of Contents** -- [Introduction](#introduction) -- [Global Requirements](#global-requirements) -- [Versioning](#versioning) -- [Installation Steps](#installation-steps) -- [CentOS Installation](#centos-installation) -- [Pre-Installation Steps](#pre-installation-steps) -- [Host Configuration](#host-configuration) -- [Host and Container Configuration](#host-and-container-configuration) -- [ECS Object Configuration](#ecs-object-configuration) -- [ECS Web Environment access and object testing](#ecs-web-environment-access-and-object-testing) -- [Troubleshooting](#troubleshooting) -- [Files Inventory](#files-inventory) -- [Troubleshooting] (#troubleshooting) -- [Support](#support) - - - -## Introduction - -EMC's Elastic Cloud Storage (ECS) Software Docker **multiple node** deployment is intended to be used by developers and has multiple deployment options for them. The most universal method for deploying ECS software is through Docker applied across whichever means are at your disposal (IaaS/PaaS/Hypervisor). In addition to this, you can leverage Vagrant for local VirtualBox instances. - -In terms of cloud deployments, there are a range of options. The most compatible methods of deployment across any provider are the CentOS and CoreOS options to run the Docker instances. - - -## Global Requirements - -An ECS cluster deployment requires a minimum of four data nodes to provide the full set of features. Each one of the instances should have the following minimum requirements: - -- **Operative system:** CentOS 7 -- **CPU/Cores:** 3 Cores -- **Memory:** Minimum of 16 GB RAM -- **Disks:** An unpartitioned/raw disk with at least 100 GB of storage per disk. Multiple disks can be attached on each ECS node to increase capacity and performance. Each disk need to be unpartitioned before running the installation scripts. - -Installation also requires internet connectivity to receive the requisite utility packages and Docker images. - -### Supported Host Operative Systems - -We have performed testing against the following platforms: - -OS Name | Version | Docker Version | -|-------|---------|----------------| -|CentOS | 7.1 | 1.8.2 (latest) | - - -## Installation Steps - -The installation script is composed by two main steps: - -|Step| Name | Description |Execution Time | -|------|------|-----------|---------------| -|1| Host Configuration | This step controls the flow and contains the configuration changes required for the host OS that will run the ECS Software Docker container.|3-15 min| -|2|ECS Object Configuration | This step performs the ECS configuration so it can start serving objects.|10-30 min| - - -## CentOS Installation - -[CentOS](http://www.centos.org/) is a well-known Linux distribution with the ability to deploy containers with Docker. Common public cloud platforms have CentOS templates ready to be used, so getting ECS Software on a Docker container up is extremely easy. - - -### Pre Installation Steps - -These steps are to be performed prior running the installation scripts on each of the ECS Nodes: - -1. **Attach Data Disk(s):** ECS requires one or more disks to be attached to each host. The disk(s) will hold the object data store. **The Disks will be formatted as XFS by the installation script.** - -The data disk(s) attached to each host need to be **unpartitioned or RAW**. For example: We have a new host where we execute the command `sudo fdisk -l`: - -![Fdisk in a new Host ](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-disk-install-step1.PNG) - -In the picture, we can see two disks: **sda** and **sdb**. A `mount -l` looks like this: - -![Mount in a new Host](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-disk-install-step2.PNG) - -Now we attach a new disk to the host VM. The new disk **/dev/sdc** looks like this after executing `fdisk -l` again: - -![Fdisk in New Host with a new disk attached](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-disk-install-step3.PNG) - - -**Note:** Depending on the environment or the cloud provider you maybe using, the attached disk name(s) will be different. In this example, the attached disk came as **/dev/sdc**. The attached disk will be formatted and mounted during step 1, so do not mount the ECS data disk before executing step 1: - -![Fdisk after the STEP 1 script has executed](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-disk-install-step4.PNG) - - -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. - -|Port Number|Port Description| -|-----------|----------------| -|22| SSH, needed if using remote access | -|443 | Port used for accessing the ECS management website| -|3218| Port used by the CAS service| -|4443| ECS management API port | -|9020| Port used for the S3 API| -|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| -|9025| Port used for SWIFT API on HTTPS| -|9100| Port used for DT Query service| -|9101| ECS Diagnostic Service Index | - -**Note:** There are the most commonly-used ports by ECS; please refer to [List of Ports to be Open](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting.md#list-of-open-ports-required-on-each-ecs-data-node) of the troubleshooting page. 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. - - -3. **Network configuration:** Define your network configuration. ECS Data Nodes must be on the same subnet and be able to talk to each other. This is an example: - -![ECS Multinode network configuration example](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecc-host-network-example.png) - - -### Host Configuration -#### :bangbang: WARNING: This is a destructive operation. Existing data on selected storage devices will be overwritten. Existing Docker installations AND images will be removed. - -**The following section needs to be performed on each one of the ECS nodes:** - -1. **Perform Updates:** Perform a Yum update using `sudo yum update` and download packages required for installation using `sudo yum install git tar wget` - -2. **Git Clone/Pull** the repository: [https://github.com/EMCECS/ECS-CommunityEdition ](https://github.com/EMCECS/ECS-CommunityEdition "https://github.com/EMCECS/ECS-CommunityEdition") - -3. **Navigate** to the **/ecs-multi-node** folder. - -4. **Gather** the IP addresses, desired hostnames, ethernet adapter name (which can be obtained by executing `ifconfig` on the host), and designated data disk(s). For example: - -|Hostname | IP Address | Disk Name| Ethernet Adapter | -|---------|------------|----------|------------------| -|ecstestnode1 | 10.0.1.10 |sdc sdd | eth0 | -|ecstestnode2 | 10.0.1.11 |sdc sdd | eth0 | -|ecstestnode3 | 10.0.1.12 |sdc sdd | eth0 | -|ecstestnode4 | 10.0.1.13 |sdc sdd | eth0 | - -5. Use gathered values for each ECS node (IP addresses, hostnames, ethernet adapter name, disk names) to build the `step1_ecs_multinode_install.py` script, which will be the same across all nodes. Be advised that **the hostname can not be localhost for any node**. For our example values, the command should look like this: - -`sudo python step1_ecs_multinode_install.py --ips 10.0.1.10 10.0.1.11 10.0.1.12 10.0.1.13 --hostnames ecstestnode1 ecstestnode2 ecstestnode3 ecstestnode4 --disks sdc sdd --ethadapter eth0` - -**The execution of this script is will take about 3-15 minutes** depending on how many packages need to be installed or updated and the speed of certain services on the host. -For a list of all arguments with their full descriptions and including more detailed options, use the `--help` flag, e.g. `python step1_ecs_singlenode_install.py --help` - -6. Once this step has finished, **you may have to wait a few minutes** until the administrative web UI becomes available. ECS' administrative portal can be accessed from the data node on port 443 ( https:// ). Once you see the screen bellow, you are ready to execute step 2. - -![ECS UI](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-waiting-for-webserver.PNG) - - -### ECS Object Configuration - -The next step, is the ECS Object configuration. This can be accomplished in two ways: - -- **ECS' Administration UI:** [Please follow these Instructions.](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-UI-Web-Interface.md "ECS UI Object Configuration via Administration website") -- **Automated script:** Follow the instructions in the section below. - -Both methods provide the same results; the first walks you through ECS's administrative web interface and the second uses ECS's Management API (exposed on port 4443 and 9011) - - -**ECS Object Configuration via an automated script** - - -1. Navigate to the **/ecs-multi-node** folder -2. **Verify** that the `step2_object_provisioning.py` script for the environment that you are in can access the 4443 and 9011 ports of the host machine, such as through the output of `nmap -sT -O localhost` -3. Before executing the `step2_object_provisioning.py` please, please provide values for the following variables: - -|Variable Name|Variable Description | Example Value| -|-------------|---------------------|--------------| -|ECSNodes | IP Addresses of the ECS Nodes (comma-delimited list). | 10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 | -|NameSpace | The objects' Namespace | ns1 | -|ObjectVArray | The objects' Virtual Array | ova1 | -|ObjectVPool | The objects' Virtual Pool | ov1 | -|UserName | The name of the initial Object User | user1 | -|DataStoreName | The name of the Data Store.| ds1 | -|VDCName | The name of the Virtual Data Center.| vdc1 | -|MethodName | The name of step to be executed. Leave blank to complete all provisioning steps.| *[empty]* | - -Once the variables are defined, they should be placed in the script. Using the example values, the command becomes: - - sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName= - -For more granular way of executing the Object Configuration, you can follow the instructions on **[this document](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-UI-Automation.md "ECS UI Automation Detailed")** showing how to run the process step by step. - -**The execution of this script may take 10 to 30 minutes to complete.** - - -### ECS Web Environment Access and Object Testing - -After the successful execution of the ECS Object Configuration, the system is ready to begin serving objects. Object users can read and write using free tools like **[S3 browser](http://s3browser.com/ "S3 browser")** - -In addition, access to the ECS's administrative panel is available via the `https://` on any node. The default login and password for the portal is `root/ChangeMe` (which you will be prompted to change when first accessing the portal) - -## Troubleshooting -If you have any issues with the installation you can **[review this page](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting.md "Troubleshooting page")** for troubleshooting tips and/or go to the support section bellow. - - -## Support - -Please file bugs and issues at the GitHub issues page. For more general discussions you can contact the EMC Code team at Google Groups or tagged with **EMC** on Stack Overflow. The code and documentation are released with no warranties or SLAs and are intended to be supported through a community-driven process. diff --git a/legacy/Documentation/ECS-MultiNode-Puppet-Instructions.md b/legacy/Documentation/ECS-MultiNode-Puppet-Instructions.md deleted file mode 100644 index b0644380..00000000 --- a/legacy/Documentation/ECS-MultiNode-Puppet-Instructions.md +++ /dev/null @@ -1,163 +0,0 @@ -# ECS Software 2.x - Multi-Node Puppet Configuration Instructions - - -**Table of Contents** -- [Introduction](#introduction) -- [Global Requirements](#global-requirements) -- [Installation Steps](#installation-steps) -- [CentOS Installation](#centos-installation) - - [Pre-Installation Steps](#pre-installation-steps) - - [Host Configuration](#host-configuration) - - [Host and Container Configuration](#host-and-container-configuration) - - [ECS Object Configuration](#ecs-object-configuration) - - [ECS Web Environment access and object testing](#ecs-web-environment-access-and-object-testing) -- [Troubleshooting](#troubleshooting) -- [Support](#support) - - - -## Introduction - -EMC's Elastic Cloud Storage (ECS) 2.x Software Puppet **Multiple node** deployment is intended to be used by developers and Ops Who are familiar with Puppet Enterprise as configuration management system. - - -## Global Requirements - -An ECS cluster deployment requires a minimum of three (3) data nodes to provide the feature set required. Each one of the instances should have the following minimum requirements: - -- **Operative system:** CentOS 7 -- **CPU/Cores:** 4 Cores -- **Memory:** Minimum of 50 GB RAM (64 GB recommended) -- **Disks:** An unpartitioned/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. - - -### Supported Host Operative Systems - -We have performed testing against the following platforms: - -OS Name | Version | Docker Version | -|-------|---------|----------------| -|CentOS | 7.1 | 1.4.1 | - - -## Puppet ECS Module - -The installation Module is composed by two main manifest files: - -|Step| Name | Description | -|------|------|-----------| -|1| ini.pp | Initial class| -|2| Configurate.pp | Install and configure the node to run ECS Software| - - -## CentOS Installation - -[CentOS](http://www.centos.org/) is a well known Linux distribution that has the ability to deploy containers with Docker. Common public cloud platforms have CentOS templates ready to be used. - - -### Pre Installation Requirement - -These steps are to be performed prior install The module on the Puppet master server: - -1. **Puppet Master:** The master server is installed and configured. - -2. **Puppet Nodes:** Puppet node is installed and configured with the correct ports. ECS requires the following ports open: - - |Port Number|Port Description| - |-----------|----------------| - |22| SSH, needed if using remote access | - |443 | Port used for accessing the ECS Web Application| - |4443| Port used for accessing the ECS API. This port can be closed from external access after the installation| - |9011| Port used for accessing the ECS API. This port can be closed from external access after the installation| - |9020| Port used for the S3 API| - |9024| Port used for SWIFT API | - |61613| Puppet MCollective | - |8140| Puppet | - - **Note:** There are more ports required to be open if you have a firewall running on the hosts. Please refer to **[List of Ports to be Open](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting.md#list-of-open-ports-required-on-each-ecs-data-node)** of the troubleshooting page. - - 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. - -3. The following [Puppet Get Start Guide](http://info.puppetlabs.com/pe-azure-gsg.html) is good reference to use. - -### Install ECS Module - -**Puppet Master Server:** - -1. From the command line on the Puppet master, navigate to the modules directory `cd /etc/puppetlabs/puppet/environments/production/modules`. -2. Run `mkdir -p ecs3datanodes/manifests` to create the new module directory and its manifests directory. -3. Run `cd ecs3datanodes/manifests` -3. Using wget download ecs manifest ini.pp `wget -q https://github.com/EMCECS/ECS-CommunityEdition/blob/master/ecs-multi-node/pupppet/ecs3datanodes/manifest/ini.pp -O ini.pp` -4. Then download ecs manifest configure.pp `wget -q https://github.com/EMCECS/ECS-CommunityEdition/blob/master/ecs-multi-node/pupppet/ecs3datanodes/manifest/configure.pp -O configure.pp` -5. Add custom Fact to check if ECS breadcrumb file exists on the node machines. - - Run `cd /etc/puppetlabs/puppet/environments/production/modules/ecs3datanodes` - - Run `mkdir facts.d; cd facts.d` - - Then download ecs fact checkecsfile.sh `wget -q https://github.com/EMCECS/ECS-CommunityEdition/blob/master/ecs-multi-node/pupppet/ecs3datanodes/facts.d/checkecsfile.sh -O checkecsfile.sh` -5. Run `puppet agent -t` - - -**Puppet Enterprise Web:** - -1. From the console, click **Classification** in the top navigation bar. - -2. In the** Node group name** field, name your group **ECS-DataNodes**. -3. Click **Add group**. - -Note: Leave the Parent name and Environment values as their defaults **(default and production**, respectively). - -4. From the **Classification** page, select the **ECS-DataNodes** group, and click the Rules tab. -5. In the **Fact** field, enter “name” (without the quotes). -6. From the **Operator** drop-down list, select **matches regex**. -7. In the **Value** field, enter “.x” (without the quotes). -8. Click **Add rule**. - -**To add the ecs3datanodes classes to the ECS-DataNodes group:** - -1. From the **Classification** page, select the **ECS-DataNodes** group. -2. Click the **Classes** tab. -3. In the **Class name** field, begin typing `ecs3datanodes`, and select it from the autocomplete list. -4. Click **Add class**. -6. Click the Commit change button. - -7. From the CLI of your Puppet master, run `puppet agent -t`. - - -### Node Configuration - -The following section needs to be performed on each one of the ECS Nodes: - -1. From command line run agent, run ` puppet agent -t`. - -2. After finishing check docker container run `docker ps` - -**The execution of this script is will take about 1-5 minutes** depending of how many packages need to be updated. This script executed should be executed on each ECS Node. - - -### ECS Object Configuration - -The next step, is the ECS Object configuration. This can be accomplished in two ways: - -- **ECS' Administration UI:** [Please follow these Instructions.](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-UI-Web-Interface.md "ECS UI Object Configuration via Administration website") - - or - -- **Automated script:** [Please follow these Instructions.](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-MultiNode-Instructions.md#ecs-object-configuration "ECS UI Object Configuration via Automated script") - - - - - -### ECS Web Environment access and object testing - -After the successful execution of the ECS Object Configuration, the system is ready to start serving objects. - -In addition, access to the ECS's admin panel is available via the HTTPS. Using our previous example for ECS deployed on 10.0.0.4. Access should be enabled for https://IP-Address-of-ECS-Node. Default login and password: `root/ChangeMe` - - -## Troubleshooting -If you have any issues with the installation you can **[review this page](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting.md "Troubleshooting page")** for troubleshooting tips and/or go to the support section bellow. - - -## Support - -Please file bugs and issues at the GitHub issues page. For more general discussions you can contact the EMC Code team at Google Groups or tagged with **EMC** on Stack Overflow. The code and documentation are released with no warranties or SLAs and are intended to be supported through a community driven process. diff --git a/legacy/Documentation/ECS-SingleNode-Instructions.md b/legacy/Documentation/ECS-SingleNode-Instructions.md deleted file mode 100644 index 35678cf5..00000000 --- a/legacy/Documentation/ECS-SingleNode-Instructions.md +++ /dev/null @@ -1,177 +0,0 @@ -# ECS Software - Single-Node Docker Configuration Instructions - -**Table of Contents** -- [Introduction](#introduction) -- [Global Requirements](#global-requirements) -- [Installation Steps](#installation-steps) -- [CentOS Installation](#centos-installation) -- [Pre-Installation Steps](#pre-installation-steps) -- [Host Configuration](#host-configuration) -- [Host and Container Configuration](#host-and-container-configuration) -- [ECS Object Configuration](#ecs-object-configuration) -- [ECS Web Environment access and object testing](#ecs-web-environment-access-and-object-testing) -- [Troubleshooting](#troubleshooting) -- [Support](#support) - - - -## Introduction - -EMC's Elastic Cloud Storage (ECS) Software Docker **single node** deployment is intended to be used by developers and has a range of deployment options for them. The most universal method for deploying ECS software is through Docker applied across whatever means are at your disposal (IaaS/PaaS/Hypervisor). In addition to this, you can leverage Vagrant for local VirtualBox instances. - -In terms of cloud deployments, there are a range of options. The most compatible methods of deployment across any provider EW the CentOS and CoreOS options to run the Docker instances. - - -## Global Requirements - -All instances currently require to have the following minimum requirements: - -- **Operating systems:** CentOS 7 -- **CPU/Cores:** 4 Cores -- **Memory:** Minimum of 16 GB RAM -- **Disks:** An unpartitioned/raw disk with at least 100 GB. - -Installation also requires internet connectivity to recieve the requisite utility packages and Docker images. - -### Supported Host Operative Systems and Docker Version - -We have performed testing against the following platform(s): - -OS Name | Version | Docker Version | -|-------|---------|----------------| -|CentOS | 7.1 | 1.8.2 (latest) | - - -## Installation Steps - -The installation script is comprised of three main steps: - -|Step| Name | Description |Execution Time | -|------|------|-----------|---------------| -|1| Host & ECS Container Configuration | This step controls the flow and contains the configuration changes required for the Host OS that will run the ECS Software Docker container. In addition, this step updates the ECS Docker container so it can run as a single node and with limited resources|3-15 min| -|2|ECS Object Configuration | This step performs the ECS configuration so it can start serving objects.|10-30 min| - - -## CentOS Installation - -[CentOS](http://www.centos.org/) is a well-known Linux distribution with the ability to deploy containers with Docker. Common public cloud platforms have CentOS templates ready to be used, so getting ECS Software on a Docker container up is extremely easy. - - -### Pre Installation Steps - -These steps are to be performed prior running the installation scripts on each of the ECS nodes: - -1. **Attach Data Disk(s):** ECS requires one or more disks to be attached to the host. The disk(s) will hold the object data store. **The Disks will be formatted as XFS by the installation script.** - -The data disk(s) attached to each host must be **unpartitioned or RAW**. For example: We have a new host where we execute the command `fdisk -l`: - -![Fdisk in a new Host ](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-disk-install-step1.PNG) - -In the picture, we can see two disks: **sda** and **sdb**. A `mount -l` looks like this: - -![Mount in a new Host](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-disk-install-step2.PNG) - -Now we attach a new disk to the host VM. The new disk **/dev/sdc** looks like this after executing `fdisk -l` again: - -![Fdisk in New Host with a new disk attached](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-disk-install-step3.PNG) - -**Note:** Depending on the environment or the cloud provider you maybe using, the attached disk name(s) will be different. In this example, the attached disk came as **/dev/sdc**. The attached disk will be formatted and mounted during step 1, so do not mount the ECS data disk before executing step 1: - -![Fdisk after the STEP 1 script has executed](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-disk-install-step4.PNG) - - -2. **Open Ports:** ECS requires the following ports to be open: - -|Port Number|Port Description| -|-----------|----------------| -|22| SSH, needed if using remote access | -|443 | Port used for accessing the ECS management website| -|3218| Port used by the CAS service| -|4443| ECS management API port | -|9020| Port used for the S3 API| -|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 | -|9025| Port used for SWIFT API on HTTPS| -|9100| Port used for DT Query service| -|9101| ECS Diagnostic Service Index | - -**Note:** There are the most commonly-used ports by ECS; please refer to [List of Ports to be Open](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting.md#list-of-open-ports-required-on-each-ecs-data-node) of the troubleshooting page. 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. - - -### Host and Container Configuration -#### :bangbang: WARNING: This is a destructive operation. Existing data on selected storage devices will be overwritten. Existing Docker installations AND images will be removed. - -1. **Perform Updates:** Perform a Yum update using `sudo yum update` and download packages required for installation using `sudo yum install git tar wget` - -2. **Git Clone/Pull** the repository: [https://github.com/EMCECS/ECS-CommunityEdition ](https://github.com/EMCECS/ECS-CommunityEdition "https://github.com/EMCECS/ECS-CommunityEdition") - -3. **Navigate** to the **/ecs-single-node** folder. - -4. **Gather** the IP Address, desired hostname, ethernet adapter name (which can be obtained by executing `ifconfig` on the host) and designated data disk(s). For example: - -|Hostname | IP Address | Disk Name|Ethernet Adapter| -|---------|------------|----------|----------------| -|ecstestnode1 | 10.0.1.10 |sdc |eth0| - -5. **Run the step 1 script for single-node ECS.** For our example values the command would be the one below, but your environment's specifics will differ. Be advised that **the hostname can not be localhost**. The execution of this script will take about 3-15 minutes depending on how many packages need to be installed or updated and the speed of certain services on the host: -`# sudo python step1_ecs_singlenode_install.py --disks sdc --ethadapter eth0 --hostname ecssinglenode` -For a list of all arguments with their full descriptions and including more detailed options, use the `--help` flag, e.g. `python step1_ecs_singlenode_install.py --help` - -6. At the conclusion of step 1, **you may have to wait a few minutes** until the administrative web UI becomes available. ECS' administrative portal can be accessed from the data node on port 443 ( https:// ). Once you see the screen bellow, you are ready to execute step 2. - -![ECS UI](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/ecs-waiting-for-webserver.PNG) - - -### ECS Object Configuration - -The next step is the ECS Object configuration. This can be accomplished in two ways: - -- **ECS' Administration UI:** [Please follow these Instructions.](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-UI-Web-Interface.md "ECS UI Object Configuration via Administration website") -- **Automated script:** Follow the instructions in the section below. - -Both methods provide the same results; the first walks you through ECS's administrative web interface and the second uses ECS's Management API (exposed on port 4443 and 9011) - - -**ECS Object Configuration via an automated script** - - -1. **Navigate** to the **/ecs-single-node** folder -2. **Verify** that the `step2_object_provisioning.py` script for the environment that you are in can access the 4443 and 9011 ports of the host machine, such as through the output of `nmap -sT -O localhost` -. Before executing the `step2_object_provisioning.py`, decide upon values for the following variables: - -|Variable Name|Variable Description | Example Value| -|-------------|---------------------|--------------| -|ECSNodes | IP Address of the ECS Node. **For Single-Node deployment, only one IP is necessary**. | 10.0.1.10 | -|NameSpace | The objects' Namespace | ns1 | -|ObjectVArray | The objects' Virtual Array | ova1 | -|ObjectVPool | The objects' Virtual Pool | ov1 | -|UserName | The name of the initial Object User | user1 | -|DataStoreName | The name of the Data Store.| ds1 | -|VDCName | The name of the Virtual Data Center.| vdc1 | -|MethodName | The name of step to be executed. Leave blank to complete all provisioning steps.| *[empty]* | - -Once the variables are defined, they should be placed in the script command. Using the example values, the command becomes: - -sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName= - -For more granular way of executing the Object Configuration, you can follow the instructions on **[this document](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-UI-Automation.md "ECS UI Automation Detailed")** showing how to run the process step by step. - -**The execution of this script may take 10 to 30 minutes to complete.** - - -### ECS Web Environment Access and Object Testing - -After the successful execution of the ECS Object Configuration, the system is ready to begin serving objects. Object users can read and write using free tools like **[S3 browser](http://s3browser.com/ "S3 browser")** - -In addition, access to the ECS's administrative panel is available via the `https://`. The default login and password for the portal is `root/ChangeMe` (which you will be prompted to change when first accessing the portal) - - -## Troubleshooting -If you have any issues with the installation, you can **[review this page](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting.md#ecs-software-20---troubleshooting-tips "Troubleshooting page")** for troubleshooting tips and/or go to the support section bellow. - - -## Support - -Please file bugs and issues at the GitHub issues page. For more general discussions you can contact the EMC Code team at Google Groups or tagged with **EMC** on Stack Overflow. The code and documentation are released with no warranties or SLAs and are intended to be supported through a community-driven process. diff --git a/legacy/Documentation/ECS-SingleNode-Vagrant-Instructions.md b/legacy/Documentation/ECS-SingleNode-Vagrant-Instructions.md deleted file mode 100644 index 35749bc0..00000000 --- a/legacy/Documentation/ECS-SingleNode-Vagrant-Instructions.md +++ /dev/null @@ -1,119 +0,0 @@ -# ECS SW 2.x Single Node Vagrant Deployment - -**Table of Contents** - -- [Introduction](#introduction) -- [Requirements](#requirements) -- [Using Vagrant](#using-vagrant) -- [Troubleshooting](#troubleshooting) -- [Support](#support) - -## Introduction - -EMC's Elastic Cloud Storage (ECS) 2.x Software Docker **single node** deployment is intended to be used by developers and has a range of deployment options for them. The most universal methods for deploying ECS software is through Docker applied across whichever means at your disposal (IaaS/PaaS/Hypervisor). In addition to this, you can leverage Vagrant for local VirtualBox instances. - - -## Requirements - -Remote machine: -- **Operating system:** CentOS 7 -- **CPU/Cores:** 4 Cores -- **Memory:** Minimum of 50 GB RAM (64 GB recommended) -- **Disks:** An unpartitioned/Raw disk with at least 100 GB. -- `rsync` package - -Local machine: -- [Vagrant](http://www.vagrantup.com/) -- [Vagrant ManagedServers plugin](https://github.com/tknerr/vagrant-managed-servers) -- `rsync` package - - -## CentOS Installation - -[CentOS](http://www.centos.org/) is a well known Linux distribution that has the ability to deploy containers with Docker. Common public cloud platforms have CentOS templates ready to be used, so getting ECS 2.x Software on a Docker container up is extremely easy! - -These are the installation steps to perform a CentOS installation: - -### Pre-installation steps - -1. **Attach Disk to Host:** ECS requires a disk to be attached to the host. This disk will hold the data (objects). For testing purposes you can attach a disk above 128 GB. -2. **Open Ports in Host:** ECS requires the following ports open: - - |Port Number|Port Description| - |-----------|----------------| - |22| SSH, needed if using remote access | - |443 | Port used for accessing the ECS Web Application| - |4443| Port used for accessing the ECS API. This port can be closed from external access after the installation| - |9011| Port used for accessing the ECS API. This port can be closed from external access after the installation| - |9020| Port used for the S3 API| - |9024| Port used for SWIFT API | - - **Note:** There are more ports required to be open if you have a firewall running on the host. Please refer to [List of Ports to be Open](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting.md#list-of-open-ports-required-on-each-ecs-data-node) of the troubleshooting page. - - 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. - - -### Remote host configuration - -Login to the remote machine and perform a Yum update `sudo yum update` and download the required packages `sudo yum install rsync` - -Edit the sudoers file to avoid the system from asking for the password when running sudo. - - sudo vi /etc/sudoers - -Look for the line that contains `Defaults requiretty` and comment it. - - #Defaults requiretty - -Now run - - sudo visudo - -And add the following lines at the end of the file. - - username ALL=(ALL) NOPASSWD: ALL - username ALL=(ALL:ALL) NOPASSWD: ALL - -Replace `username` by the user that is actually logging in via SSH. - - -## Using Vagrant - -We are going to use Vagrant to prepare a remote machine with SSH access. You will just need to configure the SSH credentials and Vagrant will take care of installing the ECS in the single node mode. - -First, you will need to configure the connection details for Vagrant to be able to connect to the remote machine. - -Open the vagrant file and edit the following lines: - - ml_config.vm.provider :managed do |managed, override| - managed.server = "your_host.com" - override.ssh.username = "your_username" - override.ssh.password = "your_password" - override.ssh.port = 22 - #override.ssh.private_key_path = "/path/to/bobs_private_key" - end - -If you want to use an SSH key just comment line about the password. - -Now, let's link it to the remote host by running the following command. - -`vagrant up` - -To check that we can connect to it, we can run - -`vagrant ssh` - -If everything goes right, you will access the remote host. You can now exit from there and run - -`vagrant provision` - -It will prepare the remote host and install ECS in single node mode. You will be able to see the output while Vagrant is configuring the host. When it finishes, the system is ready to start serving objects. In addition, access to the ECS's admin panel is available via the HTTPS. Using our previous example for ECS deployed on 10.0.0.4. Access should be enabled for https://IP_OR_HOST. Default login and password: `root` / `ChangeMe` - -## Troubleshooting -If you have any issues with the installation you can **[review this page](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting%20.md "Troubleshooting page")** for troubleshooting tips and/or go to the support section bellow. - - -## Support - -Please file bugs and issues at the GitHub issues page. For more general discussions you can contact the EMC Code team at Google Groups or tagged with **EMC** on Stack Overflow. The code and documentation are released with no warranties or SLAs and are intended to be supported through a community driven process. - diff --git a/legacy/Documentation/ECS-Troubleshooting.md b/legacy/Documentation/ECS-Troubleshooting.md deleted file mode 100644 index cc74f8eb..00000000 --- a/legacy/Documentation/ECS-Troubleshooting.md +++ /dev/null @@ -1,136 +0,0 @@ -# ECS Software 2.x - Troubleshooting Tips - - -## Troubleshooting Tips -This is a list of troubleshooting tips and nuggets that will help with issues. If you still have problems, please use the support section. - - -### Provisioning of ECS - -It takes roughly 30 minutes to get the system provisioned for Step 2 (step2_object_provisioning.py). ECS creates Storage Pools, Replication Groups with the attached disks. If Step 2 is successful, you should see something along these lines. - -#### Adding a Secret Key for a user - -Set the user and the key that needs to be used and execute the command. For example: - -User: emccode -SecretKey: UORQB9Xxx8OKmjplSgKHRIPeeWcR2bbiagC5/xT+Add secret - -Executing REST API command: - -`curl -s -k -X GET -H 'Content-Type:application/json' -H 'X-SDS-AUTH-TOKEN: BAAca1B6WUJ2Q2hFeUZWSkczNXFIT0I0LzA1SHg4PQMAQQIADTE0MzQ4Njk5Mjc0NzIDAC51cm46VG9rZW46ZWVlNGEwMDEtYzkyOC00ZTIyLTlkMzQtYmE0NWU2N2E4MmM4AgAC0A8=' -H 'ACCEPT:application/json' https://23.99.93.171:9011/object/user-secret-keys/emccode -{"secret_key_1":"UORQB9Xxx8OKmjplSgKHRIPeeWcR2bbiagC5/xT+","key_timestamp_1":"2015-06-21 07:31:48.515","key_expiry_timestamp_1":"","secret_key_2":"","key_timestamp_2":"","key_expiry_timestamp_2":"","link":{"rel":"self","href":"/object/secret-keys"}}` - - -### Checking Step 2 Object provisioning progress - -If you want to see if system is making progress: - -1. Log into one of ECS data nodes. -2. Navigate to the **/var/log/vipr/emcvipr-object/** directory -3. View the **/var/log/vipr/emc-viprobject/ssm.log** (tail -f /var/log/vipr/emcvipr-object/ssm.log -) - - -**Note:** there are ~2k tables to be initialized for the provisioning to complete. You can check the following command to see if the tables are close to that number and if all tables are ready. Run this from the node. - -`curl -X GET "http://:9101/stats/dt/DTInitStat”` - - -### Docker Container immediately exits on startup - -If your docker instance immediately exits when started, please ensure that the entries in `/etc/hosts` on the host system and `network.json` in the install directory are correct (the latter should reflect the host's public IP and the corresponding network adapter). - - -### For those operating behind EMC firewall - -To install ECS Community Edition under these conditions, please view the readme file under **/emc-ssl-cert** for further instructions in installing the necessary CA certificate. - - -### Restoring ECS after host shutdown/restart - -In the case that the ECS Community Edition container does not automatically start on boot, you can bring it up manually by ensuring that docker is running (`service docker start`) and issuing a start command for the container (`docker start `, where the container-ID is `ecsstandalone` or `ecsmultinode`, viewable via the command `sudo docker ps -a`). - -Ensure that the Docker container restores itself on boot by executing the following: -`systemctl enable docker.service` -`echo "docker start " >>/etc/rc.local` - -### ECS web portal will not start - -The portal service will listen on ports 443 and 4443; check to make sure no other services (such as virtual hosts or additional instances of ECSCE) are not attempting to utilize these same ports. - -For multiple-node installations, the `/etc/hosts` file on the host VM should include entries for each node and their hostname. Additionally, many services including the ECS web portal will not start until all nodes specified to the installation step 1 script have been successfully installed and concurrently running; the installation script should be run on all nodes in a cluster before attempting authentication or use of the GUI. - -If attempting to authenticate results in a response of "Connection Refused", review the below section and ensure all necessary ports are open on all ECS nodes in the cluster. - - -### List of open ports required on each ECS data node - -Ensure the ports in the following table are open for communication. In the case of a multiple-node installation, additionally ensure that each node is trusted to itself and to other nodes in the system by using the following command on each node: - -`firewall-cmd --permanent --zone=trusted --add-source=/32` - -followed by `firewall-cmd --reload` for each host. - -`fwd_settings.sh` in the main directory will invoke the `firewalld` service and permanently open necessary ports. In the case of a failure in this setup referencing `iptables`, please ensure that your docker network bridge is running and installed using `yum install bridge-utils`. - -In the case of a multiple node configuration, you may - -|Port Name-Usage=Port Number| -|---------------------------| -|port.ssh=22| -|port.ecsportal=80| -|port.rcpbind=111| -|port.activedir=389| -|port.ecsportalsvc=443| -|port.activedirssl=636| -|port.ssm=1095| -|port.rm=1096| -|port.blob=1098| -|port.provision=1198| -|port.objhead=1298| -|port.nfs=2049| -|port.zookeeper=2181| -|port.coordinator=2889| -|port.cassvc=3218| -|port.ecsmgmtapi=4443| -|port.rmmvdcr=5120| -|port.rmm=5123| -|port.coordinator=7399| -|port.coordinatorsvc=7400| -|port.rmmcmd=7578| -|port.objcontrolUnsecure=9010| -|port.objcontrolSecure=9011| -|port.s3MinUnsecure=9020| -|port.s3MinSecure=9021| -|port.atmosMinUnsecure=9022| -|port.atmosMinSecure=9023| -|port.swiftMinUnsecure=9024| -|port.swiftMinSecure=9025| -|port.apiServerMinUnsecure=9028| -|port.apiServerMinSecure=9029| -|port.hdfssvc=9040| -|port.netserver=9069| -|port.cm=9091| -|port.geoCmdMinUnsecure=9094| -|port.geoCmdMinSecure=9095| -|port.geoDataMinUnsecure=9096| -|port.geoDataMinSecure=9097| -|port.geo=9098| -|port.ss=9099| -|port.dtquery=9100| -|port.dtqueryrecv=9101| -|port.georeplayer=9111| -|port.stat=9201| -|port.statWebServer=9202| -|port.vnest=9203| -|port.vnesthb=9204| -|port.vnestMinUnsecure=9205| -|port.vnestMinSecure=9206| -|port.hdfs=9208| -|port.event=9209| -|port.objcontrolsvc=9212| -|port.zkutils=9230| -|port.cas=9250| -|port.resource=9888| -|port.tcpIpcServer=9898| diff --git a/legacy/Documentation/ECS-UI-Automation.md b/legacy/Documentation/ECS-UI-Automation.md deleted file mode 100644 index e38edf2e..00000000 --- a/legacy/Documentation/ECS-UI-Automation.md +++ /dev/null @@ -1,70 +0,0 @@ -## ECS UI - Script Driven Object Provisioning -: ## - - -**step2_object_provisioning.py** --ECSNodes=`Coma seperated list of datanodes` --Namespace=`namespace` --ObjectVArray=`Object vArray Name` --ObjectVPool=`Object VPool name` --UserName=`user name to be created` --DataStoreName=`Name of the datastore to be created` --VDCName=`Name of the VDC` --MethodName=`Operation to be performed` - - -Run the script with below values 1 step at a time for –MethodName parameter . The parameters are mentioned below in the sequence in which they should be invoked. -- UploadLicense -- CreateObjectVarray -- CreateDataStore -- InsertVDC -- CreateObjectVpool -- CreateNamespace -- **CreateUser** - CreateUser method will return an exception that user already exists. Ignore the exception and proceed to create secret key for the user. Looks like the user is being created in spite of the exception. -- CreateSecretKey - -**Note:** If -MethodName option is not provided all the Object Provisioning steps will be run in the same sequence as above automatically. - -**Note:** The script may throw error when run using the old version of Python 2.6.8. Python 2.7.8 works fine for the script - - -## Executing the Script using individual steps - -Using the example Hosts and information provided on the documentation: - -|Hostname | IP Address | Disk Name| -|---------|------------|----------| -|ecstestnode1 | 10.0.1.10 |sdc sdd | -|ecstestnode2 | 10.0.1.11 |sdc sdd | -|ecstestnode3 | 10.0.1.12 |sdc sdd | -|ecstestnode4 | 10.0.1.13 |sdc sdd | - - -These are example values for the parameters: - -|Variable Name|Variable Description | Example Value| -|-------------|---------------------|--------------| -|ECSNodes | IP Addresses of the ECS Nodes (coma delimited list). | 10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 | -|NameSpace | The objects' Namespace | ns1 | - |ObjectVArray | The objects' Virtual Array | ova1 | -|ObjectVPool | The objects' Virtual Pool | ov1 | -|DataStoreName | The name of the Data Store.| ds1 | -|VDCName | The name of the Virtual Data Center.| vdc1 | -|MethodName | The name of step to be executed. Leave blank for automated and add a value for a manual installation| [empty] | - - -### Step 1: Upload the License File -sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName=UploadLicense - -### Step 2: Create Object Virtual Array -sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName=CreateObjectVarray - -### Step 3: Create the Data Store -sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName=CreateDataStore - -### Step 4: Insert VDC -sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName=InsertVDC - -### Step 5: Create Object Virtual Pool -sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName=CreateObjectVpool - -### Step 6: Create the Namespace -sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName=CreateNamespace - -### Step 7: Create a User -sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName=CreateUser - -### Step 8: Create the SecretKey -sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName=CreateSecretKey - diff --git a/legacy/Documentation/ECS-UI-Web-Interface.md b/legacy/Documentation/ECS-UI-Web-Interface.md deleted file mode 100644 index 30d74095..00000000 --- a/legacy/Documentation/ECS-UI-Web-Interface.md +++ /dev/null @@ -1,53 +0,0 @@ -# ECS Administrative Web UI - -## Login to the Web UI -The WebUI uses SSL and a self-signed certificate to help protect your session from casual eves-dropping. Take the IP of your first ECS node, fire up your browser, and point `https://` at it. For this example, the latest Google Chrome browser was used. - -You cannot add, change, or remove administrative users in this build. Use the default below. - -> Username: **root**
Password: **ChangeMe** - -## Input License -Open *Settings*, then *Licensing* and upload the `license.xml` file located in the ecs-single-node / ecs-multi-node folder. **The UI will not automatically update the license view in this release.** Navigating away from page and returning will prompt it to update. You may need to try a few times before it updates. Once it does, you should see something like this: - -![Upload License file](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/input_license.PNG) - -## Create Storage vPool -Open *Manage*, then *Storage Pools* and create a storage pool. Keep the name simple, and add all nodes to the pool. Click *Save*. - -There's a known issue in this build that causes the Storage Pools view to appear frozen for about 1-2 minutes after provisioning begins. **Unlike with the license view case, this view will update on its own.** Once it's updated, you should see something similar to: - -![Create Storage VPool](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/create_storage_vpool.PNG) - -## Create Virtual Data Center -Open *Manage*, then *Virtual Data Center* and create a Virtual Data Center using the below screenshot as a guide. **Please wait for up to 20 minutes after creating a Storage vPool before creating a Virtual Data Center.** There are several background tasks that must complete, and for object to fully initialize. - -![Create Virtual Data Center](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/create_virtual_data_center.PNG) - -## Create Replication Group -Open *Manage*, then *Replication Group* and create a Replication Group using the below as an example. Currently only one VDC in a replication group is supported. - -![Create Replication Group](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/Create_replication_group.PNG) - -## Create Namespace -Open *Manage*, then *Namespace*. Set up a Simple Namespace with a name such as "ns". Input a namespace username to use with the namespace, such as "ecs_user". Select the replication group for the namespace, and click *Save* at the very bottom. - -###### Namespace features available in this release -- :white_check_mark: Simple Namespace -- :x: ~~Retention Policies~~ -- :x: ~~Quotas~~ -- :x: ~~Authentication Domains~~ - -![Create Namespace](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/create_namespace.PNG) - -## Create Object User Account -Open *Manage*, then *Users*, then click on *Object Users* and *New Object User* to set up object store credentials. - -![Create Namespace](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/create_object_user.png) - -Create secrets by filling the fields and clicking the buttons. - -- **S3 Key**: Click *Generate & Add Password* to retrieve the server-generated key. -- **Swift Password**: Enter your own password and click *Set Password*. - -![Create User S3 and Swift Keys](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/media/create_object_user_keys.png) diff --git a/legacy/Documentation/google-compute.md b/legacy/Documentation/google-compute.md deleted file mode 100644 index 783fca26..00000000 --- a/legacy/Documentation/google-compute.md +++ /dev/null @@ -1,61 +0,0 @@ -# Google Compute -We've provided the necesarry templates to install ECS Community Edition via Google Compute Engine Tools. This guide walks the user through this kind of installation. - -## Prerequisite -Google Compute Engine Tools, you can download and install it from the following link: -- **[gcloud Tools Install](https://cloud.google.com/sdk/gcloud/ "gcloud Tool Guide")** - -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; - -1. Open required firewall ports for ECS -2. Create a new data disk of 256 GB size. -2. Create a new VM Instance of type n1-highmem-8 (8core 50GB) -3. Attach Disk -4. Assign Network -5. Run a startup script for installing and provisioning ECS. - -We have included Google Compute Engine Template files that are located in this git repository. -## Single Node Template -Use the template found in ECS-CommunityEdition/ecs-single-node/gce/ to deploy single node ECS. Please make sure to reference the right template from ECS-CommunityEdition/ecs-single-node/gce/ecs_singlenode.yaml. -## Multi-Node Template -Use the template found in ECS-CommunityEdition/ecs-multi-node/gce/ to deploy multi-node ECS. Please make sure to reference the right template from ECS-CommunityEdition/ecs-multi-node/gce/ecs_singlenode.yaml. - -## Deploy ECS with GCE Deployment Manager - -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. - -## Provisioning -The automated provisioning may get stuck, login into the portal and start the manual provisioning. The license is already uploaded so you will need to just provision the following in order: - -1. Create Storage Pool -2. Create Virtual Data Center -3. Create Replication Group -4. Create Namespace -4. Create User and retrieve S3 Secret Key -5. Create Bucket - -[For details follow these steps in the ECS Portal.](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-UI-Web-Interface.md "ECS Manual Provisioning using ECS Web UI") - - -## Monitor Node Status -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 - - ## Access the ECS Web UI - - 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: - -![ECS UI](../../docs/source/media/ecs-waiting-for-webserver.PNG) - - -## Cleanup -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 diff --git a/legacy/Documentation/google-compute.rst b/legacy/Documentation/google-compute.rst deleted file mode 100644 index 77b9877e..00000000 --- a/legacy/Documentation/google-compute.rst +++ /dev/null @@ -1,98 +0,0 @@ -Google Compute -============== - -We've provided the necesarry templates to install ECS Community Edition -via Google Compute Engine Tools. This guide walks the user through this -kind of installation. - -Prerequisite ------------- - -Google Compute Engine Tools, you can download and install it from the -following link: - **`gcloud Tools -Install `__** - -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; - -1. Open required firewall ports for ECS -2. Create a new data disk of 256 GB size. -3. Create a new VM Instance of type n1-highmem-8 (8core 50GB) -4. Attach Disk -5. Assign Network -6. Run a startup script for installing and provisioning ECS. - -We have included Google Compute Engine Template files that are located -in this git repository. ## Single Node Template Use the template found -in ECS-CommunityEdition/ecs-single-node/gce/ to deploy single node ECS. -Please make sure to reference the right template from -ECS-CommunityEdition/ecs-single-node/gce/ecs\_singlenode.yaml. ## -Multi-Node Template Use the template found in -ECS-CommunityEdition/ecs-multi-node/gce/ to deploy multi-node ECS. -Please make sure to reference the right template from -ECS-CommunityEdition/ecs-multi-node/gce/ecs\_singlenode.yaml. - -Deploy ECS with GCE Deployment Manager --------------------------------------- - -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. - -Provisioning ------------- - -The automated provisioning may get stuck, login into the portal and -start the manual provisioning. The license is already uploaded so you -will need to just provision the following in order: - -1. Create Storage Pool -2. Create Virtual Data Center -3. Create Replication Group -4. Create Namespace -5. Create User and retrieve S3 Secret Key -6. Create Bucket - -`For details follow these steps in the ECS -Portal. `__ - -Monitor Node Status -------------------- - -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 - - ## Access the ECS Web UI - -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: - -.. figure:: ../media/ecs-waiting-for-webserver.PNG - :alt: ECS UI - - ECS UI - -Cleanup -------- - -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 diff --git a/legacy/Documentation/install.md b/legacy/Documentation/install.md deleted file mode 100644 index b9eb844f..00000000 --- a/legacy/Documentation/install.md +++ /dev/null @@ -1,213 +0,0 @@ -# ECS Installation - Step 1 - -### Introduction -EMC's Elastic Cloud Storage (ECS) Software is intended to be used by developers and has a range of deployment options for them. The most universal method for deploying ECS software is through Docker applied across whatever means are at your disposal (IaaS/PaaS/Hypervisor). In addition to this, Vagrant and Puppet may be leveraged for installation. ECS can be deployed as a single node or as multinode, which requires a minimum of 4 nodes. This document provides installation instructions for each of those options. - -## Single Node -These options install ECS as a single node using either Docker or Vagrant - -### Docker -#### Host and Container Configuration -**WARNING: This is a destructive operation. Existing data on selected storage devices will be overwritten. Existing Docker installations AND images will be removed.** - -1. **Perform Updates:** Perform a Yum update using `sudo yum update` and download packages required for installation using `sudo yum install git tar wget` - -2. **Git Clone/Pull** the repository: [https://github.com/EMCECS/ECS-CommunityEdition ](https://github.com/EMCECS/ECS-CommunityEdition "https://github.com/EMCECS/ECS-CommunityEdition") - -3. **Navigate** to the **/ecs-single-node** folder. - -4. **Gather** the IP Address, desired hostname, ethernet adapter name (which can be obtained by executing `ifconfig` on the host) and designated data disk(s). For example: - - -| Hostname | IP Address | Disk Name|Ethernet Adapter| -| ------------ | ---------- | -------- |--------------- | -| ecstestnode1 | 10.0.1.10 | sdc | eth0 | - - -5. **Run the step 1 script for single-node ECS.** For our example values the command would be the one below, but your environment's specifics will differ. Be advised that **the hostname can not be localhost**. The execution of this script will take about 3-15 minutes depending on how many packages need to be installed or updated and the speed of certain services on the host: -`# sudo python step1_ecs_singlenode_install.py --disks sdc --ethadapter eth0 --hostname ecssinglenode` -For a list of all arguments with their full descriptions and including more detailed options, use the `--help` flag, e.g. `python step1_ecs_singlenode_install.py --help` - -### Vagrant -#### Additional requirements -Remote machine: -- `rsync` package - -Local machine: -- [Vagrant](http://www.vagrantup.com/) -- [Vagrant ManagedServers plugin](https://github.com/tknerr/vagrant-managed-servers) -- `rsync` package - -#### Remote host configuration - -Login to the remote machine and perform a Yum update `sudo yum update` and download the required packages `sudo yum install rsync` - -Edit the sudoers file to avoid the system from asking for the password when running sudo. - - sudo vi /etc/sudoers - -Look for the line that contains `Defaults requiretty` and comment it. - - #Defaults requiretty - -Now run - - sudo visudo - -And add the following lines at the end of the file. - - username ALL=(ALL) NOPASSWD: ALL - username ALL=(ALL:ALL) NOPASSWD: ALL - -Replace `username` by the user that is actually logging in via SSH. - - -#### Using Vagrant - -We are going to use Vagrant to prepare a remote machine with SSH access. You will just need to configure the SSH credentials and Vagrant will take care of installing the ECS in the single node mode. - -First, you will need to configure the connection details for Vagrant to be able to connect to the remote machine. - -Open the vagrant file and edit the following lines: - - ml_config.vm.provider :managed do |managed, override| - managed.server = "your_host.com" - override.ssh.username = "your_username" - override.ssh.password = "your_password" - override.ssh.port = 22 - #override.ssh.private_key_path = "/path/to/bobs_private_key" - end - -If you want to use an SSH key just comment line about the password. - -Now, let's link it to the remote host by running the following command. - -`vagrant up` - -To check that we can connect to it, we can run - -`vagrant ssh` - -If everything goes right, you will access the remote host. You can now exit from there and run - -`vagrant provision` - -It will prepare the remote host and install ECS in single node mode. You will be able to see the output while Vagrant is configuring the host. When it finishes, the system is ready to start serving objects. In addition, access to the ECS's admin panel is available via the HTTPS. Using our previous example for ECS deployed on 10.0.0.4. Access should be enabled for https://IP_OR_HOST. Default login and password: `root` / `ChangeMe` - -## Multi-Node - -### Docker -#### Host Configuration -**WARNING: This is a destructive operation. Existing data on selected storage devices will be overwritten. Existing Docker installations AND images will be removed.** - -**The following section needs to be performed on each one of the ECS nodes:** - -1. **Perform Updates:** Perform a Yum update using `sudo yum update` and download packages required for installation using `sudo yum install git tar wget` - -2. **Git Clone/Pull** the repository: [https://github.com/EMCECS/ECS-CommunityEdition ](https://github.com/EMCECS/ECS-CommunityEdition "https://github.com/EMCECS/ECS-CommunityEdition") - -3. **Navigate** to the **/ecs-multi-node** folder. - -4. **Gather** the IP addresses, desired hostnames, ethernet adapter name (which can be obtained by executing `ifconfig` on the host), and designated data disk(s). For example: - - -|Hostname | IP Address | Disk Name| Ethernet Adapter | -|---------|------------|----------|------------------| -|ecstestnode1 | 10.0.1.10 |sdc sdd | eth0 | -|ecstestnode2 | 10.0.1.11 |sdc sdd | eth0 | -|ecstestnode3 | 10.0.1.12 |sdc sdd | eth0 | -|ecstestnode4 | 10.0.1.13 |sdc sdd | eth0 | - -5. Use gathered values for each ECS node (IP addresses, hostnames, ethernet adapter name, disk names) to build the `step1_ecs_multinode_install.py` script, which will be the same across all nodes. Be advised that **the hostname can not be localhost for any node**. For our example values, the command should look like this: - -`sudo python step1_ecs_multinode_install.py --ips 10.0.1.10 10.0.1.11 10.0.1.12 10.0.1.13 --hostnames ecstestnode1 ecstestnode2 ecstestnode3 ecstestnode4 --disks sdc sdd --ethadapter eth0` - -**The execution of this script is will take about 3-15 minutes** depending on how many packages need to be installed or updated and the speed of certain services on the host. -For a list of all arguments with their full descriptions and including more detailed options, use the `--help` flag, e.g. `python step1_ecs_singlenode_install.py --help` - -### Puppet -#### Puppet ECS Module - -The installation Module is composed by two main manifest files: - -|Step| Name | Description | -|------|------|-----------| -|1| ini.pp | Initial class| -|2| Configurate.pp | Install and configure the node to run ECS Software| - -#### Pre Installation Requirement - -These steps are to be performed prior install The module on the Puppet master server: - -1. **Puppet Master:** The master server is installed and configured. - -2. **Puppet Nodes:** Puppet node is installed and configured with the correct ports. ECS requires the following ports open: - - |Port Number|Port Description| - |-----------|----------------| - |22| SSH, needed if using remote access | - |443 | Port used for accessing the ECS Web Application| - |4443| Port used for accessing the ECS API. This port can be closed from external access after the installation| - |9011| Port used for accessing the ECS API. This port can be closed from external access after the installation| - |9020| Port used for the S3 API| - |9024| Port used for SWIFT API | - |61613| Puppet MCollective | - |8140| Puppet | - - **Note:** There are more ports required to be open if you have a firewall running on the hosts. Please refer to **[List of Ports to be Open](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting.md#list-of-open-ports-required-on-each-ecs-data-node)** of the troubleshooting page. - - 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. - -3. The following [Puppet Get Start Guide](http://info.puppetlabs.com/pe-azure-gsg.html) is good reference to use. - -### Install ECS Module - -**Puppet Master Server:** - -1. From the command line on the Puppet master, navigate to the modules directory `cd /etc/puppetlabs/puppet/environments/production/modules`. -2. Run `mkdir -p ecs3datanodes/manifests` to create the new module directory and its manifests directory. -3. Run `cd ecs3datanodes/manifests` -3. Using wget download ecs manifest ini.pp `wget -q https://github.com/EMCECS/ECS-CommunityEdition/blob/master/ecs-multi-node/pupppet/ecs3datanodes/manifest/ini.pp -O ini.pp` -4. Then download ecs manifest configure.pp `wget -q https://github.com/EMCECS/ECS-CommunityEdition/blob/master/ecs-multi-node/pupppet/ecs3datanodes/manifest/configure.pp -O configure.pp` -5. Add custom Fact to check if ECS breadcrumb file exists on the node machines. - - Run `cd /etc/puppetlabs/puppet/environments/production/modules/ecs3datanodes` - - Run `mkdir facts.d; cd facts.d` - - Then download ecs fact checkecsfile.sh `wget -q https://github.com/EMCECS/ECS-CommunityEdition/blob/master/ecs-multi-node/pupppet/ecs3datanodes/facts.d/checkecsfile.sh -O checkecsfile.sh` -5. Run `puppet agent -t` - - -**Puppet Enterprise Web:** - -1. From the console, click **Classification** in the top navigation bar. - -2. In the** Node group name** field, name your group **ECS-DataNodes**. -3. Click **Add group**. - -Note: Leave the Parent name and Environment values as their defaults **(default and production**, respectively). - -4. From the **Classification** page, select the **ECS-DataNodes** group, and click the Rules tab. -5. In the **Fact** field, enter “name” (without the quotes). -6. From the **Operator** drop-down list, select **matches regex**. -7. In the **Value** field, enter “.x” (without the quotes). -8. Click **Add rule**. - -**To add the ecs3datanodes classes to the ECS-DataNodes group:** - -1. From the **Classification** page, select the **ECS-DataNodes** group. -2. Click the **Classes** tab. -3. In the **Class name** field, begin typing `ecs3datanodes`, and select it from the autocomplete list. -4. Click **Add class**. -6. Click the Commit change button. - -7. From the CLI of your Puppet master, run `puppet agent -t`. - - -#### Node Configuration - -The following section needs to be performed on each one of the ECS Nodes: - -1. From command line run agent, run ` puppet agent -t`. - -2. After finishing check docker container run `docker ps` - -**The execution of this script is will take about 1-5 minutes** depending of how many packages need to be updated. This script executed should be executed on each ECS Node. diff --git a/legacy/Documentation/install.rst b/legacy/Documentation/install.rst deleted file mode 100644 index 0085b6de..00000000 --- a/legacy/Documentation/install.rst +++ /dev/null @@ -1,482 +0,0 @@ -ECS Installation - Step 1 -========================= - -EMC's Elastic Cloud Storage (ECS) Software is intended to be used by -developers and has a range of deployment options for them. The most -universal method for deploying ECS software is through Docker applied -across whatever means are at your disposal (IaaS/PaaS/Hypervisor). In -addition to this, Vagrant and Puppet may be leveraged for installation. -ECS can be deployed as a single node or as multinode, which requires a -minimum of 4 nodes. This document provides installation instructions for -each of those options. - -Single Node ------------ - -These options install ECS as a single node using either Docker or -Vagrant - -Docker -~~~~~~ - -Host and Container Configuration -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -**WARNING: This is a destructive operation. Existing data on selected -storage devices will be overwritten. Existing Docker installations AND -images will be removed.** - -1. **Perform Updates:** Perform a Yum update using ``sudo yum update`` - and download packages required for installation using - ``sudo yum install git tar wget`` - -2. **Git Clone/Pull** the repository: - https://github.com/EMCECS/ECS-CommunityEdition - -3. **Navigate** to the **/ecs-single-node** folder. - -4. **Gather** the IP Address, desired hostname, ethernet adapter name - (which can be obtained by executing ``ifconfig`` on the host) and - designated data disk(s). For example: - -.. raw:: html - - - -+----------------+--------------+-------------+--------------------+ -| Hostname | IP Address | Disk Name | Ethernet Adapter | -+================+==============+=============+====================+ -| ecstestnode1 | 10.0.1.10 | sdc | eth0 | -+----------------+--------------+-------------+--------------------+ - -.. raw:: html - - - -5. **Run the step 1 script for single-node ECS.** For our example values - the command would be the one below, but your environment's specifics - will differ. Be advised that **the hostname can not be localhost**. - The execution of this script will take about 3-15 minutes depending - on how many packages need to be installed or updated and the speed of - certain services on the host: - ``# sudo python step1_ecs_singlenode_install.py --disks sdc --ethadapter eth0 --hostname ecssinglenode`` - For a list of all arguments with their full descriptions and - including more detailed options, use the ``--help`` flag, e.g. - ``python step1_ecs_singlenode_install.py --help`` - -Vagrant -~~~~~~~ - -Additional requirements -^^^^^^^^^^^^^^^^^^^^^^^ - -Remote machine: - ``rsync`` package - -Local machine: - `Vagrant `__ - `Vagrant -ManagedServers -plugin `__ - -``rsync`` package - -Remote host configuration -^^^^^^^^^^^^^^^^^^^^^^^^^ - -Login to the remote machine and perform a Yum update ``sudo yum update`` -and download the required packages ``sudo yum install rsync`` - -Edit the sudoers file to avoid the system from asking for the password -when running sudo. - -:: - - sudo vi /etc/sudoers - -Look for the line that contains ``Defaults requiretty`` and comment -it. - -:: - - #Defaults requiretty - -Now run - -:: - - sudo visudo - -And add the following lines at the end of the file. - -:: - - username ALL=(ALL) NOPASSWD: ALL - username ALL=(ALL:ALL) NOPASSWD: ALL - -Replace ``username`` by the user that is actually logging in via SSH. - -Using Vagrant -^^^^^^^^^^^^^ - -We are going to use Vagrant to prepare a remote machine with SSH access. -You will just need to configure the SSH credentials and Vagrant will -take care of installing the ECS in the single node mode. - -First, you will need to configure the connection details for Vagrant to -be able to connect to the remote machine. - -Open the vagrant file and edit the following lines: - -:: - - ml_config.vm.provider :managed do |managed, override| - managed.server = "your_host.com" - override.ssh.username = "your_username" - override.ssh.password = "your_password" - override.ssh.port = 22 - #override.ssh.private_key_path = "/path/to/bobs_private_key" - end - -If you want to use an SSH key just comment line about the password. - -Now, let's link it to the remote host by running the following command. - -``vagrant up`` - -To check that we can connect to it, we can run - -``vagrant ssh`` - -If everything goes right, you will access the remote host. You can now -exit from there and run - -``vagrant provision`` - -It will prepare the remote host and install ECS in single node mode. You -will be able to see the output while Vagrant is configuring the host. -When it finishes, the system is ready to start serving objects. In -addition, access to the ECS's admin panel is available via the HTTPS. -Using our previous example for ECS deployed on 10.0.0.4. Access should -be enabled for https://IP\_OR\_HOST. Default login and password: -``root`` / ``ChangeMe`` - -Multi-Node ----------- - -Docker -~~~~~~ - -Host Configuration -^^^^^^^^^^^^^^^^^^ - -**WARNING: This is a destructive operation. Existing data on selected -storage devices will be overwritten. Existing Docker installations AND -images will be removed.** - -**The following section needs to be performed on each one of the ECS -nodes:** - -1. **Perform Updates:** Perform a Yum update using ``sudo yum update`` - and download packages required for installation using - ``sudo yum install git tar wget`` - -2. **Git Clone/Pull** the repository: - https://github.com/EMCECS/ECS-CommunityEdition - -3. **Navigate** to the **/ecs-multi-node** folder. - -4. **Gather** the IP addresses, desired hostnames, ethernet adapter name - (which can be obtained by executing ``ifconfig`` on the host), and - designated data disk(s). For example: - -+----------------+--------------+-------------+--------------------+ -| Hostname | IP Address | Disk Name | Ethernet Adapter | -+================+==============+=============+====================+ -| ecstestnode1 | 10.0.1.10 | sdc sdd | eth0 | -+----------------+--------------+-------------+--------------------+ -| ecstestnode2 | 10.0.1.11 | sdc sdd | eth0 | -+----------------+--------------+-------------+--------------------+ -| ecstestnode3 | 10.0.1.12 | sdc sdd | eth0 | -+----------------+--------------+-------------+--------------------+ -| ecstestnode4 | 10.0.1.13 | sdc sdd | eth0 | -+----------------+--------------+-------------+--------------------+ - -5. Use gathered values for each ECS node (IP addresses, hostnames, - ethernet adapter name, disk names) to build the - ``step1_ecs_multinode_install.py`` script, which will be the same - across all nodes. Be advised that **the hostname can not be localhost - for any node**. For our example values, the command should look like - this: - -``sudo python step1_ecs_multinode_install.py --ips 10.0.1.10 10.0.1.11 10.0.1.12 10.0.1.13 --hostnames ecstestnode1 ecstestnode2 ecstestnode3 ecstestnode4 --disks sdc sdd --ethadapter eth0`` - -**The execution of this script is will take about 3-15 minutes** -depending on how many packages need to be installed or updated and the -speed of certain services on the host. For a list of all arguments with -their full descriptions and including more detailed options, use the -``--help`` flag, e.g. ``python step1_ecs_singlenode_install.py --help`` - -Puppet -~~~~~~ - -Puppet ECS Module -^^^^^^^^^^^^^^^^^ - -The installation Module is composed by two main manifest files: - -+--------+------------------+------------------------------------------------------+ -| Step | Name | Description | -+========+==================+======================================================+ -| 1 | ini.pp | Initial class | -+--------+------------------+------------------------------------------------------+ -| 2 | Configurate.pp | Install and configure the node to run ECS Software | -+--------+------------------+------------------------------------------------------+ - -Pre Installation Requirement -^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -These steps are to be performed prior install The module on the Puppet -master server: - -1. **Puppet Master:** The master server is installed and configured. - -2. **Puppet Nodes:** Puppet node is installed and configured with the - correct ports. ECS requires the following ports open: - - +--------------+-------------------+ - | Port Number | Port Description | - +==============+===================+ - | 22 | SSH, needed if | - | | using remote | - | | access | - +--------------+-------------------+ - | 443 | Port used for | - | | accessing the ECS | - | | Web Application | - +--------------+-------------------+ - | 4443 | Port used for | - | | accessing the ECS | - | | API. This port | - | | can be closed | - | | from external | - | | access after the | - | | installation | - +--------------+-------------------+ - | 9011 | Port used for | - | | accessing the ECS | - | | API. This port | - | | can be closed | - | | from external | - | | access after the | - | | installation | - +--------------+-------------------+ - | 9020 | Port used for the | - | | S3 API | - +--------------+-------------------+ - | 9024 | Port used for | - | | SWIFT API | - +--------------+-------------------+ - | 61613 | Puppet | - | | MCollective | - +--------------+-------------------+ - | 8140 | Puppet | - +--------------+-------------------+ - - **Note:** There are more ports required to be open if you have a - firewall running on the hosts. Please refer to **`List of Ports to be - Open `__** - of the troubleshooting page. - - In addition, please refer to the `ECS Security Configuration - Guide `__ and our the - `troubleshooting - page `__ - if you find any issues. - -3. The following `Puppet Get Start - Guide `__ is good - reference to use. - -Install ECS Module -~~~~~~~~~~~~~~~~~~ - -**Puppet Master Server:** - -1. From the command line on the Puppet master, navigate to the modules - directory - ``cd /etc/puppetlabs/puppet/environments/production/modules``. -2. Run ``mkdir -p ecs3datanodes/manifests`` to create the new module - directory and its manifests directory. -3. Run ``cd ecs3datanodes/manifests`` -4. Using wget download ecs manifest ini.pp - ``wget -q https://github.com/EMCECS/ECS-CommunityEdition/blob/master/ecs-multi-node/pupppet/ecs3datanodes/manifest/ini.pp -O ini.pp`` -5. Then download ecs manifest configure.pp - ``wget -q https://github.com/EMCECS/ECS-CommunityEdition/blob/master/ecs-multi-node/pupppet/ecs3datanodes/manifest/configure.pp -O configure.pp`` -6. Add custom Fact to check if ECS breadcrumb file exists on the node - machines. - - - Run - ``cd /etc/puppetlabs/puppet/environments/production/modules/ecs3datanodes`` - - Run ``mkdir facts.d; cd facts.d`` - - Then download ecs fact checkecsfile.sh - ``wget -q https://github.com/EMCECS/ECS-CommunityEdition/blob/master/ecs-multi-node/pupppet/ecs3datanodes/facts.d/checkecsfile.sh -O checkecsfile.sh`` - -7. Run ``puppet agent -t`` - -**Puppet Enterprise Web:** - -1. From the console, click **Classification** in the top navigation bar. - -2. In the\*\* Node group name\*\* field, name your group - **ECS-DataNodes**. -3. Click **Add group**. - -Note: Leave the Parent name and Environment values as their defaults -**(default and production**, respectively). - -4. From the **Classification** page, select the **ECS-DataNodes** group, - and click the Rules tab. -5. In the **Fact** field, enter “name” (without the quotes). -6. From the **Operator** drop-down list, select **matches regex**. -7. In the **Value** field, enter “.x” (without the quotes). -8. Click **Add rule**. - -**To add the ecs3datanodes classes to the ECS-DataNodes group:** - -1. From the **Classification** page, select the **ECS-DataNodes** group. -2. Click the **Classes** tab. -3. In the **Class name** field, begin typing ``ecs3datanodes``, and - select it from the autocomplete list. -4. Click **Add class**. -5. Click the Commit change button. - -6. From the CLI of your Puppet master, run ``puppet agent -t``. - -Node Configuration -^^^^^^^^^^^^^^^^^^ - -The following section needs to be performed on each one of the ECS -Nodes: - -1. From command line run agent, run ``puppet agent -t``. - -2. After finishing check docker container run ``docker ps`` - -**The execution of this script is will take about 1-5 minutes** -depending of how many packages need to be updated. This script executed -should be executed on each ECS Node. - -Check Installation ------------------- - -#. Installation has finished, **you may have to wait a few minutes** - until the administrative web UI becomes available. ECS’ - administrative portal can be accessed from the data node on port 443 - ( https://\ ). Once you see the screen bellow, you are ready to - execute step 2. - -|ECS UI| - -.. |ECS UI| image:: ../media/ecs-waiting-for-webserver.PNG - -ECS Installation - Step 2 -========================= - -The next step, is the ECS Object configuration. This can be accomplished -in two ways: - -- **ECS’ Administration UI:** `Please follow these Instructions.`_ -- **Automated script:** Follow the instructions in the section below. - -Both methods provide the same results; the first walks you through ECS’s -administrative web interface and the second uses ECS’s Management API -(exposed on port 4443 and 9011) - -**ECS Object Configuration via an automated script** - -#. Navigate to the **/ecs-multi-node** folder -#. **Verify** that the ``step2_object_provisioning.py`` script for the - environment that you are in can access the 4443 and 9011 ports of the - host machine, such as through the output of ``nmap -sT -O localhost`` -#. Before executing the ``step2_object_provisioning.py`` please, please - provide values for the following variables: - -+--------------+---------------------+---------------+ -| Variable | Variable | Example Value | -| Name | Description | | -+==============+=====================+===============+ -| ECSNodes | IP Addresses of the | 10.0.1.10,10. | -| | ECS Nodes | 0.1.11,10.0.1 | -| | (comma-delimited | .12,10.0.1.13 | -| | list). | | -+--------------+---------------------+---------------+ -| NameSpace | The objects’ | ns1 | -| | Namespace | | -+--------------+---------------------+---------------+ -| ObjectVArray | The objects’ | ova1 | -| | Virtual Array | | -+--------------+---------------------+---------------+ -| ObjectVPool | The objects’ | ov1 | -| | Virtual Pool | | -+--------------+---------------------+---------------+ -| UserName | The name of the | user1 | -| | initial Object User | | -+--------------+---------------------+---------------+ -| DataStoreNam | The name of the | ds1 | -| e | Data Store. | | -+--------------+---------------------+---------------+ -| VDCName | The name of the | vdc1 | -| | Virtual Data | | -| | Center. | | -+--------------+---------------------+---------------+ -| MethodName | The name of step to | *[empty]* | -| | be executed. Leave | | -| | blank to complete | | -| | all provisioning | | -| | steps. | | -+--------------+---------------------+---------------+ - -Once the variables are defined, they should be placed in the script. -Using the example values, the command becomes: - -:: - - sudo python step2_object_provisioning.py --ECSNodes=10.0.1.10,10.0.1.11,10.0.1.12,10.0.1.13 --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName= - -For more granular way of executing the Object Configuration, you can -follow the instructions on **`this document`_** showing how to run the -process step by step. - -**The execution of this script may take 10 to 30 minutes to complete.** - -Conclusion ----------- - -ECS Web Environment Access and Object Testing -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -After the successful execution of the ECS Object Configuration, the -system is ready to begin serving objects. Object users can read and -write using free tools like **`S3 browser`_** - -In addition, access to the ECS’s administrative panel is available via -the ``https://`` on any node. The default login and -password for the portal is ``root/ChangeMe`` (which you will be prompted -to change when first accessing the portal) - -Troubleshooting -~~~~~~~~~~~~~~~ - -If you have any issues with the installation you can **`review this -page`_** for troubleshooting tips and/or go to the support section -bellow. - -Support -~~~~~~~ - -Please file bugs and issues at the GitHub issues page. For more general -discussions you can contact the EMC Code team at Google Groups or tagged -with **EMC** on Stack Overflow. The code and documentation are released -with no warranties or SLAs and are intended to be supported through a -community-driven process. - -.. _S3 browser: http://s3browser.com/ -.. _review this page: https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-Troubleshooting.md - diff --git a/legacy/Documentation/media/Create_replication_group.PNG b/legacy/Documentation/media/Create_replication_group.PNG deleted file mode 100644 index 5bfd760ffbb86946875d1983eceb7fb9c9b6a1d5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 175455 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 z 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

>o|8ct*WqH_i2@GQE6r5@!2ZTNHs#gOq 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

fFMI<_Rd4!cWwin+PuH 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 diff --git a/legacy/Documentation/media/create_namespace.PNG b/legacy/Documentation/media/create_namespace.PNG deleted file mode 100644 index a9a0735f0482e36cd337562354f10d14df061608..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 152876 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%0DC0_wt>?z#4wy`=?4Z1B-J%Rqi-ZWZ(Y2gp1VO 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 diff --git a/legacy/Documentation/media/create_object_user.png b/legacy/Documentation/media/create_object_user.png deleted file mode 100644 index af249b6f78745a89ae323041a48074e6760f30ba..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54812 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 diff --git a/legacy/Documentation/media/create_object_user_keys.png b/legacy/Documentation/media/create_object_user_keys.png deleted file mode 100644 index 048d53866e7da9e42e2afc51481253cd87e0deaf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77720 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 diff --git a/legacy/Documentation/media/create_storage_vpool.PNG b/legacy/Documentation/media/create_storage_vpool.PNG deleted file mode 100644 index 51b7d3a04f650c0bc7f40ca7eac992b27617db37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63432 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 a4$(*~kkH{f>@6Jd_d;4xszl2 diff --git a/legacy/Documentation/media/create_virtual_data_center.PNG b/legacy/Documentation/media/create_virtual_data_center.PNG deleted file mode 100644 index a39c0d2c5e72dcc1d4a295dbeb6ed90f0dd421ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 159362 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 Y^Ao=?5~j<F=JBIP;Gh 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 E4U{3CY5)KL diff --git a/legacy/Documentation/media/ecs-disk-install-step1.PNG b/legacy/Documentation/media/ecs-disk-install-step1.PNG deleted file mode 100644 index 80857706660c5390894ef5c844fb5422f6742950..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 28519 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≠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 ccJz2l; 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 diff --git a/legacy/Documentation/media/ecs-disk-install-step3.PNG b/legacy/Documentation/media/ecs-disk-install-step3.PNG deleted file mode 100644 index d3dfd70f1fe4d6acb301deb983b9e3b8e5cd545e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 35520 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 diff --git a/legacy/Documentation/media/ecs-disk-install-step4.PNG b/legacy/Documentation/media/ecs-disk-install-step4.PNG deleted file mode 100644 index b58bc2b1b5d9cd74f07ff5886558387355932365..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 58322 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 AJOBUy diff --git a/legacy/Documentation/media/ecs-waiting-for-webserver.PNG b/legacy/Documentation/media/ecs-waiting-for-webserver.PNG deleted file mode 100644 index 047cab71afbd4d2fb46da79c176ff2c12fe09885..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20651 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 F{|6T0==}fy diff --git a/legacy/Documentation/media/input_license.PNG b/legacy/Documentation/media/input_license.PNG deleted file mode 100644 index 457ab0119943084272c6a69ccccaa3c6a768068f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 182394 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

c znVaIJM;!4Yl|>C`V~onf*u9)mmX2`R*s*a-7_~DYklySL`-j1TS;LiCb<2}ClH&gq zs=S_p)~3?Y8V(>!*xxC0#62L{fW-C#rye!KscuVHh2%RmV?+O#{Z#NzRMgZlizdVD zZzBm~0?(7ZMJZs$)g44h%oYcr_8o=!_M9R6K3WPm-7?(A@lqjAjrYqHPeVGiUlyNi zqY~D$$Q+ZhWj}&r9T103L|kk$T}_2YxYtS-3fjcfAG(_(QqkM(_4fK5E=$QsncDmL zL#3YTWSuZ@jiXj@UST1z@qVEo+|%aLSw$37O-^s8a&U!^uWdlzIH&Lz0oTgxnMoiq zpUObc9C9&+;PAHR_Bcv4oajTU{w#!FPrRuW+nodG61b-miK70&?Ut!=XEHU@ByaB5mF1U>ryEpl|tRrgV7ECWx_)dR+ zA(L|nF31ovZHP2#A#iKMxcxfGx?H%JcK`N7i#V^xw2&+3nH{c0rfD2|r<|W9Opr_) zF0NOgyNmxVgW7;c7yq83G8j~043x)?KLD{wjaiim+AP3#I+mox0}eh zgRMN*4(EQW-8(l}875A2IEl`C-$L5Qp+iu<9aF#9G$rb1PU1Lukzcq6nk+S!ShP4M zI+C3Zjf$k$;GCdD@h3i$5Y1#>%@PZAkcl z`EISJ-6!(G$-&-xChe5}(hBYZVKwuCEgk$gUF;4lv|@~;72r&TW$}V!$h(Wh_44HM z&Jt6%n^Fa>TP(IuxCJdS$PM8eYP)xEzm0QvxuDAQc0Z}UJ;(1e=Gmkv zP@)cR*)2gd7WjrF?XYiHK?RivOMU1d=pOcm@Ab(CPrVZ}#v+RMt=azC)^xOgh44ic zFKK)%eew2@dBvA@wMfxEf|ETwecnJEIl;$8Kj}da5VQKQi?=J}LOWUUtXQ$IHubmFw(qy+C2jWg#4 zqxiy{Y2Rk2fR~7Ts(z_ZK>JyTI0`}J<`$W$mGI1;6*(0l=Ul<>;9@}+@yh^q{uh`NkG9$)+XW#_;R+70adI6qAoW3Uk}CJd6`Yp^5r=ClF2)hg@FK6 z1%)axv#GaUDgt_MqkVEW16rezACkz_cYI_z7pLClKjl zD3zjB&kY(ea*vC;X&ecmjFKTi2{m&hE5kBv>OaxnBodHM#Yh*@io9%rQAzi(wbT#q z1YTaGa&s>UHE|zpc+#*P5Cs6l_#@wiaAmHI;DX+FHo@?XVO1d=+pmQ?UkD)f z-~iD)!4+;-!Z2N|Q|s7{BN`1eYfV2ugfuy?L??-AM8_nEVwJc#P? zpHV+QCKZEXd9H(oi#;4-Aw zdHn{TcbccDSVxIF2YtN6KwcOKjA@9lx0&Z7mL}Tt{Rtm>;Ri%B@yEWP`zOi7551<& z$6&}W_o|4lYf4ZcwbNxJtJ<`Utxh@^dG;Mo>7Xrvkrs~nGIC%Yw;Q`a`%gdTn5PYl z?kz@;L-RYh78&I*x2S^a2|}x(bv(7z9I?44Vi5E-qC3_gX5xkYklEsZ z0Q$Q{QC#f$EX?w0{oVW%!k2>1JeBy7wX8(mixT)r2hD#*v}Vb#SFAQ(F|lb#?nmRA zrc@KV`xU2}D^Tw>??U_|D+%pEB6$J03b|N>udw%OJsfD6Df!&ofSP|9Y3^?HYPpWf zuZo=aW!Rvy64Qc(bCSe#^d}Zp7RiEolztZE80&li3cWqMl{|mP5S2gw@1t*#3Pw~f z(uRAT4A2%PmB6DV5E;Up94Xt}mTd3R?rb5BJoj%|hF!dmN6g_()u}DZqyb)FHbZb^ z!~4sBR=f8B#N;QZ)k4dn9k;kF1L&z_7$zwWG-D%}YN#VaR;!aLz`Qe})`&FXZFpti2tgcLu`O1_7s!Jv-av?z1Gy;eLy@1^ucS7mjP4~U zx@`6D6!1xxgLBcr@5LryilUq;9YdnbU?TCr`ffL=#gulDIR8B15PI*3aB$n4w0fc} zz`b!2Ejb zdd}c?*SNPAXUs;VeFx{rc`K~R7x?aRjP@svjjv}FjrPlYQ{)GklTv0`0Krq z<{Xpc?{mi!SPN&=#O{ORG*_T2NpY+a%=gA15{qnmAd4L{N8Vw+r)ggTYtn=4#}3yJ zCMaS{fQ!AJdYAw;td9~75sP)u9h+S6-rDM>o#oa0M=q)fdc$$@53N|K>eAx}biRQ- z#rxcSIY3!SbDqsF7o1^4ZCs3qiUS^L$=Bs@j}c;12Ou#jMRI+Cu{UeDTLs7#4BJ>>_87Z zc+YecA*W^_d{#G=1dJd9RqSbq-VB}?hAQOqlCi0YUua7L+f$%QaZN|Ki09YHO7L%V zmiW@ibbH2{N#db`kuVnqbSy}l+-CJ+6W5{~NFssS+zYk=BV@^FReRX-Z}^UWf#2eaf*K-1go9OJ8)H@ z7|z7Byp`D9I}D9ViDq#ySF27$B&P-DRuRRQ)*rAq<4?|0p{VDyJPtqV1>1*g+wS{m zo6M4x)U{<=hTpUf7Hb>chZFlv5x1{9I2cw$L1_TV{S(;+-%3qP~EMkN_Jq{Kn{~V0tMWGxr+(YyOp^ zbm~>sa7Z!K@?l*pboWL4RYp8HoVmT3?$vhGJnuDo9s9W;taP8BYq$KcySdS%m-@W_K5qx!Xk=XC0=UGqL@xJlm=_VlU!;f*r;##h^hsoPp|l$3?ElR}%*qY~@bw3g?L>>n9h;#pj+6MIhuz*;Sn0FcDWv6vEt-0`dENi7?F=RjJE` zeZev6R}P=x#bSZ;Jb}#oYPvY5@IhHL+OJpfJK4`&#Tb25>bX5@pAy1d164VA%q1yC7wO%V~gS%})4UvHz z9zjpXUh&?zw6dKDLm%;uK`Roo6JGP}ttG0}#2SzH>6haA5?DrE^m{%vm3a5vLvgG! zQpj-B8uF{gj@m%e$P74U6CM^7M*BrDdn=d8_**Vr@v(*Sw3xk@z$Vfn4(@JDzCa0I zRn|~FE+;BsF$w9pH12?r{ad3kbogB}7#laiu`mb}d?Z+`FgxzVOhJNh3*oP$`)tJGBx@;W zdF(TI(Z%1wk)5QkoHs=J2Xj7nkphVu4^SYKB}TvQp@ChG@Q%LCt%W*pN6EiiC45jZ zii(aZEx%CO+{=b8OdSMl?iuSRdF~5X;q@hZEY_86tN2|i!Cc!^%!(3G7p%W)RJ`zk zI@j+8vYB-!=q&SWdruQ&0e{LNafB3t93TRK@D_{6-PfqixE-5_e>XbtR`k!X2XXUS zBhTaMa@*siolo46#}S^c*uPr^k$0`&(;Sn^T#qNZ6?fc$DIWB+};62nbVW@Xe=0!k*s{&zM+ z*6b8WSJ!=tC}e4p^?S6RA_5F0t=Ko;=zEm)0;V{7+nlBgPP86MiHb`}*cFkNQwpo< zgCn(f->6Ce@q&vLk#Gl+SOa1SRjrr;!}Jgy7TugEeB|sdz@vG-ZqqK;)nQy*xLdw2 zFE3Pc>ha|IU4M3JXVu)|#>d%36OBJ>u3U|leFN?XTQVq6Lj0zzA5W{B%X8?N(=xK2 z-)yk(d!ZHx2_+~9unUgwvO!R{t}7^+wAW*hG1r|{LVZ?l+b-0^_!qdS#-4ti!)IuFOPrmg8^n9dFNh@(?N=QWk*;+oo7PO zfU{6zsvRR0Wov>t^li%`*->pS66^-gmrI@`f&yJrK&5911z}eD*PYikd6tyX^5_?A zk;AF<$fWz&nF8;qMIKodU8(}oX(k=ly^|pQqgs=XH@GL)>X@l&vg22!_bCZJK?2_X zq=urse~#p)eDBxZop(hhY^Z4 zg_?2H!C?4jD$bCOXHh?gWh5^M@*6fr>OXK)y)R*mdbF_y{@}6<5M7NiHB)(h}2C4!>_|J9}1~ZY`us$}_ zBp*zSSdm@74khcF#i)V%Zd&&F1lDr$Zc}5snC=4^uOf}!$@VT&XQ8k!FCO>5Vm@2{ zaooLt8J9tCXXCJOLmS;c$MU*fjipDM2dXzKnxMSA*}A6ZotaC}X^8&1vwwYI&fX(V z+$Js*!CL6uRjP6jOc#aRJ3pSiQ|JX#+eKkzpuIq=0f>7`vm3n_rw2u3EO0~9YN28* zCne=YElccu+O|DeNkp|r{m|76y~l{KYmJ5wat2WH4T-?5k#RjO_%{qwUEZ}g zD(mW7ja?G&4p%L&x}<_UqN|@;Hq^;XL zyI_5ycWtjBh=ds?{j2s8Lj4bLHB1afQQJ~U-9G&0tc`pl^-`4GhJ+yf$i&VL3k}M@PnnhJREApipQ{ z2Mc-fzh5F&lM*UHPhUdG4F3mIa11#y5x20Yh>)1v$o3m_<*D2%RiE_?jUo2GKBf=R ze+`0h=6U}i#iL?H`~T11pNJ;_-neRc+7dFE&CfRwgG;&ROZU4QR{ibk^>F{rD};_S zRp`tx-7au_gFO5Cfwk=HB{KPSTjOb9ytmWe`6ox19f~W}_UlE?yf5haO6}$Nc73yz zHOxO7mAXg+9{Y&2_A;9@4@b)XpX>4OC8mnQ{{V+{Pp$!IMyMz(cE3sK`u0z=vo6vs z4)>p6?npCHH%er5FE3;0_W_c~jQyTOBpqGC&)b{x{#vBlKkcaHD{?&aas6LUsrES@ zQi(<>cH(=go++GYnmyy9GK9|`4MICv`<2-FL>*uuZI9$328^x=)NrutKdzNNN&ey; z*F3tABW+1D+#`*QsKv_?+%_P&?tf#0ew6(55KUb?FJbi&-~Tl_6{y9WPLuTZF`C*hxzV?_gZx9U(zLn$Er!lyvA!JFcKO(ym@_?PQD*P?|?SG+@ISN zMAddMKtM>5@PqQ7F9SIuaR1e-1-S7Q%NGyMyed1;(7j>)UBN*<&o9y>;R0C6j2v0? z=dOB%Ix0x2PiPWFPCM>icW!pB$rLp}Vu!`Z8D`Q6ZX?Ubx#RI|;lrXjL1}S;yHAE= zPRB5Y!s|w>kB-lp;+pg4oYIgSklE@#%!_0`PmkH~SiY!Y8Dc9NtGpubf50B=N;+Qx zk~6=z#mnAikmWgoOB5z0#@+AO>M{z4zw55QBCbCSRq^h{Nvm|iQu88FX5x>%gR>b< zUgu<=j_mp5+xHp-?8nj1Vl;(@U^is_P_3nDgUx7kAE{!S9L@vMwYyt~^T5Wc?f6Bh zDs9ho47;EgT|Y(JWDTKB31eJRJyMrC7Y+&`=lsS1mvP3Yiwn2J2b-fZc4BUB@mFpl zI9=vHUmZX8_V(bHuzr@+VOwWH-l9vivh9IVs2VxXu{gvfIpV3c_9eQgIgR6wsRKhm zQQ~b|w+^lK1e2>$p%-}Df+%GrBbV}e{t2dG4godV7`px@NRId4`KB$rRF6v(=+~{- z;U9LOjT(QXOmW&Vu68D;Jwrs)9er7-_YZwLayj%i=GZ-52VHdVB*nOTDkQ|hVGED1 zcSj7(kwti$)WGHc07uD5bS(K+E(Q;g{X?=s#n%$-}?qf{wSr`adU@U zctav-DvN&j>@`^9HRap%4q`m&KF{@yY?}+zi|87OOoE%e*otC#9Bux$X=yN`m2~?6 zEqB$n60rYhmUzp6CM z&oAZck+kmjNc=SN0sW)3>a@m2*Q{{pyie)kf=td?)g6@4%yO=x2-H|x3z0BbVZD#N zYfJXalFlCcBQ-YiG|C$|79_nS5OvY7*g4esbnK6%JJlzqLs6u*n140KzIHGQ-Co~q zUGEIj$RLuBHU?&GM%i$uVUBQGAA1A&+PYc+cB4`Av2NG2KCcB17th(RNgDe1%$;{H z!m#MqEA~#`Yp$2`NqU7$cbYm~Xp&r zl1rSTy>4ja^DFDdZ7BpEguZHSQXcucwaOm}0)it&Z^2`ax3+S*&V4^9{Bp)>)ko>^dyC~pv}cj%3idDqpkg^uc~YAsPoldIDLh9vizeK53X4T7-yK= z_Au{ed}&@&9onyeVI)mXGhku_>@KQSz5y(m0 zS;==QBX|7y`Cg>SKw#`*+k6!@GEamUyxzD}5 zN2e6dCr!3`W`Y3NB1dBZUf)=qU>3vsC+Xl_586IB(J4tuSAp&reqz<&)T{q_b4o!j zY)Z~9b1d+f1=a3WUm#Y)moF`6FZ*f&un&axk$o3aykn2=G(LD7kk%lCGciA#j>_f44zWvSs!B66Mi0bSVlwGE4(9e7KG0gg?;h& zVf1s6j~c)SmC{Lox_5xa%XR_${jH5383|3x8Bsft{kPgV#;CX~3G7ra{){N3fhFbO zeZYS|@36vl`b6M#Gs)-2_isNfA2PsMFE;DKO{WE~BeYQ^E~xG?n|3|TmjMY@<|(Ad zc{R1MQ5|pki*O(pAx~S4l{2H2d8Ev=!;g9U>0sdpYVrr1i9)iR&Vu0JD3N{%ZK;Om zlyzNn_?&R(EmSjK?TTh51sWQ zQJAm849^~zc(q{rL$rjKavuF9OQAj7z1cUb#G+36e8 zb*j+v7))?f{(0<_r}I?_j+t>1N5}o&ZoR07H3yID1?e^a?RC%l){uGs`0N)Lu7b}M z;H(Ws?DrD?I+9L1?sNe&W665_HBGDd9X12+7UX<+c6pNgI!H{O zwYQ_wxnWW0&HD0l{bgU$=V|lo9y;FHGt%jmcss7Y)17M4_Rvp$cb`rx&i~TODEx@{ zdNpU{dVep%)35h3jF6O6uoM=$)6>~LO@{iJQ1H(hw0%&NB$kL>_kPVOAw z_P;~+dmfX_;Je6vx}lZP@$VgZ^~;DJe@f-{gS@sDyrlhq-CRC+rGQ)io)S$GGyDJV zu9vjco1ehFk=bAR-w1I3Rw)QbM&?NBxR09{Y|Bz=#XLp>smm6(;*p^;;CFLFm9t(x zOdW+V{deVgar+N6lxR_tBwuJKp1){q{~6i7Hxa$o#S~>g@?d_C(3&CN*08U3v^!7G zjhj<7UzM#TzfhnZO!$n}$}}0DEov_FiT+V$B)`e%SF;*|_W^-jdG3UluMC5hIO>%` z`R_)bC+r5T)YH6*y0kB4G=C50Q^`xeGLtONL=0At|OU&@lzgAkx9o%1tE(@-o6IBG33R)*hmG((44xf&Lj6CzSE_t zH}~}VR6px*?NnVoi`t>1_75{+2F@&t;Jk9%v(UkgalC1}T~1WF>bmC0!j7MB%WezI zcT^^Yy8kXszj3m#ONxELJDPn24gP5ve1ENerU<7{a&#tD@|H1ri5paoO3^|eT*Jd# zQfHtO2B2@tf0!5_hYT$eYi_iy(;f*80LGdmg?W6-N51uSkriqBEky=KZpB&MS1!ua z&h#ZGMsCNL{5p)0jd-#1K$}_a#ER;GLW;mN(4>WXwk>YtrAzYObgsTJw3OrQpzy$k zftHm6JTqe}L-askuqMmHE@tgG6ss27QsiLr~7K{+^5X_zS%DFs6mYDWqmx$ z5#huV+mm9gpwKMdU^@DSP}swyE_~(23V8j&`v_)OP#l3jp=G>zql=EZ8fe^Vmx}+< zZQgD*waSFuu6Cus%s!|4O+792_>dQ82CdrmelnUY%#Ukc z!N|OY$8Bne?!?f1HPlr~bs^2VAXla5uU}yKqLxv4Ueey2P~j`>vBA(h+JB9d?F;7H zc*xIvVrw4B8V0_J8V24W*!!!YRRnw#!P{iZ$UQS+YrD1nlyh#|d3u6NXt?`TG;BQc ziXyfM@yoe9MnCSR$-hspMgOj*%gy~o@$>u!C9m4|r&-Ut0{w;s{l*^A`c9!=Us(+( zrWp^sOR=T_42Tn@$2X=nOcC$+ZJb^9dCoz9f13>@8wD@@Fsw!9Pw`T2eSS}{pm{`f z-z_SG&lK@Ot9g_|CDVtH%}&Du=Y3svW8oET z>_GtEdoxD#&-UQ%|8yLIq3$6fpZnduYizq+CKnO2{H&j&<-&3rE>dx~b}bUVWgG^Y zOULQ$aUS43Nt2wn#Xr2Q{5@=Gp?ZPtK9_nxMQsUxax`xpatY?&oh# zSRcOG+}hP`hg_gCQn&f3k+CU(*MuR+HlYA6b`pvgJ&JtMo^ z(kx`9;i6Y~W~z!p_0B6KZn@Ze(+1+*phf0Dv0I3*Hb+}<Vs|GB~if2%2_{7s6PHXGuS#;$6 zFireG_9pgM$S;hv3`yuVWEBw)k!bMNk*cOG<@}Elg)s#ZGHUlUH2&8fFD8_{#zr@n zwmW#NglR%lT{WPx<-ZhsosVXoCNj%Jf4gO$O0!S*?5&vV2$ zY{&WY|3O(Q@Rw~ltAX>PW;3Fd9j}Fb-=8=J#+zf6cq4B<5=40~%SO)j!#1=(qeipl zEt^<)2V0Lv2+*ZsZ+8KRK6$5TgzH8u7Bgh;TnuUSV1Z+ALAx`6;@Ol@2{jk`_Q&g~ zQ@nUr$Kvj9Qilr$P2=#5LEmo>;m5h%#))MESw|7F_u};^;h6nVhco2?eE~G3@KVM~ zSJ-0mvjFV6_W(nJ!(SmR09BXk$;l;g6E$Ak#Cn%2RQ3gKG5_^)f^WzT^>S8-mSnnY z_yetoKs>HG4P0foX_#wz8ueu1+RuMZ+kD?-&v;4T4-}6an>#uv+5!R^qH7C5b;}Yr z4TXor)&+UDag80MwNLOwp`y)~LD@9AF?_hPes=shWJ(!a#QAJbfn_U?}Z#kpGk~r%_WlM=1 z(|A#Jc@!G7^j;>qT`#i5QJeA8;0R-WvHd?4`d1bsxaj@$NPG;keUHOdte^I}55K~Z z94q*Chv73g>A7p^l+VOYz~F3UWSka=p3rAOQ88!|?d|M_h{DZ{Vtk%#XG#tZ&mmK)5>6on``Utz4oO zegs0L?_k~}=X((zbF;yLlg+&$9+a zE1EHRny4mP3~`pN!=rR@8%ak}Ryk^U*X1i8Ny%t#YjbsxXq+@fHw105#Ug=!(@g3N z-3vm>Kk8I=+|mk=rGs_k)Fih~aOJF_7_vHB2MeokmR(3wip!@ZW=|0qt`U$}O?{6| zg1I70;a6euM13`7OH@?Jn^@5Zaa*RcB3a0v!l@kaFmBH?XM!3?M?=I;h1>+&T3bx_ zguJq-t~wOHuwwQP)ou(=9 zEgzSZGGQGv94d`N%sk{_*)BJ8LUZ!$5uWWtPf%x3+(kGi|TN=o|AMKe^`dv zU{q%p8N{l!8$pVhH+rA@BX`L!sT|e^SJo-d4&=Lul1w5daglPW;)L7jh?$MBaWD?g z7E8<(emE?qFZ}&GruM;}(>eWbTID%eVXN=k_+2wiGsm{mJokbt}D(<<1zwzwmVT4yyTNAmms9$ZYbbGM;cUKs%gdSUJtyk$)A1 zOD1S1?Mr5EplsZ8QfB5gMzVJz7R+EsJR_F<8H`-Cj0MfD@tzOv_GSM&Z{ku z-tW%zIV|*?w=;2C!YoN=Mw-M$%r9i*OUboYmXa>b3f;mOjylY+9|x^1d;g5_<8ss* zcUXI?F+Ui|5Ukzo^PXnjCM*{BuJ!-?{CA9eKcMq}P>xAY7n_9UWzF&tG{}gf9Gw4R zb7PgwT6V&wrx4X?(xvM=gZ<+@OPBHl1=F|RFJxa9dfsDtJBzRQ^QX+s+FjUWnE{V1 zBRUknnsYrzP{L_++^M!wpFcAt{F>`=mJ$wGq+5b;rS(APt2Sc^C$s-^=lwn|Z)@L|GZBW-rki%VpxLE(?D8{d`FTC76-{sam8MuHuPG7;`q zeALAE$10mQ&Z2jA0(CE1xy4a61IL3}1+JV1SgAthY8-=!djD|sk{by73+Sza3REXJ zAUQt7koH}w_nw=7@x&5_iRWA4NW4Hdfg6x8t%9oN0znt{f{v-?kn-~4^1n5mc%l$I4-!kSOTB24y$0#+nJr9jT|-577ds{;Y(o2z-=bDsZ;W%)B;Y$o=W@ zeVVW{1>;HgucHepRl8jnDZnG`F9XFwPv(z}f1VKf_Ji@+DI_{1%#>0vBU_8e-vqog z@$g{ll*vsmVI!QVJ-}3(c)Yf^$wg#hn8`cOnBhz(D4fTW$&5)nEd^fzSu3S-Tba7n zg10{6leAHU-rUj@yKGH-y;m8P2=L2&x9+Xb%UwozHcYX=5j>TpH44ek1`^|@I|bjN=z zmO<*LXrQyM`R4BKVS9H|`l}oZI8DtBNNYLtadYjS-$P6+K1u7Fyp}+N1?fj<1nuZNIK=%7 zD|h@$=C8ia{~5jv20yg*yeUSDdVsH3={=AGgD78LYh z%kPzDY_pGojL~hpuvrijUKzjJvhZyXV@v!9p^UmY?FEk3mXhYOUkTx_^M;s6eF=Qb z8i%u#{?(yTmU5XNO@}rN<6{=A%2m?c=l)4x^jz~W2L0ooRqL}K1=1;gbUG9BOl z3{h`5cBCA!z%z6+SfAb^Afc$h`m#Q1aJZNipJUupu>B#opf;G1t2KvvJTuL1c>{jJ zUbN=s5$Qwm2QoUVipQVMVPS>Ep1;gic~I|>-rajd?7nzB2F0t-bo~wgf9uaI#S<3h zz>{$_OB>WqNuA{OELjxj<6$SiGY&L!_1=o*IC%5Q+4#SFUFP7F zR_Bzd^LNJEN2#jeqt}?$%3J5CbVhPM`%!RF%rKQtZC^^?6B?XBrA;%^#_LF#Tq20@ z(5!5$e_PO3ZIQ(%7(adz|1vXLUd#NVZws<_ospBx`k+B6gO&=;C9}e7{wyeWb)jYZCx14|B3} z_eOFZ_GS5XQ=6k(!v0#fXi1AWx+spTs;a7_m7tJM_ry*tk+RONnCIqpP754p>&WFy zzr!$4z3{9XB@ya;@`U!=+IL(4^ugMIrZsbcXS_2ZI#bm~=&90Mjf{9JqRHI#*(tpQ z@#zgt#$Z6W9)c9q%EG!M9i=LyDQIuHnXa_%+GsdWsLys~60jC08Uv=~&C@ad{#%^# zCCZM#!nYZ#r5f z9wRc@;FBxIae35S+}3HYD7=ZIwk4b+NGmnh=eBJj-!^IhAEU@6W37Kjx$S-xH(VSq zCXZwnq}rRlhili=$-^4Yu(ScaPkSt7J-hj8x4#J;sG%c)6Lnq^F1hH}ra3Sang)-U zM72KKtL`yCc_N5Ig$Z+G?lTn2>#r0@E#%ps4zO zccs&~0h-%cSY08;?`-S;iOeiBGA^bK@+GGF`ub(d zP>9L?x64_fUb_Nlt)!2;Kw6FVXuBAuLItS3Hl%?u-B|S%7YL253IN!Maj0a~OVy4+ z?AA2x(_t%16gl^s-c)VoV77+x#^@iV(Lv+gFic?tQ3%B2RN3ZL6&oSz_F{KA4> zN6zMMiMxp>V-OLq_zH$Z6WJhPL1^n~=){#D_XvT;yP=Kgzc{%*Wyf?|;N>NC!q0Un z2bcF-RWzAlUlR4-?}mTWxDCu1hpu1@A}AS-#h#UIf(?qALZxW;w}qFTBkH-yL3YDB zaJWgX1w__%R6x@RmH4Rh}mKloHxxQr53)l9-O5m5l%fc8jw$1eC#55n%xiv^rk@Q>XCvBVZE# zp6|uqvuzze4kC0Gf2%T99=~1ip1sX!JZ@0D-`9m z6)J{fIOpu?**nIVvKsk`t5~ZL0knBUHY!~gk(4^Uz6Ro+S?L_knpieC8UB1H0M)`a zujc`@n>ZRDR^^k5OO(udJDg%>SGfRK=Y;Re7tmLznv8`z&wSpC@@-EUHTP*dELxU| z&zJ>xBY?lHe-br({)Tj&_LwX8@Lmd>N3NHtQO?BLd*a-F5UHby4zI5tC+b~t?oIlg zD9ZpAk;lR6mT1VbUUQw~8!veCn{EivDLfm>HxoLhPzrFH9QuXOS+0F?A8?;6KQg25b{RjH&r9A#^1Z;o5Fh|~p_-TQpx}LJdQ7i* zSNgX(G0uPJsBh0Xz`93rpukGPJCx+s$n1&LN7$hT{DZE6w6rZ}+Eb+5nJ|=0lOk|2 zM04%LrnIE*Wa-ovhgp9b@iq-nK=4R&czcjhhKS{`i9$9GXx_a6!;tHz^!uW9Jt~}m zwCV#^>ALMc@idwiXX`ek-QNJisxtZZ zD@oVIkn9Vi9=ka*m6hc`Qc=|PGXrW_b&;0qOAkDNS}foZsCKReel?~(zQ_^|7f9E- zpfWw2Q1dKRN#f3qTu4pQOJ<6zy}irI^-&y0M-Q>Knnspf>4QIqVO`79a1vcd<*6mt zb9?b>X7lZ@S9;WYlA7Hl1GE1?-ezQXgK@c8&_4`=6k^B#;%!@teD`AKrQ@pzdP=Lh z*ewB1Zl!Omi8-v6y{8uE@JtZS$%{$dVm1#HQTyG1$`e!Z{!t4_U3H| zw8jE%7yVjZtLH1T5!Qz!f?$8U)}O>LtY&JDw2nb>KZ)7J*8NO$L9@ln)0md(Y*)G3 zt5H0TqWNwP1ETi6)Bspp6SCSvf*qJig}=w01uJlocVoU}m8`HMx97A-tr4Vmi?o?|eur=7&O8lh z;)OqSNR;(dVL$z03MYvQLS>T|i|Z%?d5+QoPv^vIra$wG z;6LXVpQ9m!7}ky}mL`*i&tiZnFIDGX{?$yU9WF&`KYp%D;S^*w9#v&q6mq1b<3tW2 zrT|nE1AxB1+wt$K=J8iT)RURfYvWM7(V{!n<7LqTMFbwRS%Y{3w4WsflofBWRp1fa z!{+?!t~aVVr{V5}1e=rKyvy-|A1<}s{zq;ea5|=tnI+JqCqN21=dZe%_%uWT&(mw# zT&RMY{~mkfVm1|U95aQm9(lQfxU=KpZCKX>=SftA8jg)8W^%luo>|vTg)C`e4X0!0 zAq^<(_noew>^PYjPTb62-7G$cA*CXXo{86BgI6>N6Cu`pPZVHBRVo|uFLUTS3uW#Y zM_ca`g7#;DMwzmXpaZF!o9ZgQ{teN6QednjN&?r&KL~lnFwmOaOAG|GsyAKNMB)$S zlK6b&`t(=&ogv3UUCp+1ZeX$}4=g_gq96m(#j*wHa3QJ5!p$lb+PSe;#5zV&8fCxO z{t$HpHJjWxRDoH!Olj-bBw@=!uC#{{sN#wr2k!;x0ew+Cz@43$cr@x#6f>Y6XjF1A z-;_`|t8SYgy%WC1f~md54SW<<2bR5{ma|y~Se{`wN(D)pCk%~dce@WGw*2CNp~>j) zZV^U;59xzq@NXrw{qU^SbMHxO2a zSLRnT6I6{+n-Zs}bZ@exr+1sTw%}%=zJMo6+gr)mVpO^LN-R!DXZ4P!mPyBoD^g3} z^sGFxtXk+^a;7+;15~#W^ikexS~kN)3@|RV*jBy5TL**8LZ05Zv7`R(&GJD+vlvwc zcKpuPU-Qz86oz7$P91|HjT#k$2zjJu(a;4Eu(K#iI-d^cIKM3b=P@MN7HJWd0X1!u zlqki%^ARG)Pi>O^IK-5n0gv>PWgjtMAHi&-#ADn?JPh^Ys%?vGScnyfr5q-X;~n1O z5*N>TUCmDpny=&jsOs#8E6!2bbknObS|Y0S>*tJ8axqRfrkf{xh%sX@?bEsv*pB-V z704=aMyV)=UE;I`CHQfBC|jb*bON2&V1C8gi0H=lbO`e>aaKL>Qhg(Y#j8@ytU zx9_R>W)jQnd5A1_fn-h(Tq{rS!yrN?H;?^ny6De7;jUj26C6OkQ>3Ijh!Kc`&+&PD!TmwyS4@oqEI-`mBgXX6KVhG%#0@SKjXdpV0tasSp-0&txy3@NCK7Z#R;yqr9GFOy zvPcZKzDd|}g?v+q$~+`agFM$yILpWIUMALOc%I))*Kfb>`(DANmL~UyU+}(MuGOfr z+t=k&O#Y|2b2k8JrC4SHz%J+5eG8L}K@za>$n%e1ihg{^5U`Q@5>*{$KKjGjG z3N;Jn?hPfl==pZ32VOCt|4bEUK3)onYiC3kghgY=a@SXfnwX`G7C#H>dcLJEV63}a z_=c8*)0+Q&qR-Zawsc>vr|urDz^s$5a&2R^VbR#DFj8BYTWz8WPx~S8%l+r?%Yk{; zZzJZ#cGM<|03u)3o^OAn{U=fI^hBndsS?kRuVA8z!VKeVd39C{B#Xb5eT?%NQ^H9u zPU=1ifacW7jO0WFB7Gc!=QFX1ZX%y`_@^tKkqyj87&KEUj?Baej$ce?QRl;KvENL2ZEXkLiSf)gBu$IX zw3f2%`Cl>`eWx!=b>3lQ1T3oNCaSo!lVyyZ2o)ea7?q+AqToCiquL63Y`&Z+LCTpS z=ucvimPamk`%7u_ykIO!aFbD5LBvOA(USU{A2j| zZx#{ACttL9tf#^5Cg>1wmhw>^#CF9kNp@v*(VQQPjR|b#dpJACENsPJ>4sR@y2cd| z5y?sSJ070(bGt`ZtIuPz+ul??=}}Bl(mQyZE(>3KTP;2z4|c**NTp=+%jz~bmgoUa zM52b?gvb&k%=Wbf#AZV13;D=oi*$aa@5fzQ49cpho`$*H8mjhNo{}V5H-jqu+$139 zsld5v@<$opT!6#{=+v@jVtZ1}?$KUA&{xHel^|k0LygTuzZ&koUz==-bZcL(W#iSk zzQ+SWzxv1U(qbWTAVr>RQcwFBUM^(Bc1BF#w?jm_?XK;E-|WXe6VFK{HcVV50%cu4 zui++7c26i~B-Yig1kaHah)#!uk3aV*Tu;r&0u=d{j=s>C!4F+QD^?jP`FuP?oEwBQ zQ_+Ri>u@|3FwEIEqOb6Y!z{yCC&&3nAN+-lQ$x^> z-yvK)kz(H=BGt3WWgAUg_zKgZ@71Y(8ZfH>s@i`cyRu?0{0n40J;0KXUU)aZABVow zWS9GEUKz?)(B$V9ue#45-u!nm?~6O46tH=E`KH;S|CU#VwP78-B*L?|k25o^!J%a) zy?8k4JBsG3O9B2pux8GZLKK}C=-n&a8j=WDJBq5^2`d63Spq$!x?$E^WpqEf`|Ws# zk#XcPjokEAwIK*8wS2MaM$y;csHg7OC7&E*pmoRvO=*=xjPnS}LC$)7*LD1yBpV{= z%rmhYyq8-Lx6}F$n*lMNjs+64c7%&F_{1{iN(=?qnY^oCR@R8#%g#S5Grdt7FT`7+ zmRFJl+_@s2pk`JW{?t1NLop#p%ool3uf@<#I+D4DS;esAt@fxmv{{hEq%=xq@Kw5#X~I_?=KB2 z8g?_Aw0NoT$oEA}Il-ZAOn$)eQU#gp1qIC6L{HjQjl@B%pw7KP-6%~VMdyhJSZZ~fFw}t_Hc1eE0kPY?OQ6*3<-IT;(;k!SR3?OzZ4C73c zjY`SS{b2U8Qe+2q`s%6EB7MkyuMYFQ1vszOlFj?<{o+neMaS3acSb=8ESqCgSc3pM zejVr~dm8AvxVLRp#31oFY_@VWh78p5izoBqFHcSkwdpz8A}xu7eJV?9ST+{0pSl{4 z!_O6)$9!LDp*tpP;vuZIWl?u}`s-tyvVrMi1;`jl12IW?A875BoSv`95TDSS&?|y5 zYkR(c7L?c5rQosRr=iUZ>Y58rWD7NrXK8Q-sDr7n5Y$KfxzG=pPg*D>q`4Z!8@WAn)up-`mDo?? z2Ap&dYXkh)%Wl5W3{JBCL_a*0G7mYs^nf_deE|0ZywKDxn*1c9a_)*u56l3*@1;4g zHcM%HClrsA%41{Fx8^3qJvusA^~#0WT02(JNzg!7>$qjLp(N$+d!`mr4@bditfSBB zTg~{%;Z=s2_KagkG$x?;?Nc&pP3$^*$M6PCDqPsR;3;e>8N#tSq?BG8`^Mr)!EFhE zt^P{ejny%xKqX-(GGhEDO_XuIc#J-VW-1Oep|1O{?TG0EJdcK~3i1j*2fY=kgr8Df zR{~Se=MEC`Wt$0Av88KfSe!CqCte;4o1s~=r!8KyOR77foPuDsK6F$t@HtS7Pk)jz zd>4E|4U zV9Z692Q_i)j`8EWNF;p5ZYNofQCq$K8a?T)os~tvo{}fT6&-yG=AG1WsKok^kR&6e zO^~3f+&OJx7VtGqkeX_)8D25VFM6t+t7L}y(9iod)hCE87;Ws(nHS^cmoQ=~=|-mV z?N{Q^);&Xqd1r?Fx>(XNX*~YaVpST==9Ze*$*U<+{WjyVRY9n1O&gnZ)3s% zTQhD!Hy6Va#p{BdOH!R$*?ip73t3x!VSm8gikY8pox6z6b20v5@M}l5SXF0<<@%RB zhSBmsYpOOCUz?DE{wHSd=6NuWzZMpW?Q`}!)c5UZ62cHc=Z#52swTO30b^4By-ieB zF&#qr)D;PBrNSInb`bS04n5{wGG;_B+G8>eGXCHT8;+A6JA0Fz@U+Es<)^&wxfTt1 z!n|gFD4t$!%}fU^KL^$aymbY;f%^|Sr^$PdxcBGir2*}+bM1IS%C4Be(Hqys;>$xSv8$6tNA7M1KwnLG&b9BD3}Ml$SccTu^T}e>8bdb z!i2I}#*AiJ6h3J2(BIFYbd8%Bo=?%jH5Vm2x!$ec;gZ$&i;>s6!JE^!<6A3{#R6Iqe5kXo^QlLP3xfgi5a4A68?X39kGacHeZ9d8(8ls(<`P!7Stjx?x; zP8K$t$NzUA`xBqM-czC5Ybx} z@s+qu3GzJeC*sw+0<*X*i~>mN>-&iXx5prHk`yrttye@_!%>WM^;j_CmY|k~=&qiA zI^n`NidX;kH(G?L#d_ptX*OaAh7t16Ce+HftfKhK6SN#-OP76R8g3~mVf&hpOxo(> z2e}W(sx6W}|Cl(Me+h+mf>Hc#fbtJ*@B9=87|fPRs_?dl*L z_jve$xL+g)Nxu5y-)iH3*NlJ8u>qMq$lP99Q60|S_M!vgyWc2Z);utN`!}EV1wy)L zS-RHNuyxx1Xq#95scrr{j<8xLRW>m?siyh?!AyHn`C&}=oxXnh7W!^?cej$Va!rek zzpMIx__6;*3qA+@|EQ@gb;bVj$&-}D~_txfR%|M!n< z%gDWC>v?!}V;(|0y|0drAC?nDNHr(Wmwo!K&j4;y16bMq52~P#!p{(oaqtXY!WZCZ zyW)hdIl7>7qAM3j9y?G5#3qg-698Gt|DZU$oxg%trnG^Q!o)WU65>&7sCv@xnY0G{ zbDx?&K2!g>Z27;VclAj?NDbw#vF6yw2Yv1f)jL@>2`m1N(=rL?$;Q7BF^|yE(Kqd@ z=vaTFSKS^a-}ZAw6~-_`sz+H9>|Fb{7ArUR&R?O)c5BW9e0pLmva+}f}#2K11k>3zN0se9c(jKVHySz9EB~FF{QQW zKIqq*R&2EW`)r*A*;hl^x1pYfwZ*mqja5~xkYhpLg%1HM0!GWkI$ccmd{yKmRt2KR z=$$wFjS_icld}rj#s3v*VTGZJtuJ0TyvOF;C#GTK7=qj*>4uKxfWrHa{fJP z;Yph&o4Pf?czEo1P}_q?Kn5b1=ubIk7tLabR{?f zo65U%v2h_i1#~^yFDz}sM}b~u5ZteDgAHIN5hN&xqVaM8Raf*Dam#f{XSHr zGIj_NxD+OFPgzAJF`PYOu-xMRq&ZV#lc7|>4e&UdsaM;Ux(}v)IJCHzp6E+cQ?&eD zb-AUuxV{!G>4uJd#rcpzZK#}Q77*`|jpMyzxwz~r;h*`dmI|S7DwL!xRSAwix^@e4 z%wB76ydSi!y3fjfSZyVOIS0Y})J-V^dsTZbGTQQTeN7YNi!uBzZaUW|%zC|c2E92J z&KXOrgDR3FBliNoUu2f*jgBCfbL%z$G;YLbX-J~8kNVR+!(v;OjYI4K&& zOaB9NUOk+i)+PS0*EsQ4Q{MM~U?xWJ3IwO4TUEl1u2fRlQBVAp5YTGDx!Ow?_+T;h zYkWf0u`?8T^c2cirr@SIhbDlV?hRCmE`%;S4LNo*SMh-G_`>&Gp?5x zWu+4BVh5c*hxGu|ZIpy+YH8_TUoZS$SDH9Z{A+L!V1GKZYJsi);^KpViZ^16SF~$x zP|yZw`Uixm2JL)^<=4P>4@nT9aAKnX@Bf9GR$j0_x(7~=+6PDtQu8Ecpf|*-uGe*- zgNKOh`%R00(*cR&bzf?it;!c%@CvNh`h*Rqm?>rO3RA+onpc+A%$@zGhfAu7ZOqch zF|V>W&9CE#4a=ro61%2)^|9?nT!w{>+#f1zF!RCXTYAM#Z5XJ4SCLV`mEL z5@O^k{4M3>8Lpu_y(a$|cdi5d-V$S*?+o-?5Rve#elbhsx5ARJtZkXLk=r=x^g#q3 zR0mADQ(Tl&lhttVU^7M`bd=q>mh?i67c#`d^8sX{M`<{8r?g#Yg>^@{=(mOKP|(1` zCnBY9&7rjy9DQbK;<6>&Rm{La&3E9cv!=5%vkTA;Gwvw z_d1XWjB@O7iL`C3JVYL_XJ2fn_AG7)-H$e2HC*0^bowOVj2LaK?}@CBv|froT#Zp5 z?m0euF?!f~vr##}d`?-jzs@&I9T@U(ljrzxA0;?A{tj;|V5-S|qrs}zdf}!j5LiOk zJ1+7TU2ii+J7(uv0#Z+?Ggf!&Su?yhfIuwjhtz|+d%=w=*2SVt;bd{2kiff1iIdn7 z>k&n$JoFYv$>Qu@bYU3b;Acn>jirXBv9POa0q< z;a}ESj{N)873t>RnnO#W&TgYliSivDOpFBU?!nQ6Qy>2`Wd8?}1_&SXoHK@RajCK% z!ec9+ejO9;+m7R+pf;H^FtPcTdLH3E!2Kfje0nyk09KlSny?nO2}P25qRf(zh3MO* zrGUAmJ7vWk51S(y{2Cj4(`wc5$w*7tUs1yB#SRHObzq9v3QNS z?%3FSXwjSwHLb0E{n4Qv`*_gvv5~CL%6m`5*rjO;?P`G5*#a7VHrFqC{|C06P(wV_ z1ro+P_v3rd<1)Z0=vo-3XMKByK{(9vmxCCkwWmP+pb{2Rpxs2Twj28MslWC?6@E=i zWeLVmtyafeR!&(%=r&pvfeopJv-E(MC2Kdq$H@zkxXXFh?)Fox7@p3KU^M|qOY6e6 ze>>K&J;0S&8pw%E$ia@U_#k!XF}V{GraGO&w;x_8cYiF)$gvBt2MYt4=d-4k7k%0$ zmLbS>tRv7Y%#imbXAQfJjO`?Y2*|LlE7XFH z6e_nxooTLJB*2Ng>tLNq$ko6rKaBX+rO>R2sD$;4BvlMUqV)X zp18N-2*j7#Feg9Cf=Ant$^77dce{ntFvy+fsz%bwyJdN4IkYu7^5;1I3^>+HD=!5iMss_` z{t8kyOQPfZ^BGG)ptT{^NfDFhIc=3%_j1CF+A*J0D!*9!oHBSvS@bwS$~v~lV#uTc zIi#HHVY0Yn8jYZtz{@F%@w}ri1JC#FU`_ z)GK0Q3q2}#)UW|8Ha9@2w*jupQyJc|b@1L?fic0Bj<9up<-B=kZZ>wPa^DM`F@CXJ zvbEh275;f^9X}7U_2j9~Z-ciEdL2LJj2~q=b`D(K+#CSS)^6g5L>t~RUs{UDgIE4S zeFJEo13o%B7!H1?FArudM#bkPXWChdxo1cXUr{%+x~w_@I<@;JMU%e-sw|s%f}h3O z8Z;l62LyTvKNVBV)thCDt^a_#7TVrU&M{1@3OHpVYkJma*fO`4FIw|?m}YXmVO3*C zVSkxx1}Sae>m%+K8@soiUM_4b_KF1l<EYzFn!3 z3YB;4_{C(jGHb1W%~#Z^?v%A)|1dna$v!BlYG@w?w#W^M7Wt&f{*j1zcduH+@cYn| zrW;95r#o;Kk@WUdE8ROA@lnEi$-+&QJ&NU$)%%Y_M#MdE;fay>~G82^opj3GIBWsR{Q?(V#Gnut;mgFY>Sr3L#Yg-VvfHl zQlw7WENWzqh5pA_+D1lnaV;JYSuXg`n+kReU?ijc+{rN6dzKNuFl+EmgK9W)XQ?io zlL~LQCeJ8e=#q8{#)v|tSytOqWN!7#0(BZowz+es&)A4Mfluu3HrY@eS!DogYDrwU z^Re~}uIabZq@l_8WY;I!r;AKMIrQflR-g6d`hMay9RY+a5*9S)qDoWY$NJwgP>UZ; z^IMakQ0nfQlF z9--JP=A(74PA0R101nG4s>Sy4-XwZd8onm6!wO>qNKpr4TaVoqx;$Jh3?E#k9f-xa zj3>s1TV;%T#G_nZZR|QG=ssYcw3rOc{GrL1Vj2NOn|9B;(Q&$H+d&(jEgRds3c2pK zO?{F6=PSY|X6pg-GkiU(%VdQd^{^lD;fC8ClA)n3R<=9eRK+Z|jC@HNwNuofjSZud z6R}{2vAGeD(ZVaPclN@SGgb%L=0lhAr_L4yf>;ei$Wyn-3-`Q|h~J}(pZ{0#7$4U& ziV~GK3~#=6anXfZ@F}ByG@-9Y>Nb7%lA~e~P^}H6#<2YHZm%?K%bN8Q3WDg?+<JEm9b zHNO7nP=<>|>~z3NeczWb#)QRYKuGlXR@wL;C|RgCnHeSK5L2F|!l?m0x(fE#7>#LO z@gu~#TR6TXrfGRNg~TtEv{9hIoixE9=kQy$2my04c8Z6)Y zJ>c57H+mVhZj~++R2bqFS#EJgbsYu!_DmL6R62>91E#cGY{&50&8b2`j^nPmqP3`_ zjkTy8)gfZo%~kFR>^Q_FUQ*9GMDSeJmr>V%cn|lXV#Jzc*MVSG`&N7Hy^XWqUWDr0 zs7l_}9`3;GCK-vD11Lhj|2!4XeI^(6dJbjoZW7|S)wP;|d1@9EgaKbsGo z=)1`r@*eNM#}~4#6aEsrh~v|MVshENo&KAl>1>@l4o`jEz1J+8O1S;l!<*#uSS6TC zleTYN-?G!In#SEe&8R)P29$gahNWM+GUI+y0_6??b|U?y)5Edz!lA98760~)ypu|P zi)UKMRlvs=d51nuSp>tFga_%6))#L1Abf%}*`186iV|>bLf*4Mo%EgMc?;Q({ozjG zg|#Jrh3A?iGF47l7ss~!P)KHRGtDLy@Cm=$WJ9)>6?U|0?)2%6yhpgt7B)2r%}N@2 zJR9~@If;=Q21I+-P>s0fVJ8PJBmXB-j7&Gvj&AV+y$FEB4i4`@fyb?udIDNbM)W?= zUUK;+&&*#hU4_o&vE~}UtWF|#U$>ufS*5cs-_QQ2V*$^=0AT}`2jk4|Y&C_&plfTG zv+9VQ{`1nGAC_P0F#DD%)tTd6e~-%#D0BHhn6WcPxw?T}{iZ)hY~}fiR*m37XIRA^ zn!~J5+yuWZ_W>2V_L4Iq5dY@#lFSF42>20uG%I;@Jjn^j#+`DhjXMlpL80 zM0wnu^OLoI@dv))a8B}*jBfQ|fX*m5wudV&JkaFd;s7E&y-D#XK*mA*zFLGxDuMgA zT1;OS?K0ZDQ!T9bJO>ApFLef0dxW%T zuz|PJ4g-#X6f&=z2ap;>QsUKZmWY-iZI19RFx(_}-4iE4X|S*t+Y-o%nuig(f5!BN$c? zPqh45fAa8i*)Zt4Kk$H0Qw^^!vEy*JFs6)!OBO3WyP`d>NEtV>rl#6*!7)CtU`j#n>}RCBJxK#A}a9dmiALxv~~o2e(G~YZg2)BUl)W zJpLFAJqpFj;D96P0v5AOAkFI}4u)q1b}C^GuhBLJ?#J18Qy|0y=}KC%%SnWx0~m~d zP%#gN;=}rG&YJiI5UakkYvjVZ%17S~oISKYqhvsrle@n;;zlFL7u%4kr7cVL6LPwq z6Arns%fystDv&!Zn;*jb$lcX+(T7cS?S+S*qztmA^{~vu9MN7f^-XT|+>IC-Vw_od zbm3^YRx3xU(XWu4`KpEIu@lVo`y>J?LRW$-5dY!D zn0T0g{2rwst&Z@(49-#+tRvoy7y307qqZalxL2nCNGqG7Jo3umlquhwNIiz{eoyc- zVLc8BRASe7-|>qx2k)wDUS;(Kc^s#mOvmO&^D)2_Q@0d;VftjP-=4C8q4>S}(i)RX zY&RN(=rYq@in+ZjG-mn9ZRX&>-kg*|70J8SQoC%;AW=n74?ZA=)}w&CYtenglZ*y* zeZ-(8mKkF+voMGmZpa;LZmGJ8o87mPXWdIstL#ih=STc)7nO?uv}j-Fzh;`=Y-(vn zcOJ`XqIZVH$=vJ~KKd-_6064kv0?SAS;R1VP;Nk+BKrY9%{9W@muf%RbW2+bF^taY zZ*3q%suJt9l-F*^aFThbY?s5cL3I$qOZ}D{l80&nX+^b|X!TUc;5oiv8aV9b5Z;ME zHPLTx0jwCPBkMzlpZ}NbL_t5a0j0o$Nc*u*nUS6|UpJqsdes$Jv~(q}B=e9EpS1;a zV9idoTdSYv)aHSYo6gj5-Cb=r;ft_|92t6@59w=&r0{rYa9&oyK5hJHkaL?iw$c9t zBme=k>{B$`G5b{?!{uq)sx<80sr$j27mo;EZVy`8c1oQNtnf0dJtmc{#x;!g0v`>sGE1z0{V2bo&p8dn4J-6#ReG+28 z9181YNxx=~JG#1klgkzrQp<*jct#!oHfhUJBc8(T>Ut4kpVPP~d4`xT7hA&(b(yzA zFh9cRoIIoRlpDLOY#FiyC?XC%n(CJoGR%ZV4OU(j ziwe;M8=98lVOF+u;=BwzWW5r9)qZb!b>guO=$x^;%@!?y=jAnxtq9{|EtR>S7Uly?%kPMDHaM3)@eVGpGpxY( z4aBxUmH*@`c1&Jx)kCMJQSTH?1>@qj>h@LBdD(I+Axj7mYNw?DQU5Th^%EfHiOk|P zl89W3C4%bWaM<2*aF_RamOX#&4!yt|=&ux6a8joyoJm_~iF;lpV8${XlABj87C+o9 zAidcDIN-BlC5IXxWJvb5k&LGir47lBe0vf^>EJrgmwHSCXR7{2og>;sexoSheRxQ7 zVV`*f;mmb+LF+!obx$>!eyYV~PZ+$84R?FCw*Qpc2AU|qs*|BQO6Zp~AnCo@Vu+}5 zS@3(6_O#oD5?P5iZkra~Y;N(Xq8|6|d-`QA6=_23AC`o@?XS|wyOz8lLL*iDND%du z4O7%1-CNPv;bv^;^>O&=5h!V*w?EYM)0LU!iriAlbo2GoP?oM{*L|wEJw>}g9Q93~ zAc84rt54IW{%@l69T$t_TYK|{I85z=O0veI+NuZ4q3qO)s(H2^*m;0seYC$FCEW~P z;Q(5-GlZtoOr_@#Sv0%iTP=3s;2pQnI(TjVqFEBBiFAP`WGI_m zwoW|Z@4@ajah#KgO%}+iic|ehVjpeLeEw<_0wlIGmgJSyA**yj7V9xZ`o0-)BjEDE zG2G8&j~_@*$rBR1V$_%u8k($xR(A3BZwseVmC!ISWTlKsPI_n~>k>bxe;EFC>pCcV zl=(tB#LKXOz94YO?Uk8j7rS_ye$Qamw9z&Ht+-%_?*!pas4{PJZj9La4Zw?1F!Zj_ zP^lH1hEMZOrG>|~Mt+IJ)7Am_F~|)L9TQQrn?-fBmxPXi`c2P5jg+G}>gdqrxpeMeh_dj~Zd>Ak{rYT=_cGk z1xyX>-Z7tTxPCt*!0r6b_!hh_*cyXo1Vw8ut76o8?JSATr)W24h=P^uB}zPp2~f8G z0La!)K^#Wy!)H5F&F&X8rMud)&?IIa03v8%x*Rs_7_J}KxZLbcFsO_DR&4o0^sGB= zPtPZ6?9dyCax5}jZG^#P18J%6n7_U}Dk{^X2mTRl`>WG=a=LMpClQ+YL5G zGJpA{@%39gdhe^559a0J0{;5>3xj4Jo>>e8;3b!(FiSM!Cu>RmGAB5B8`H4G-16MC zDNrI)a;;T{MszCa^BpranKu6~cSfh{d1K)uccADPUap-MANnJ&I~&uy42{=7v0m$< z^(oM6){RgJlCxiJt3~&G?t5;^5~H@Tf>@q81Ok1VS|Q-dte)!xucTYF4*25hvMv6B z9gTk>X8mjXTYpE)stVKC5VN1KbTtO7sj0wCd4GM7qYfh2N!10E^=}_*J;h?dK)FaH zp=tzs+^cJax{dw0IX)|lH@@WN=C>z1-Q9L);|o2!SCHsW93dw&F6PQ`trF3wse_n^ zCX_MWmSjw%#?D^3%yERNG5v$1ZS%i23LhR3_JVjdzotW8FaaZj0l-@Ho^JviHnFttIKmu9#Xu| zO}%_Po$WnN_C%#&pO?k_PwTbfw_Foo#J4504`R9O=>!&n{+Il{RTgiro5UW+ZL}n0 zJ}cLRH8HznoF%!mXq(z~_mz^FZylZ|Qal2}Et_LUT&+9zn^xW#`-q{vNZ%dQBv{%C z(=mU<{+?}zg??cchgyr-Ce!p2XlX6&ee$wk>LB7thGXa$?RmSJ0LbzhO-1e^GD)^U zM;{Zo|K4jJ_^o!F%3Q*<;;_yzXdQ;%>+PWPUI0d9hS0Gw-}wRoYu|ZmXMlh;e_3BY z@d7bhGq;q%I)*wUgk47e%0lY9$ng`5m1A>E@s}M>3KEgvK4KFUfR-KS>c~xjm^^v1 z#$){NkTs5DIGZ$fpCCrKACmSMzL_XwM52x4kMKLnsRDusx#viJTnS__8%=YoN-p%y z*kzQ_h;m1+W&mc!6H0>>)h5#xsqD)N!LNdkT-%QNXTD2 z<#_=%nwXo`7iXYe*yca?;)V8<2;5ms|4LUi9wah#Wl02t-vG@Ja1o?XNs2#fP`#ko zV1yeNQ6J6D3^rqu%mHCB&&tj!>Ver*Ff%E<8UTT5&5XHSHaGbmGf(EN*B{_43o0C_ zb3Dt(ruXVIfQ+?JxdfYriyHHXuIw>f#}o@#w%Y#0!7S)=D`|XpI+Y1|Dob|!%rh!q zORq8olIF%CZo$96=xcoSo$wS0yvf9tWnGbHD#rEyB<-L0$03E{Up{S@;5<{_%C`$? z(uZfBStO9a`xM*U>D~MOOxdS-OwUC6JliC7TcPjs$rK!glvD4*6KVghY>8uK!##2O^(B@`W7lx0;-$Oft_Fef2fHsS};D`?BRi zoqNn$@-u=Vr#J|@W$Ey)Pv_^M8}^Tozg=(A&G6Om&XicI>VfXQT4M!y0i6WN#jHS+^9ZE6?In21jcxM!5HZUr^l*7X=&i=Z zj&6%qlOc?E+G969xg1EJfe&~JC}eR#uHX8~YV$(O%j}x=sFc1mvS$g|OyWEl21@Iv zch1C4^7i~jd?zWuj;R%fo&O{h_v^2&AdA$l4L)+}h|9J~{GYA8xukDXeSPh0TNRw! zRLobf%6xXvfg(TML629pxFq(Xi~V&{>5sKwFkIZ!$uOHDCe~7Te%bgJXY43+FKVwo zUDWBEfrIaPku4_E2K*d_`dHBSU|+d09CgUH3=7GOz_P1~yq}#6^C^$~bwa&Dq%S!# z#~)hpXf$&!yx+mXZ@!eKzx{PRYdM>vvDdL$e5de8imd&RCOwTqqt`>8YSW=$3@TjQ zFv16E`pG*f(&ily!^d;jluqxHR~+!q1h+O98)Uy-#_S66oRCk_W3I_3RdLF}#B+mS zp(WMEf?rmBR1DIWRs-N+DwlJ6SBgWj?%X;mWlZXS65Mjda4N+zIcw8Mi~y4B4Q=-h z+f^3;7OX{a3A0}s+0Vs?=b*K-h`AX_J6JnpdmA7 ziGa6}yqY{kjWa}vb+Jb1z5jcx`voDa$`PcF{<|h4de?qi{B1`4`#^ehTeu*eJC9rG92qt26` zO~$UejR{|n*uF>DcgxqYu6})4*tPlX#rx#THDSBAA|$c4MFwi3G@%CWq-WG5{3@zB zu(w1WP^8szXWhUCmjNldYw$Z>b_JS!MR@&+1C!ZouJDP;Ya*SO*LR3ih>AQ1`FA!| z+d|ae-iVVf2prHBmE)}>^6d*QD^|TOUw4<`yTf>oIDg%C?z-B5GI6OvGbFfr#wil? zSLB1V{9fR)!~QIjEspxrxY!NmE(A(yuH|>g?mlz))MO1Ufw6<+AcEBU@HkxN{n~38 zyPoP&-5}$DM_mOFUw#K_AO(u)^(#)(ENr()?KdeqKSQ#cN#lJ`ziYTChzH}}GFhVW zd6cszgSmv5zXVly`iI(&k?NRZ4@%ZHM6T7ad5EIFPVPc1_N{cu^6L_w<}lFX##AzI z57xB{)FzQqDbh?Xxp{Gfl(T z0)$>8kCkJtcji4M|tIj?j;8d+YrlxAmeXm}3 z_jF&~S9fa6@LTFs|DSa{)%tdFpUv?%aSyoe>A*tgjOUp(u5GwUZggTXFn{}lrJcNJR3g>RDd#0i65YU z@%L*H>}}Bq8ed84?ro>v&`^qd6}ePfyrJpD_4Zvn#`a;=147bzd6buM!f_5r0}M<^4d}&#c36*Ii*q+zp$i}54mdZ z!a-YQ$au#>E%yFIX|WC~!}Oz#wVnA+sSh#4>`jsJ!#6JagL8$pzV3`?1vRcd@YXm5 z$XH`C)gC#s;0~tfFQFMhBm;ZDG<2{r=AXEA@_Zt$H~dC6H$JbBoF5y8#d^}G6S25H zCK6m|-&R{&Tk(kv3zfq7*@UE-$cKxw{LJgd#^xW>BK$ ziFCHi3nJw*eyXRTkaKUMbZ`_+n&pXFD0M~WC!(I-AU&GCm(0Mb62Y_g9{LyoQ?%A#QVH^uQ ztbci#ym&%QWJ!d4+q@958%{3_;8yU z%ft@b7G^AN%>rZ&k`QBHL=yxC2GSLR9LU}sM<`yohwH_Ep1E5BZP`2k&E&@tzhqEB z`%!W=TkS}R2amid%kVl}2N`jNj&A|Ho17cmAlmYB(#>}`xQS8IRVe5)#kHr?7@g7a zna{S6fn1mUTvs`#c|nFj;iPTfw~QFHlU&r0iz0~psQCSj0|o%BjN{gWt7IZQB!GFZ z5E1Xdyr8CgrdBDBd8+{jl>;#IMkumS%MzbB+$R zS46!aeOwTCkh2NKN_IP#oJ|f>oa_3+e9+e?D=?fwvrwBGQgu(#um|q#pCdSrf9LT0 z_pF&m6C7VbP7tRH$cOX7Uu;a{0}_Yb`D z&kB(GR0?UJC~D%-Oisr#%ITEZVvxi|E`(N?a;Rei>(UMRR-;rh>?>ACtJ6oBd&4W=(>?`eyQ^w*Wd$Q8JLu1K+`G+x0x5r#myhq1P|D6tAF7= ztpDWP^ZC}nzk543$4Q*F~Cz({xM9ao{eeOb+{{q6X?ti7j^y&;9g6m=kX$hC+#Ft(mRQ zc9+~v;Ic2>vAsFqD*az;)SC9v>}J%Eq0L?4C)xr~(nXqLi#P5U1XsmEy`0o37`jZK zmP?t^>7&?N;ku?Xa8|FJqfVbV?+CggCl4}k{@hTWG2L;>rf2t@c@*uEtA~;mX0gC$ z3-=G7+Q=-W>F+kfwGc-aBSb$O)kP4}wPbB!q-iT)lUt=gd;qZV zRFOD#pNV>|AqKNp>$%gFjX`PH>Wx&r{kWz(fOi@cz$U7vQG;+VM@k@Ou_1)_CyJ%? zag8fF{i+(*FS8r9t?UqbV+-Y}+8uO2f`1tX0txjQ)AIg|GWU`ha`oe>ZSEYnppxjs z^Xz>}MwU>jU~YfwAH&P#c{GFo&z3!_*s}^?+$!b7d+tmkc!3EQE8rK4&-rA(y((S) zUVYTnHNn<_2E2CKT-*oF^oexeEq~nq2Bqbyel1w{lVgxK3g;k;*`vS#V$!V4p>H4r zWKMtj^1X;a@up#5$KAnC{nF2dp`hLQgfl1#z#SFm*jcTLjHE$wiWwXG)AgZ{etC0b z>emozf(O}{!C&Mp+pzO{eD{jViO_1xgacjf_uO614M-}<_o`Z{iLpl51&86ALV*(l zLNh+~zIW*5fa(=FCm9OSxL%Fl&Zl+yUo@8VQ_DCAY~l!d82R1_RcalWA1XE5e#Aef zcWuF04VU}upuFd+;c`nFSLI!3vDM5*0aPP^yl4w9`alKs5Sx{g?6P6JR}~{Wxx!yU z93K~BN7GTxY(l_M5gTd;H;~{)qK}@$yLjJaN>mi(js`m3AOw^QD|hGg0d@SS$s8ri ziaT1&eUZ2U#|T{#hvskF`HuSycmth5Q^jDeQvDLSL>+V%-+QfPg#GcWK~+n!Y~fzY z60Oj2l1^|s*M}^4&e&MNfCrjUu@p`23h}SjDaTCcwUMg`z^)XcWZXjN%hd8(cH=}W zd6tU+XvyVkqwRc{rf``K)9wMbgCEY`_+c-%7y_)dft|+l-7f?X)`hfzQCSe?p6W8T z-W1r!)Z{&)24PC*-5uif&Tj|GbX&&FlMYO~KuTCkF$aoXot~Pht;a1moNSU{J3%A9m;T6=;2h6XF z$fPo^yjA#>mP;5PV7-6#!p_$D=5BX`CW=@&F_c~m9Q?F-vHO}dpo+=c37>CagtLT& zDw^;t63EOB1^;l69@JcldSCW{Jm@=q!xWynmmp6B@|2wX8FL`chU#m=NvpYbJZW$B z(VC0Eq0G!pp9IYi6>{jmuBa{nd|)zNYthOxh}M<_bqANQ`LQ9LECV?2D3n~J@i|ziCU+K_dMjI@KV_Sy3URMy~&#eWB^Ji zG(PGFS`=G5{O$7IdiJ@5B2!mrX@u#lLHr`_e{Oh#3Q$U3p85b)#O^ce-`s>dARSq! z2tp1lwbe9EifL;T<`WPoDlbQ)rKQD26<7o2{F2cUtA>3Sy23+?MY!9<<}(9{U&FRh=-SY(mCTw0>`kHv$8Oo z)BPilK^YLOQnH94Ds2D%tb}ZFD+$`-JtPoB&@G}_A|}GL?+S#AOh+hTy6vu1UaU^p z9#8$(F8=)!$e~a%4d~tIC$!gX9CYBq`Xcl3{I$93FY>T=IA_2=fjM+u#rVMgNI(j^ z?<52=V5^G?_-!lmUzSY?k3ZcS>}^7xsFc^z!Xy1OoJipC1#PWlFW~(8_B^G4Xqxpa z^h%y@hKQ!$goyHDhgd$prV87@fWM^LSz0QQ;Do`dprTl+v7)We@2vffUEEL0Z-wsu z>R&?t=RHVa|3X3qzy(5(ECXCTZbW269=y5(u=-(U&b&i&x?>bWZ z?Ogf)*RsACxhMg|2gsrQ_g^U6UltMceLh=cg5xpQHiLDLQ5W^!?w`sSd7?~jwY!?U z8j0TCf4O7!!+w7cH*komp`j7AnM|sptXs289!o?H?aGL-yYfdm?Ho^ktfW4%5h!qW z!GGtd%EUP&IYS=c|GMzaa7i{|zn^~or1Ka><8P(hz@k; z%CdnOxysgT0B{-hS1SY$lt;a%YS;}F@&SQal@Vv>*T{v;U_ zPT|7ok;_kth{_{^$Dr)5Xdv9HtSoSV7`gd(aPj%>o6*ROBQi2qjLR zq-0Eq$O=kdIu_%<{w% z;t$9qt_WURa6WH;-mN+3HNmn1Ug!TPeDm?Q5R>DPltKvBXy84*vtzv@-Tn6$9ncm8 z0w+s@^S@hCN><;vyAzCvpQv(Pug^=^42|ZmTB`wfbcj_MWl6rC-QJ~|Jv>c+yF2qE z-~YC-iTKSXXiK;vZhYfxzPfbv^@-Jay(plKt5LISesvr%JyQ5!q%f%S%_Ts$rQz1P z{etH4@tU*7Y#yF){@8qQud%kR|5&Ym z8S<5P|KmIV|K`iQ_!?IXd;4;IgV`q~>^|PX#RpQ|d0oCBoPX;_-x|@s{~AtSYFr84 z|0NrE6rNlZL1IQofIlDY2~xpU9N?n1n{Su?N1KAom>lSo+!TKO>XoP98_%y6B|I7M zooq&y`}hiHCBoohJa|xtkCqZfoRwj3`lqHdf&a&wqLm`-VM6X{k@z2J{1sA>ts#L| zo?boED6?OD1RM}+x`8QW56jvCk=4#)~{j6A76FJ8$Rr~^*+Cyp$*q9f# zuXQTwuD{%jOO^%p{;8+wdFo@^Mfh+ghucSqf<;P{F0V0p5;}v(J63LF&^ug*{3qZ! zbES%^-qNw+3%TX64sZ`sPW($!&qucR8O=fo(S!Bq=cDkEz**0ZeahUvcJHjTB5OtX z`pk9DwE>hmdshA3>#a%rKGd5RrOI2UWOmCs%4a<3Ap^0FDjyM6ef_T#J=^WbJU_@n zqsKhm)lc8Z7bEB!2HpWojM62!BqE~aB6ibs*y`K7r4OImoleP#2PJ7InJUQ4a`s>7H2dJGpwP#N0#^HX0WpUeB5K&QwCq(`!3TkRqC;* znz_$GBEdYEvkS}~6zcqEcwCI(6*$BtAsQ8Ue9@PX({qjxl~;NSZp1_Vyd1A8{e8s% z^jv#wJ%@Fe8yTLq<@rNn)-=lNlV1To$juHB($!X(IA&23L@FI|p}vrCtwV1GQPK%0 zIB6btUh2|ARhXJMVAwg>byn`=8h+^iP*YVOL-3o7!G;JL=y$eL&CUr5ncWBwt57?j z?CEPK9x;qHu=Xsob3%8wU_SK2s=vRhotj99_o+G1?tc(w)l2?}ep7qA?FlPqDjT1# z!WClOWR4pzd%VEvIsBXDs#51`I4i&y#Tfp-I9MvEi5070-s9}Bx@&X3W6*U~6#s_| z+>nH za6i_KAo~|(U{$%@BDNYmBln}0x5P9Z&yDWAPyuCeZrWvWU z(;@q^S`ffMRe(>ci3aRah9Af{PE(KQMRujj z&bE(nONHs{to@wJnYz5|UMfq2R&P+aA;iN^oJMAOBUP->$0YP`u0zX_M3mOowuj-g za;|#Uh#)7VT`PMBjgj!HKz*~&MB;4E-SOsKWgs}s9X)30XYJLfzZfd= zAZe1#al*9Fm@?Vic!io(ug4e4uNezn27Wk0i?K~|%%8Vc`Vq#WJk{h@s1ETynLa4* zM?)fb1DS{o%sb8{zVfr74NiXDMBf_G)45J+RE8fO6bNkDyZ+094^iUlH|<5~G8~O* z>|#d{wm3@CUx?=ZO`4kQb4Bp5>1)n&AwtA=Ss^W|5oy&0s2CUM(YZ7_i{q5Pg~)S) z2x8xPGNCugIQWo%5IqJ3#y4W=jhUYi$HZ_mFAaNERKDjjU5_k3f^q|GJTE=Xwy)Tv zJL@#}>L(zJdE=u?Ex3uX130z2*BH>N2%wd(K~F#9Th9t%hA75}|D#cspnSM!Od{8( zbqdvWZ**H#8BKAva0?{(1p8#>tG$QKG9`TBlOQW`D1N@!H1>n5jJ{?RH*XX20?TPr zNw0iYAvf^NpHU72e>0KgL}JMY-=#+lss#> zm6?lIXBpNNO*z36Wy3h*x!l+Apd#Fvd(A(ah3B4PNo+m%=dR(6TN6!Srt4g)a%SG< z>9;b920q^OR>uc41CFB_h?I0QHqxgeqUq`9=I}GwF2NnPq-BUiwQ)E) z(0w9<&?>oWBi+7drUbXJdN0xUk=A8AwPo1mbz(%dCk%qt{^ZR~;qieF15t;t=6RjN z!`G5PC$sio5gln=d4mN__34@c#HE!XkNQvr8vujsisCOyV3oA^pO7PLqL#t!f{)1p zOy$JvXbQ4c#BPtkJjX7MZ<6*-#7+wj`7W{{JN+PS#X|;|RRVX7 zn&WkAFQzd<-|-*BdNt1l2IF5XNM|>8TRc2Coz}1bdQ|(0k%R2E@Wu0%*e4G<6$gC>P9o)mNczOnh*35x`;H>Os*Q+8%gsD5!3U_Lc5 z8a^{C6LNJ$S8Pi}ZHfy@m@S8!LNB)* zUSEg9yyb;rd3>?HbDHcVkE@;EVWxrTL*j$Thit*^?^B2nk*09VgVh<+2~fW0$F)}f1|G)%jR zaz`0Xh4cM_=I}ZUSm@8(S?W#~;QrOh+0n!{K=#@Ry{(j)HzYTiOVB8L5cG>_+c7-e{?hIjQD{`K;EW0kl`I|T zxYM}X#VQXPGzV42;kb*z}yB$ya(q z|JZ30LsoEV(tlv-DP%^7QIrFN;^Wmf){h&&kO9v*HBTb=?u}{cOg~MiqA2-)5R_Y3 zlFPLu*^}kU<*HkL-5cMwDl*^A;c^E%2*Yg@D~F~AOi#K~AETO=a465h z1oGEdpYlQ>Ofm3vbU+nEd)RVAw*cX7#XjZ@zyik~vSvCfOG(ONL+p!T2I$NM+A@y# zYwL)AX(W1o4Ig-+RtZ-)uCiR)5{~vjRN#CPu{=(~R-5o3d>Au4aOg5Ih-njv*kW}M z(-I>-SL!?y9)Fyf&S_pEidp;nBNO=|aU*u$pPsM*15F8@ua)bW=Rs%8ceof~=U+>g z{*`hCQVJv>WxTkLo@prUv=x{L*XOAWtT~Q#Aq4VpTK(sP*I0*HuxkG=yMVc2ACVkFT zEF~XkKWMlH_sS>umtf;i7a$M+)yj#WJK$7M>ob85AEaeieM|z;g3X-7Og!+ADr0Mg zWW>h~vm19vX2AO0!iA^-Xl_7s3Jq}l@9TXEN_n45w020nhCtJI3ejq`$=uy98eLr5 zo}=czHl_rLXDPUPd%~Ju*Rj6k8zSGekDw8ks)ZD3vbE_hwBbvuXy0v2@4T6bwyt1j z3La@Ss=&}HTdkIl?vF$kjP%*sJ-0ktM6RA=(A;oDyDgD!7`JPDR+h12s+98S?Mpum zzMHR8g|-yS2JJfDF%}mE`lDQw5^hKQ>RwKqwH^>y&(RN&3cG3z_w?)L&}| zO;KRGK-~ldO_3DbI&G1b^SZU*0J@QxgO((%)bhgVni1D!;E zH}v$Q29zs&eGR*zVJf01qG`fN4osDW-`dp?@$@V3!XZp3U?NQ{Ta0aedEaN(NJMeY zesCkr3_-W&%=Yo?SuJwj0M~(Pi#sMQI^n!9WHe^@`yXuT?G!DpqnPc@I7qr@mMVq%Zn4TTi)Jv5#zM+0=>iS5Tj4|k9oE?6w(;G}G6 zIPx%Lh`zZ7I1+@N57b<0#Cm_x^q5|{=-CaaV;Msen<1!w4B?RA+xO%yYiC#-V znJ6Veis&@7tXzBUiZntDTN?X|4s?J`Ny+Q03_te^v-!|WC3moc} zyo<{6XUz7f2u;i@<+*f$?kCMfuAcjhPVg#_CLVdb+h}zpwkDUO0Qx@s$geZw4JZTr zaHVM3!mDcAcH}*%nOYh`<&HnN{~0N)LDnxkqofQjUWR$;@%-pi^?vW{9LxCXY|)E#gbJLgfVqmun^Fvz2i zH>3(>JKscnC=?a}vHCwW)DSUaFu07rIJfL{L}lA3uvLqCoP-mq;{dA?sP@`$mj5hq za~Ssc2he42DKF%ICl|`aJd0tHWdvBMX)CNJ)N>XpFVs@)f{J+A9G()Vgue7w`OCH~ z^->q$@!$X|cEAvx8q`o7Awovdr0s(kT-{r?F>Q#^#GAJm(iN4cQ-ozm|Cd@!e!GIk2t{s5Lm8BZvQq5#ei3jj+QNy1GJYJ;rFx zmgWqr22yA!Z0f`kTQzq%5so@?C>S8nw#u?^LHQ1{eW7tz{;U9RS+stLM zTQuVg=5(v8n`qZZQI?0uHCHH`M5f4Wzxaxh0jn^nmyU(W-qlTw9u!BHakU6OQa8ml z{}6TX2<^XqWA%B=vVfLo!^^3MxzzrW2mgRlge(qsa^%%CO?oB;RhgVI_40&XVkPAZ zE%enE&B4`Q3)&Ky^#RL!hu_jXq@&o1e|?cOd~C`kW(E}?XEJpDMczs!r_CuHvq+d4 zJ=g2QB)t*XqYfc0s}tE#`}wIbvQnM-tK?(Hx0dxKWM(XY0*|X>o`m6ou=aI*+0(M@ zc%tO<RUaR(J;ms zfERT@56*CAXuJFSG1i1hDKT7t`S5i-49409u4#W`^i@4Zchz+1Lrnu1*Ao)Zmg$bkNp zA&eM#s64b}<0C|VK|{C-_Ww9vGm6-Pnc+kohLL?LaVC!kG!+j-{W+dJK=R9OyJp@IFW=RH2Cg4dhI}{88DOh2qUA#2G%Wq(f}U|Ye^CxYs|topMu0I&SiC-g9SML z#wbmOClzIc7Mx#18PWN;)N3B*6llgI(}*F0?Fscx zzot)cx)K>D-L%oCHY`rh&t{V;`6ls{QpVkPSXU}<1rHAy=|T>pp)ifuOwc0xdhb<< z3MkqzKlnnbo5UQkWv5gZ;Y8e}8H?+t`R)mppsyc42>k5-n_eHc-g;cUKw^(@9LiAi zHxRlX1uY94J#X-*L*fuuQgqA?c6i?*7Pz>CcL!LarI4>@Q7P|-oT3004uQVnL&tdw z#++YvwoX(fWViV(wf~s*wbtIyG?5lbQveaW|1iGGDZ42I{P>Gg6YF4c+%G8n-oVfG zHn+GVv1BRM8i()z&h^2V>#O#0#GAqpc;Ztpso(7mmpa0Wpe=84QGc1l%(b$%BSXl8 z(~}hQVSS@w6pEbW2Lwb$!dg0O$8l6Ylbfg-P2sSOWJzPb1Zmc_$bJ%)#sSD(zDU`< zn56<@@Pj%QRw3Z{mov;E zd4V+nG;$`D=x`Yow8P3z1)04ra%2v$de3UwAYJ~!0NAJb{*v2Y5m%9cqn~n;?=+xH z4l-@d@Y2AD_#PK`HOW{P5?=DOijy0uoq@3-pMYkz0S^TnI7d;99esDa)sXH-U?Sgv;t6eWC26!MASVI6MNVLr z>ymU2Do_>mC%G=OppfCGuIU;QPOQND#q8j4Ir!4iSpvIpUKqz`mEt2iFSaNB<|4hs zcP|yE6OVF;ynUufD`dkL8+Wsuo2Ced{+tW%^7w3IG3;UkEvoF9f_}w|DpjonZm{uM zM}@74y6FR!)BWq)>dhbpm#GOm%HMPCkD8)#P$(Won0w&RlCOI}6NT*|8Z_t(8zh zNla$~+MxPI;cpE10r=h?rVjxmMUezq$c?#R7k*250z$_cU|PhtVpluj9BboEIPVABB)Y~qv}f#Cs^tncYl7jF?5Uf`Nq;|#x@a>-A6yDmXTgikHv6Oh}}Dus(GD zhl@`z;+X-(5M;@8vBZ}FwFk%Jsn?3VIzXX-cQPgt+c);FHQnn=mhR^pH#9NV{WjiE zV({epdsV*z0w63-5}&bKjQx{wG;N9&0VQ?S+m0 zu{~O7zz`Pv452{aJ$n3fJ6Q1CS+ar**o$#}^rsqz)gJd|x$xb}sQ6H7>ufv_zke5s z127m~{6GO5pb>2+P4QoJj))(LC9YJ8*xK>FI)hQ(QK_*2U)u8Blt}`Z9JKkUM}-k} z#Eve@%rwt6phH2(s8RA(9_$SF!mvW5_sHN3BbGLL_x;jQIcSc5+@+6>R1vn;aYX_w zHFsw^mJBnUUlDlcoSm%WBM!XC=hkXOPJ-J()K-SGmoUQ;P>Wd`c&^BL0I6`mrk7GX zbNeE{)8e-D8BEm__P+@8c30d8_nJwZVl1tp)Rv~sB(x@sBEG$iFMidSaUUVQfI%Ni zV1zHj`Y8ogMN`U%RKU@^k)`@*_(e$Jg>qHMUt0X|# z6?R*<4a7iMksh6g-;A>c7T@#D^61q-D22OU#j;T9Q@k|!sDtBP#}J*Irww^sV6m>t5u&u+_+1<$A)Uuh)ru z!YDnQzvq9vI0sp}NM5BlPRM{Pnc+N5GztSgFT>aerN+yXSdvm}qcHXX(uvnrqOQn; zi(kS2MLQr0v|)%kB?J`!v467FH92!?1InaW9q^qUu=2p<6LK%j*qIuA58wk!pLkAX z@rYggAox4Ee7C66JmO`~amk4b;nYj9lJ{q?3PPg>IE|wfzsl0DG%4%Z2|+ zE+?El?3h(bokv9-Tt;bA(ht+34n{(oq}l!4MSLs?G9U}0CO&D**(41*3sjiyU5R2` zNV7Wk0Q9pi(O@sPy}pSab3~?{O2~+gGCcn$434=p{antFXH$_>MMr0C|zzd zK+K_+MWRVMm`N2X*eo8uc*oQyPm~{vi)Vp``U5{ih;hU0rYq{xi@^8mPRvutJhrhn zac*2ZA`A)LsA37*ZWXhS$*j9Wb4B-6X3s;=*Bja*9vL?xT%&jrrr+}b)*KM5+yEMnJC|V3mnw}$KUwfn6JIO6Lbmo z*%utoYN4&Nep}883$%^Kg_p+D&T+ks#X@Mo9xg{^lrdoVGQYsuM)R~v#<_dcaf&}Z zn(q|)v@y+{c6+koFC94UT~G=OEpT-C>RR8ue>&bEw~uzfp}x1(w&jv-OuYD_!S4q1KoU3@fvfUsa7#&EY9O=d>)jj?N#=KYm7!lu2ran*gRQy)$ zZ;hM(0*R6*t-kizyiwv``*<`)%*{y>yq3OES9pU7zky^kpL;JO0?iOb$;u zqQVaN7}~T8kBCn4&C(^M!S@EMp;Lx^W?ks>oAE8@d1wI6lNIoDS)CWMux*?REgez3 zww^JT#)A_wx! z&CBkqT?cn)z4>qe=9)4IW>T=s7WY8@iGGBgIUB>wY<463o!5j3qdvT9oI1P3F5y=x zx&Cs?T2bU0DnQ^*^L=hSIz=w>;|0!+Rh+x<5iglA+B>k~wwH=j(-!Gb7XZfS^Es4Q zizuuyYVkk7#>{Dp`v$tV%S(I4vjx`iGz&+6_!%qcdPn8Ku_FIT4)ti_uF%SgVj2b} zsMm{qgUHjT+XyH6Xkpnla{dU^hL(Kd{Dk8=g8h^KSkB@YneZ+JY^(3LVO!+HsaAhO zQ$^O%-r>ES70<(lUbh8{nX_9w@Oof%?uTEZMgF)N{V^r$+>T2fN0{w(2a;2N8+XW- zQBD?N^Z2s0zH!NgHYCOSh&w+Azt0*Idby(|=&_HF?yOKyqnH2EW6^+O}8>T-Tp6UM$Kh&V;Q7C%(hldRXVgxc)iw%$&&{Dd6!Lw>{lW6qWVi{A%bi1@>j| zZ}wZ5B>Z%7El!II1OBK^qge3%lPo>X(5$YE;hxKU>m0`0;vt3_UqA9KZ?W0ZJO>k~ zuRZ)Dk;DFZ?l+RX{rjOi&iVHGXdU2WnsmW-M!((e0=!uyddv>{tp_N_`iJz}R*MlW zw0m5=bm|O6s;LhwT4qgs^Ie@~rd^-PwU_GQB2;)ezo~l~3=QxsG*~wUGUpYyZQQXO z&eS=kb6RGtdBu)FIG;DxIA7710^v8EF|e4zlRt*<=7p&LeWj_}S)1a=i!0N#ywiID zEc32O`zSE!>bLs4-JSOjSL%|iY4nIZ9TBHoTE=Bqi~lMkQ=YwaSQgAvH@7w@g)*)2 z4BdC9P)0o+A?Oxo5U`f1=IrU|t-%8He>!2`WwWPg@LD)TUE{kt4sk_U{N1^&VNO8TAjhJuf;L08_&4TT1-i zE=o^>4<((fVj6YK1J1XBc=lvCcoA4hzWIJb6e zAUfjx*i2OBcvpE7%6WR*Km<4o=)FntU8{K>xd~IbreJ=|23*G%pZ+vRf6&+BRM5Gt zIo2JUI3&`=D!s+Z8#*jNI^7D8d@)&3xb7(VS-QwJ8#wLH2y5I5=$rr!6FMs|+_qFK z5`DeDa|6zfeA2eIjc^2*McN46cJZ>`k*wo(K9@cB9fHO>7wWn_J0!B*g(0qI`|$4o&3+8ukv51qH@qFW!a(>aCBV|DG**^tnEO` z!PhY5-B%gkG1aIa?q!&w|0y}g`adw0+Z|_={p3S!GF24$IH`z@E&RLNcM9{_ui(rN zVsYaQB?-3wsX1-}|2q_hf#finhLe?MO)zXcT?^w$i28vhzIIeI?r>VK#gFbac-<3^rnXc9$`_u_GHXTYP&ZW$}?@UO}FM0BL*(NPJ4gxuJ0?Hs-DeNEuR#sLGCj7+T)``6L zu;in?y}bts|39*PBK+5*mGutvFaV52egq!>nD2^+He&GwFJT|}yN*1mZ%7aTzjpJt z6FobQw^VhlcqA{g{g?9pjhgf0YPBArPSWRj} zws>QEV+bM%a>n85b>3W_c;KoXlfI0?uloUN*f#F(r=7itL1^~|n8GGXs$;^2_C4nRVD6wx4YjQ?ZS6}}fZ-Jf>l6z53?QOM}p zvn3PNOz62s++Geqq6~8Uk~*##*HGNEHbC6`r;VFm_bp}4-ucsW%{kdJUfI-=R&2?k z?b#(#_2!Q~^=|4WM3atL#mf%Ny>)Hv#^xfrA+q`LU$n69?^?Y|$iJR3Iwu8!J#E+* zm2t7n?NR2>MEL|VX!<^{rBBGbnEZg9ng8%`s6J!;^NP-U^kuyP-QC@9($!uRtL@~x zOoUI2#e)SX2!N465vL|2-27`{g+^;zDFUXDUlL^Clm2?ay9HR62xVet$AN8qz~=Gz z<{p-5kMczQPBx0H)GL>8;b{Kt$~W)Z`gdpV%X`gb*s5}FLX2c35SREfH1ld9$C1=3 zjeFD=k<{a4A`zB9)y&thC>`%bx7T$33k9P$L$mARhEZ@AI~39rID-J)*oFZG-zm?u zbU9^<(xRSZ{aQyKGc-A6>I9KW9pJNo5?j3jrW)#AN(#qEG`k`!8tLB>uC9z5u+%I+ zR*=p`qQH=jFM<6ed+^#Gn3g5=vb%mYe&}n1c=0lg@x&l2=5ntGe0oAh8V_|o@?qbVP#NDD;fOisu&3ZiC zY{YT_LqbmvFXead2T{c}dtCVaVT`2Z7Tc|#f)1`&V|bP&S8d^(s{t4j&-*cPH#k>& zYZ3iDU(WvCGMXQ)qnW{u{n-|Ki|mzojR>{?M@QI~Kru{SJ@uBaIfJX5o&BrIUP7pF}B?``Xl1Jx$93)nc(K_F0+(x|+gCEzP6#N~N=-h1aqwabtoIsvUE z@uzZ08w-ju;RkN+9!l&>($!}bN~e2rViE^wS2sQ$)IiM!E9O8{$w{R}7Dq zHz&3dy?)jHU(mejHRe}B9zyZI@97j({vx=4Nf*59_tAe$FLJKKv;O^=tD&ZQ49dd? zoTq+W6{E9FE$ZyVFKwP!|K=z`bnlh&U#M4T3AxQ7VdbpGr-yM%&1|mscj|Xf7~&Jk z-nW-#F5^%C4|Q)D7uDAOaVy>3DT0J_BQ??>0wOKlHI#tTNDeh1D2;RpNOw0#BQ(0R0g*j zTxYNMm$!-xO0xFNsqQvR8;|Eiu9nlq*&NEIz#L0U3x~&D3(mFgI~1z0i)*NjKb}+J zc;D^(--G%$v3Lg@bQrwgU}O9IZ+7UK=){TtUko__$NbIj{G6w!)l&NdpN!?mV*EQk z0MLxStP%iK{s9sG_2=LC-fzo?H8%%W@eigUNr*b;Y7HA&6?l}!WZ zCS?VB{zmo$reklJS;C)$SmMy|y&?|R{wmsxDE(&~7#99>eLfFtG-zr`lQ|5%{Ivay zY%WA@EQN}7H|eMEi(PG94M`4s2{yyg#$01>>fJ(&5YnzUMWqjzZg2VwIxx&6>5#(1 zwHr$wJq<&G^hFQE7ei6zM6tS%0CMkgYxd!B8pcZfy1wVLa2GY&8C6H=GnR z$V8Ao#g1njYIpj4QTdz=tjhXXu?r7_?~s&TqPY>FdK&3CuPs0})Qcvz$xq&vZ>q7L z*r$kHsxOjyI!;OnS!6N}#$Dam9hE`d7e-|gP4s^KLl5_{n`RkXEciR6j@YxfQV*Nh z*enfZVjlT8GhCmqCg!#p8i!@&Wqk{rqdq0oMLw};bY|yAVFjrRM$jK>1AUu3p58$d zgDZo(q-b<;C-t|>Z)=8TP=fTro^=&$5LdGovBUJVDsHrEkrFRTtQzO>&?+}ZnPbX^ zTW2WC(B9U?*hN|RT-3$qC~C*_mJLw!@K@t($Gq9~R{U&LZR`!*r++aE@wx`j$`p8a ziF0~->pb^=Q!xHK8O~dFA4JD7h`bIwv9Jy9F&yMGnkyX5AfNYxj!aytTn?1oiJ zB3B9U+18m4__sb){e*`f*~DxYqv}<1wLL~IRh?Qu-8aTbzJ)WG8fmtu<<(f|g%w1s zzD~MjPXpw8t5;QKR2qj2ROPk3Gm4`Ei$oVnrYf~H*uL-PvVR*Tu1h!%kG(k%ldBs-w}6)o2$FO-G+Y*W%7#P#T4kv!6#3wW7J$|9l;}@!;(Q6t|mV=e|N+ z-{C|!*;}yj4>rcO|80o*PBUD}YR5WMeJIz~fIfuj-wrYVL&h*UwK38Rh9`?)`cm8C zsZ`Rh7C$cTx-2uEMx30|hJ1XAxpBMy=2tRmgIb0aNtrUrA7Bg<4z*w8kSdi}pQsOs zmOk$r5L@TT4Kv0Z*w}ID368^SkO$UgaqZLkY+OuSZ%4Xd8$w6tLvbq6a&FKi(HZBW zOjl!lR;P&VmkI7tUh#l0UN`8bLQDcC(w!(%1vFz6Un|(eH`4!wX|&DD|n_azc*W|ck8G@+rNaH_Q? z2uV7&9=|GB%*%2nyVXf9e<-zhA$R9EeE4)o*fPV?px`^9&b3~mWL*irs9M2D%}A7} zC99sWs_pY`V6|k`o79bO}RG zY1#`JNm39<-we>IjsT34QjF~aZ5nEYg(@9zFUaMxJhC5$YIYwrOa;>6>oSP=d|mM& zLK15G$%(8%4=$aJjx@Th5OUL&yYm?nL1RmMGgzp-C$%qTsVDAE(4%bd>AMH~%#skB%8a32MoblmIPFK}Loot?6`qm{w$M z!;Zk(6}NZ7e5jP_B^HB7R@*)07$lpO)Ny0Un5u5^Pzcd9k3s!{<7KmwK)HzOOQFe# zBFY2iZ)1&}I=XE;(gLq9uQJ>d?>vi^MHis=p z>vqQ0m`WGjN1N9(VksN5^d9Ps3{;>@yJ5eD7dc*ZDx{3m`0IK-lV!l&;aPrz_=>)S zzPg;){o|nHJ%fk<3zE|LPC?FB!Et8r_-^fuqQpTfP)AU>!;HJ#J zz!7DVz-v7&7f%v57wC<82+jkkWPm-$$`$i|1AK4 zzMyoJvm8l3e5a-eO(dFn3k|hIT3v~wu&?tbiORo?hoPQ)=@I4J!VH1H%{C={vC3WF zO#xQ8*w0eo49rE%x?Jc;Fm7hvoA*6vI11Qg#4hyvKCs?gc4#{D_~Xbn>wKEnf(_b| zkeAYC%;lZ}J&3zu)-I*q>qgtbMUP()od)EGxCUleVh4hggQU8S>K)PB?A}g%IN}Z6 z3@cep(7*{^#~pIhGbGGn|AllTciDRE1FOZ^HewXDhjs8~5Ohc)&%Qu#$-QkKWTi@^ zZf8#mznc1!eCd@_rLu}j|H|Wn39G446+Ed2E6&$e_wCARGQD?i%D+h-%=)gVQBqcK zFQb85?#^eaSg<&>IWZmuPV%Vp^7isEShSh^xhsDmuJI6f3frH~FBF^{-d%Y%a7NN@ zcqxFvq|;QQGcIMkietxlP*LXXB?9w>?=?U#=N^g*rY08qbEo)kEzMW4JO&s0S&Nj_ z?glsNTCjKaEgTx6E-GV((6-Vp=EcEYecsLwp7TcfkzEjYH=jWil|$e;B7t&T?gabrhM(6~$p=942OQhYlcR-UNLo#N-RQ!m z0Zz8`LbI$;NwVG9K<5jS@Jr(B5eNj+FbgaHH>cKpB`!zkp zaV>_DN4J|!vwRBqTkly#@WE(+klO-I#x-@q=DPQH+%Dq`N3OCiY!Q8`7cK~l%BuM^ zn-Xvy5{PZI)khKt?mArOjX{RPB9ag*f|fnA)VA5!r_)@%Kdg+?Aoj7s3W8KOHHCc4a<`zN|0PqzBx zV&bXwyt43!5AS+QqbsV}+RRefFJ|MV2E?N#H%g+l2G zW%y)-S0a50`XHS}cFPWU8NBq5RE>}GQ_TX-`Ev_6P&NPNNb=wLuOmmO=e3S9KW+lw zB~@|ZBJ#S#~XN+1}Q6*K%qqlif`*xb>P^? z977~}#iGcX^WaIAdsfqyWLygruq5*P-1x!uLH<`%ObC~dUekSglVgP0KC-R1wkI9g zcd3}%CLym2in+Hmm88G?^yW79yHce_>PUhoWpe%tBDu&S(`TV6ofPrELv?jL)Quyij@Sbx2f75l%-Vt7t&>8g5hC3fes(DCAXh zQoDR|aR7>}m@*w5y#1B*5QoCMiG$_Qs7j_+Zq84Iysj8te=}7TX`6XF*q~8VdXxJMvpBwEw7oEb_~Oo$ zvHggu&=(dVdbWoy9vrUhp08ZiIr^zy$$0g~h0gw#IKy53)AHP`V>6+Dpu8X~I8Pjn zavhNwD^$YF3|aOHcSG^62q&Ujzvb=gBUkyJ(YJ{>@gdbpX%70$A=^BLR3O@b<|=dM zjW8$ELu&Q@sqx1b(!#~5xU&02WJN+o%+pi?9LK$3&Vj1(_i?38)P2VU(oAlxdn+=v zKqfBw>_2w1n>jkX47r~U3ZO<>4w{S(scc*+>OjCB9_2{L)+XgE-%iFBjj10*W>w2* z8-45T35Kp1m1lCKHT@}L>YIum`rJOR;rcel2$ERF-?Xa^`hP~e6RyfR~ zZAhBgc8Gz+nb;xL9OxQHLbu)$QBqvqR=YuJ>wgu1_lhZc0*t!3_YkBw^dM!^^lWXf z_S!C$5u76VlU+)PiQm*sBJ%rt5G-&b!>1NgM!d#RkO6g&Fr4f;x_?CltqE(-6RjX< zjj_#kkSDuZg7u(e{;8|bGgk=?lYlBXmo~D7sgpT+g;Z=vX;Wn5cXN4?9XuBa+>fjq zWkm^c--cPXVDTm~X+I-;I`zd+3$HX^qakg*E^Y7n!trN}TIb#BMe}P(z8R1O%(l{G zKdL^#!c7g%u*RbZ+~Yr=qwoQM14BdUeE_wKV3ATNCEqh)9pR;)8utaL%UyqgY~;WW zP-bwf=*49ifh`6ygDJH4wU-yH7ZFXz5W(dVH68jxUIhI0gWPhG>XSa%X`{5MF-l`o zN&FZwhqi8hoS=D3aBJap1S>r=u5-ZPcQql;;MlH;Tt{e0JDM$%hOucTNQ8s}&^Nfj zDBaTaTpOUoy~uaH6`&wig&$VOAV@fRN5O5HSpEa*XDe?A_C`OxO+M}-^vLEr&9b09 zJzE9x>f0YpgCJa7(VAeE&Xxqb_U@d=Yo2p2Up@s@IAKhv(j1*ANKcF)bla{j@9zYE zntLp-u{@!#ty}vvN7r9to6iGwY+mq@*uZ=hPq}hAbx?w;#gVd(-ULn9#K;YX;*Owc zANPF8t(WSuzUy}9Rhr$ zu2TBU7p|@IOKf~lPLo-&dhjf5eT!(X zR*=_XR3$kGt&QNpI*X&{;UQ6#X~HWR$a*G7!EKCgmE@%km?^efkt0BhpQKyR@GLX; zHJv-Qe-E2Lhm-9~)E46msNIw?6xZJjy-IgFZ4*6<5fbvb+|wd;&|XI=`&f0Cmqr37 z;(L*ck_)AHJQrPdMZV25l(`wY9o;PIvNBKES7}!6QkH@9oa3*5rb3qxDAgqTJ3^!E z7wCexHtn(peq$r9%#e#8?)MmzI(be-j3iU9W4Lx4QRDTz2Aog*fdfdIEop(LNzxC}mNCI6>Q4jYE0-ZE4 zq`F!lBclBj3Ees1>Vic7HxMU4UVG;_C4vnUwE4`t=$HA` z5hlkk)rxA1+{V?C9NJcAK0!|UDhPoU0}%U5WfYS7aR?wR$72>pFm+sgqI@2R!OX;K z?DGo|8Jyl1kXiLpPe>0(8c@==5CY_b`JxZi$T(D3PNkz)9B&)k`miLRM-WkC*)F3( zDw~><;F+&|_W_n)fSQM~WRo5Bg-JhptOMota(8aOLpH?oGbvGkBY@u^3KV-~qU$I` z;Zj~B8n1OEa?Juthuc2=N*R+ezCd^c-9$J*1#VrTQ;m(bl~Eou?-1t?+pMAKIt?#U z($HOlDc7~PSY*JTIp+>tCG!&`bq)CR!0m5%nIL8b)O8;@R#OKt_>XtI}!Ku3`)gckvGaH3t1*dRYX#A-ZTN1vTS+Vle&u*@iX#IgbD!^_^h+42;y zfk4NuOIwzL*gg~$4zV>a8W6SLYCc(c8;LMiEFAV>wUA^z05gqM!%pGEqn%L>ND?JGOF zqhAZTqtMq?(n_+-ay)C9^CGq#iwy}w3-*15Xd(S-;@KcP=4?Xl+ca}>m%I*IL~(Z( z!~xOw(Q6ezS#vD;&EGpRl!&bKqEL_7)LT`PG%}}SMek8qO)%6s_NeMuN>4#>jc)AARTnM=BLwxVK1<>I@^NNbOr&U(N#s|Ih$)S zy>Hyz;4U?^0=ZhKnFahc^BIhW<=i_VS}Z{YMunXx|D#kD7VNT!7T7udeb-`}tANmd zc_ZZ$$uh=9eZd>NouIdxnuit7Ax8NGbQ_Vq$$I9CV?0EN3bmEPv_IewLh+~qxb|-{ zgutge+u|;qUz`hb7FhcT$kOwOVG;+3<)gX!(E@~sn&cnOf-{!%V7*|+Y?7ZBc^ZP} zTF6jOoYg@5U4{r7kk~1w$+yL?jVQ+?x$=AQ5_8Fq$4(`zHk;%Y(5D%}X9IifBN1p% z@zol$-Rqfm;S$sW9?02Q_R@iM(Keme?(LifNOuT>Vjl%Ea45Ya?C=(Iby6)76?v*1 zw0o?rQ(SYS=3YKNY!xGzwARxJ)?;joaeJ&LmWWnw4>^jEjR5Ur^ZJi)u~NO1KS2MA zL-wTpf>izDx{&5kMO#rV?$0Vlz-HFajrc(X0kcJ7^(D_FtaW$vHz-1h*x}sVOPSJ@ zYa$YZZCMyzfNDu4GDK_SgapCa>fml9yW3l!HY=6TRH6Plw7&d14w0O;8CYb$!n8To3<1yC=)(En1fcCqdQl z*DqCc-9y;i(?4J^A`>Q{1I4~jj_{tRN2Po83FCh2R>WJfiU@#2F69^4kGCxc09;aH zWF$F_L08A7GEK0%F+i03bS$fdh-+%cwmVg3&j;G83nuqE%>H`x@OzuW|6ZC&?}aY` zlX6->G~I4TB7+rxKlR#CLqa$|{y~rJlsZW^iJ_*Nc>?geW{`CYFL*D!%Us`Z?P3^g z%?Z2Eb{I1VB+hUMhCsQ|(4S9LlFlkghdUn?;=V0B7tTq}+*@j-S3WE-;US7()^?f+iM|ND?vXG7xh$#poFD^$km5P_&1 z&^G@f$69YNI$VI-2?d)9%Q+sUW1m=PQ_n0%N!@y@va06$wkEI#k6pj~Y6p0ES1g$w zK*;V_5gt74uyP)^g+ST5TCs2`v+zkYL!Fu(NQB=c5Y#Eb@|&Rn9l++1ojTb12`vU? z?0!gD3pe2Dr|agwhd0ftvMR z63IzU6x`82%F8~A_2HTm&YO?X=vVsn?U|^TKZS&-w3#1GyN!XY*X%w z!xPGJ4x_gtet`x3N1UF-8RrjvBGV6$A{5l#_%sF&Pe7mk6mzovF*8+)sgw%4Z27VW z6M~b>K3Q5?Ph+1i&`+9}ksA6VOoG#;D^KtDB)6zWF|`;zB) zGk{JtT|)|SQEp|=!z5g>R=(3{xj(;(oKxbn zp^*O=C3midU|5{l8xHGs)*6IK5##*!ZcoRm*XB9+1mr$8&eGU(b^>u&%F6Ng<^~3(#y)b1Dc`<~oiH3+LSLm47(@Z0 zYKg1#_RR2308lfqJ3MrNAo@|b>5tx%2IvUUq!!^3Erj?pJ33v$o~(>N$X{wjRj~b1 zg-ukSN23ScC&_8^Rus7FXOBl(qI0XTF}1bvB!+xT$(24W+&APe0C3oelWjw(Q|^B< zol<@Jw1J%(CV@Xno-mLsFHa<_js3;|<}0`nIfC!4)-VlYC1GC>D%5ZdgHGSTgc7g{ zKfiZTX0yI2v;jt$#w8d_%1s+R_)0e?ApbQ$oP4B{MY_vpSLoay_sI{&XH`tt?)8g` zWrz1e=;mux*>Nc?!yUa3*}rmHb7Z9s2A^9Ssw-FA<(@YIAw_2Y*s)9q_gfZ|O@RKH9TNdJ}bT(Qc`ME>z z-yDNNY;S3^U0Omv#YEw0Iia^9%i+Dbc%J$09`m5?A++|r)BqZa05V0(Ab@_e&WCXG z`}rE<=H?V8IE45)zho@%r1-qC?4N%1{*1l+Wd0kZx4|!jb*nvdClv||GG1rz{6X~Y z`4l>VCtr+;8_@hnKJ-$?ONr{^aO$gdeo!cDuJ`}xKU?edjAkAlkr7LmooEnf`rLP= zfeewn#>nLchvyFkItQ4@wCDw*L=6@GJF&qTh(@o4#~Tu3T;2zpb8?~Q0FrUhMcK+y z6^SiROD)g`cg_@e$fK4DpO3ydg zE0^K2^5$v`RV@rrd*QaU{Tl8vgg0!Nf*>?|dq4T&)YiT)R2!XXodA&%i~lvygPx0l z(r)jT2v_sT^dfE>%V5H6E!*YgUre$vU$?UBlbdVeGpiah(cy+}j5`LRc4fJHASfkDI949Z z9)#dkhy|gQ)fN1%EOa|z_~@{I%Be)Fy8xFPrQ(~hSyDvXIe$^f8U6Av>$w4%&KMJP zv7d25zT>OQo`9jm)Bb&w6a?oH9+pmNS0ugbyQuzPI((2ZEZ>8|m6*Uj;c0Bzs!O6Jqf#Rzlr zszZM<;7+O-r-3#66NgL!7ivR4hvA1*qLKnNR?8n}>%BlJNqROhmY;`7?ReuMaDxob z(8mS7zqs6+IU#LyJQ0X`)jiaf7fm>9W#t)3K~HEf|7ElLM~Mn`TO2sY{uB~a&S`<| z(X#-AN%Dz-ay4y3KbLA$7C{wBP(C?afM;iF8g&1&G}=`so$SZUm=aXctUm7YZEqld zU2dgI8R!4x*M_K6wEtP4Q_vXu)lV$p_l-urU60~9^!@!Zh^gA&j|x2NF5mGGL6$B$ zjotc)Nuq@{eT(gMoh0V^)P-Z(&Ea0hJ#|EOG`0tWevKz*eJ=gic7K;-`MfH(|~ z2S7ByVYp>U|AZEe0~Q{+>{V1QvGnElBJ<*)qwF-f-~DwwLBHAzZir5B2zIHYev#vO zIX;JO{nPrQcx;AsZHj!!f(Q15)77OgV!bSk5dpgHKKl0VE@Ey*pk&vFF`{6Uc&DyD zV!GchBSof4bggC@RC;V!(@tG+);ob)ecS?2!^y(Vw<;W7`z39?R~S^8h|6w~6NbQ? zuMAYE;ehfz;q8r{umyi+)zZ@5Eqpt09{U6y{0v?w7+m_G2ea~m^9>m;nMX}UPdZ{L zOUYao?d&nw0kee5^v6d`2U8PTPW#=|fkYQZ(Tlux-ZblxJx)hQ3R?z^A&T$T=UShj z2G1hjBvQteD-jP}Tlp(T}Dki5W7icAK+jiYD)b5^1B4{5aSwora zI4gf#tUc2qQb*EJkQ^zt1duR;XLijINoBcu?QUu)?fO5a>vbqijW86a9L>hDjeL6e zVZMUDPtHswg=a$M-jHhRo1Z5{BePDC=TqXFtbYW`xrp}Pem1tu-fKDbLCbA;Q zq?UmCCN7J888h*BJvyGpA*InZq-y#>Xp2^yZ2EYOqXul4+&L2ldW{<)`30(MEbg8e zL7Fh;uh?17+b9K zBTZl&CQ@8!B#-YMvPH%k!jOy@<~ae&+14E{dR9S(aixN^zQIdFIh45~m=9OI|LifH zqtHQA-w$K@WR-KNVB8W#ZQtW0ME`OMF1EKOO6Q*v0Ql^Brju~1w;8b_+{;%l_*lb| z;rx~0w;#R0*}+i8_)p>&cBXjX`q6a(z#Bz`6RP=CYy?M(qx|s5AAQgJ?He(cR&6O3 z9`CFX=64X2W?T*9;1T1yEz?a7tDRZE<#ok8#oM6}%=UI2S+N?5Qp9HXt3uXom90~^ zxn}=h`U>Dv06A@D4Fl?SQOU!|3nZirP zMi!}Q`1XuH-jiC*pVT57K24JjMB zSgqcHMWlHqIO~v(vyW~$l?Of+Ajq|xJV>bTwq!XC5I+m3M=QD)thH>4%+yR{YV`6z z6p(+*VJutdn_QtrUzkQrJ7!u6ICxGqeqT_u{*g|(dmt7x$ z8)Yi{L{-c#K8=ns)vy!Z7)b5sCH|tb9r-o8{B&tNwMf`AHs#3Db8KTb7mU-lgKa<4 zwm3*lJk*=mrA&G8o@>$u^05*OR9s@0?I&n!w+?KH#+iY2$JIjfOvq!dtp^4%o=glq z;xBs6fH$CQVxxKs{^DB1p-7iN)lun|C278Ht`zpd;Debihv9g-w%IABjt-3I35OKl zU|*!>G$jR1$C_wip&&=ym`y`Z-o?Uj?a8tc|x6yXJZsU?c&qYSzS zx$Xif!SX}>%R(DSZ-4OK>QFv0+f7V0UDs=yr0Z@!BMYAP43=Z!9^N^ER$D-0cXNW! zBT7#|e8PS@8Ssqq-r?Gqp|X?bZ^fB=a5Fv`d3~+IJyELRS+;z2?0UM6i&I|hX!F?Q z8mG48WHI$O-f|@DV2okf7}eT$PP7|vq-d)n5v=~CbuL0%U$B^kjuext<8c1xy`G_d z@N1#28?nZUwgB=EU~It5daWmpKyj>y#=_jm%7sEQ6i}VI0!` zbYKAeiJ5CvL8IvQMQOe6^Q4}ul)#Azc#P=_5oI}U9v&zvM0A#<8jkK`i@mTpZN>R@ zW*=F^qH+dvg1e%sNqfywvK+m!NqcD@`N1iCxF@nuX+LPq$CJCVs_9Ls@XIj+tVnxn zP62J5_C2y$LHI%;IFzRii%~Wh<|)g?&Gc(raIcn>)5rs??OFs?sxVbjW69r1o#viA zD7|LND=RH6^SzR;mQH-6R$#YuKD>8#`Q2!LZ||zKU@(b@&BVfuhTz`YnsE{0ZINNK zXeFMNuz2FvG;|Z)$gZ#bxpXFCm?=QJwc1&&sVLaczF0e{tG1wd$!-^`b9Q|H)iFcx z^aZO%3lv+dROR-&qF2)%B!NY#b5|?VJ?pqlNonKb3iJsn#O2(b&*Ppc7Pa(u z6N01RSkA{(i&063GS6mHqmd`r-&|c*JWuQC+y!&9~ZqL^m36) z2| zXYu6fp7y8<;;?cz3`qIuXNR*+241AJxFBn>vpKGGhT2Uj#Q1*vM=b@F3_m~dGaMi2 zFvx?J*5?FW{0{Ey)eKE5-#%ZDoIhJXgbPFTY9pDj`}}d!S6mEt*1J3RhPDPg_G9kGb!B9|C412 zf-i%rdE-PZ_t&EPS{%`QTYn>9DM>WUz|!l6YMp4FRj`KWtB8X z#8-cdVt63?=Tlh*oTQ+xxT|?8i>->oEs;^pFObA|#rKDCD1F=9^RUKoA~Gx3FcZ7@ zt!R_Gwav+jRD7ET;WN#j;uo*5K(q}=75$dSr_RHxLGhqYK?rBt%nHGU_$7~l+cM3K z=42^jLC?333!S^O9FYI}2F8M+aZ^}M7e}~PdtWY(FGSK-ZqpuQj924p@HBZMpBa;8 zf`?XUZ)=9C_+D@HeSly1A;x`A;nM&(Sng6ft6 z2El4CpCB}qtO|Xbu08cW=5IVdXmC4?C9O^?K5=h6n@M)t{V{di7e4I3dsp&LmV!uJ z09+~1qY)6!)dlt0OOwTJs&GPLsA7?szT5OJku`P6xHSc&o zHGFhXn7rw}x?19R)XuLxJ>RJ$A_CKE2qXmgMh$}m+V|6a&?brSqWI~$7Kn!q^tH8h z{oam*vx%_k-K-P6-rF}GzUW%eGH4GU-d+Osf9zpNZN1|d)q;DDr@8E}U46TH4x0!z`wbm;3W$p5)*T4D%VkCM`3r|yTX}xRY-=7p1=7umT-Y{wAyHZLNr>%z7yB%1Mz~} zCX?PpzwGQdR`Bf38#SGPgHUAo*zm23CgiM-zMU*RNaIlD^p-6AoE#`wBDI8667P^t z)p|v=3I{0b_-^=k@Dj8Fq4nvE0-dxTi)kzY!}yv{Vs+DSb@tHL=oB7us6&3AfEvlU zAJH295B!Gc-U8NpIOqmE8lP)!@q56RJc#2$xY;{KCE%he-?mW!3@{yVK(KqM0$9*!5@^=~vs zK|F|%kPyK1zRw0jH7&R%L6L^dS7@}}XY3bgLXZk3oYmgZFC+W{i;Pxl_tVDom%LQJ zD&*vCSl&S_%PJeg)~`vjVQCP*W$bKh`6u7LOG>2RM^Jg;Y4f53^2+rx)fNy~&qih` z%5b@3GXhUl7-PAQpUP!X--4JR9$vspMMl|G(DpCT*KE&?G7&> z5a^_RX#Tfo(~NV0;uMbnyD4;-$CQa=22k_ZlNLl>_UW+6WV{mB=)D0_qMm=y5EzNf z>w3iUX<9p}LH8`JZ)8c!?R`e;aRbEQ_VJ?c=`(TfkDEx)xt6E@0Z=Ktx4afgjV>Jp zW)+;3P1*;)4ofV@{ZN0|gEUHk=DT$jA;&#FW!gJrL*FAt1J6?|`yc_McLL!SC6u-9 zLlmlZ2qE3hc&k^>#ILv1;4W)K%G8!=>-}O^>u+#^V@W!anfjW*?hpW-4s_uY>-2x3e#BQt)@R#NIo#g#hZc0HsQlCb^ z$IlQarIq|Hyx{Yjw7azahdZ;K)ykogtL1(W6Bs@U!<=SU(!3cVvd8-( zMI2Hl1a)W`Y3ph=Ia9*U`tgM1@j@FjMM{UXuD}5Wb^Aw8G1V8Wes0;16@q1Ji!7ru ztzX0iiS_a{Bh1rZj?~N}ngH7u@b*U>+dmTUUZ-=gkV!0u=2Im>^qhxfPYs9K7<14~ z3Fq@)HzKmyT1xXp7~AJlaMwhFZ^?h=otrnFCi|_*j$8>FxEnWI-v5rie>W>;Z50L} zyBWBPJq-@cp*0HtiDz?rp$p7ng2#->x%;{fP0*T}fm;&ayMW=N-L&`Q=Ym3}8v&h} zuf_%VGeULL;-I~{mX1ei=c2UttIS0mJgV<{@}@HCnQ46DdXA5sIhUI_qgpw>e{EW5 zU5NKXyQMWI(Hgk7mzMG-UMXpy&&qg=y*^rd(QWItUY8uwYrb3Xy7inB)Gadnt@X!e z@Yjh=`jwHAtH>XRyQkG?z04YRDoWhCAA0aM%$%)Gt2??j4LYVESj*Asfi@EteCfqJ zsK+!~P9Z?ExiX^|Vzoa=)dGEaB2C|y-v*fdv|9!6i_r;@3Ng>eLxq#6b z0*m0hvdz=W;|<%x)iD+E?pucz|EUExLWib15(D2uXSmxMLUEFAyGO$%Z`yY0@rY8O zI`m~N4`fn^X|DX_<=Y7^61nHg4o(CPe_Zpc;oG|x%{Q{te9esk0snlB$ps9Wy~rmg zCzAstf0yo==xK8RwTqNA1#n(`Yp>&l9Cze7ECn3i`*p}gEp4hScG@0#h0(fltR$_+ zUGiS@aO%~T?hB`3FZxARfqqfckAiqIJ>b_yp8Pzb97|i9vx6%4*Ub@Ai*Dqc;w|%) z-=6*NNFo>5+1>5<_3K39jg=jCzwM0>d>-OUBcwp)`_q|8VMLVA6_o+Y4GZa zSI{oDJYX!qk1+RMm?E9B`_UV2OjlU`z5MFuXK7Q6V4UJf70)o>o_*&hA#)gjuRc^SrghIp?ty=Cm z#NlUbSj8z_WxkD}HH#ua{mIqw*2a%9$5=-|XXvR~O`8C+Jz(Sr=Wo0SyD0C?0~WCV z(T~4-{sCk01_LtS{F75s!JYmcW&h_LTjXyJpibw-w6>hD91)k z-!9%_7~TpP8^EBVh3sRgeI-Yy)|A?bcVWI>Rr6;RTxAYzYrnW|-u?O<7ZqnE#b|O#o!aHN>xb8AqF^eb^K`bCym!~6N5ArJjYtHM zwrAM-1`In{Ie{${x&Py?X5%AUxeI7I5M_>d7ou=0bG=IsF}yHtxYa4q<#rVdN}Wvd ziC8$8oD5V*H-}PNGtyc*ML3&+rUEv4AZ=%k2VA&UF#V#1FUpYYgja81zS9PXw$5Hd8@h~o*Hq4;9(sgU;r&+g^%>arSmzP`X3&?0pY)3$_Z8NA^H zf?RVuC-`Ri6yCJyxO1d(wKqR?oVn99b3arXeY>*jw(f%8J*mZ=aPri^GZE+q$$tc* z`)Qx;Pa~PCSehcseWO#=uR;F(ABeXoS*5HRF*$NvObtXKWkZ@SRe~9&j%0T3bhRE! zq(A!e4O_!Y;GYzIo{=RazEtskmIUeMeoKk`#c-jskkcp3w0PTUi&oZ9SM1$wFxSXe zguIH4+I?03VwM+Xnd0NQsXadpt7?J@aVX_-UwtO`zyQj{w+9t|KpV2@eyK$Q=V%$+ za3^>0Dnbm;7Qn*&kdcu~{_Tq-+nIU$#@OZ&JnBR5HhGVgBC!ocJ(uuYklv=$)!w&w zm?x;6uHTWU>O3RfySaKn{H$uNb;^uZ+}Cus8op3^>@NDSk#}|MA!acpZFS-my-$ci z`S8CJ1n|08dQKva{>a+;DbSN+SgpJmpeW$JMQ$zW@(PV3=S-@S&woRma_jzv`b-Ry zOF+>7glHDkIBSs7?UWXOE0*1u?-oVb8&1{C9rki+h2SRha&KWjO#^=f zN^zF9k|lX+cd-Py+{cUI4sHvUGn5s3mew`yCH*JzbO4UG9%sYvNrTfjwjA=uRav?Dnv5o4}r^mg4N*uFA%6yjA~`}_Dea4`<{?;qA-2dM;!lA zthxI&yJ8{sqX977L6y%KH}5YX;JLwcR!T2B%$P zc}DT-MoWwcYakNh5^QR}72#bhef+8Rrc#JxMm%Ky|QOSi`iIeD-L=S&|aMZsrbBD z&k{^1%)OdAm9sfO<>JND5(oU1X#>6*zD$3+EHiqr*S)UZnX-(6E2;;Ck*h^0{GPy) z>Uz(vaV;*i{snh7FFo18*vvtJ8CmK=UKRBmJy)|%Wb^W?z&YWwrSqDL)mm@F?%d~} zS8A_$c1R7}2^T5c=qhaSdFQQ5H|X+qyn)kW{C})dj#Vxd$p9gUX*%V1uuIDR zTv;{15P((AHX9>B!uziudpkSpFI37i4Ex(J#E$AxFO%4R#_jLRE3dS^IIJt~nXtj# z^h{IGk-Sy(rl=bb)xkf5EI{N{?@k8dw9ThK%*TkIwrfoS2)(stmx7PNVQO(oba zd-{X%mFdFTpy1*fuBY;H?607MNeaYkLHGUGnrrVfG}`-psoee)_d_t>e4*h9?ZY+8 zm(gLTj90^kApOi=yL^YutAV}~2(-nxF(*C1$GEk4gt4@t-b6QPD|1kyojkT8=(^MT z)&IlZTZXl@H|?WOmC_<@Db^rGin}{4v`Dey4#hQiaA}Ksf#TMd76~pv0s#t?;I0WC z9D)Uc1o>z0{p|Og^Iq5aaz39g`2ZIyi&?W~=6B!s%((8e_gl4ic84ajbM8QS9^O%R z>-w#k`YX?{HYxLnEkWAW^`>zOXb44~EBgDcGvgThI+JBenwW$S9h?E=HWz zn$b)$bvyzlPoj6S5dy;)j3}=*pR*oDX1()NKcl$JZstO!R+qqUMU+x$Ytrgs(@JJ^ zN|bwy8uZb;t>%eytG7f>a)#P8}jat+e$q4}?6*Kl*Ny z`Du)g=Tag2#yI$xGZyc7>E@&a@AT&##<6$X5^d92pXj3#4aue)g~H zcd4g@#mnB(kUD49aLn_a+Y4l9C4DOL@ZVdqEKxmn0fgzW@E>sG3cA4}GLW2&=Cfe}h&BI4`3-tu*N>R|hu{YdF2>%2-F@VAF=lQi@ zXyG>Mf%|kqJ}cqd`2nQi`c8)a`euKdt)#hnj=19X$E&rjg8EnHZ#iU)jDrl|w1;I` za7)w0nJGD1hK*r2xok>J_)G@^y*~;nTnRae14_4*`QP_K_P_Ysce@JyGH=0SOZ`^e znMN^Ht7O3dEX`_H)8lPA#u4LU(vI`hTaZ1vz*zsx%ZkqKKkkm7vBl_p)Cj*T#|HYZ z|I5gWtYI8+J;z+`{pF=(|K&lUz0!lF9}97BeaZ!p^|MMWv z#t+6H0mvgmb4Zm69i1nKYLLn^jbwy?5Uzh6<0b%&_e8d^8FKtjp9d#f6x5u45xmta z99NDo4vxhGQHBj!{5-<~_+eqI6VFr>aQ)GWK;s$TKH}j43MBt*YOk`bK37?#YeYQ7 z9n7|Yx+8{yD1&PXxyXb!?_bV$#_*T3|Ib%=SQLbY#)pD$Iw?byTr#?>eQ4vu;#Z0+ z@fXFid|D&(PCLi`dwa5Be+3x43o=@uG&(hSoTUQ7`}OCWwu`TCu9+I|{?d|lsHsg* z=ukM+X88B}7M=cUflD_00wg|R>gqGoHud)kFLTG8GEP#wbZs85`H&^>FjzOe>1zIKB*$S?8fr=Id_r|wx z7tl_w{t17w1ZisPBi4WngUi2xIA`{Dp0XFXqMp|^bL*RwbQ}OI!&J+;<+l{I#gbM8Emn_b zY_OXh3XD%ZIdOj%DD4av`{ps{?Yzqy(BKLXG18-?E>EaK@2kWb{&4fM(19++hIU>_ zIP>s#HrkLgQdYBM@>q3?-)Pqv-rcc%$yZLk^(NBSbKDAJGKOW~30+xdu=P2MBt$1+ zQnyInr7%8dneUc9co_Avwj$r5fI2q!#Ct=M2mnI=yui6>bDAqijzc9+nvqrRYNGNQ zrZUkMt>CmEl1M1b_>9+J5SCF%r)+M`nnYTj)6Lt-BG z`JupE>3~zu%|4r8 z`y0@m+`*I~h!v+Y_A85CbYz!O4!d8RF_1W?YM`ppuObuNk1okuI<$)O>d2<-_g%+N zwV!Qup2QZ31-sD)h)ypCY>L^LNGm(g6u#W)Zg>Px^S8x;qe&Zw)*ji3`>npfx$N&N z7?Kv(NHm$O*(x!F`U|FkB$4Mv$c}E6<)0#Pe3Qv4XQ`drk|b`sS`Qos1-);7nGcV5 z(iZ+1=DV`zk%fw!I7DzXqkVIicHjC0KIPcV8JQ2Z4hRB;ZNH%(LeF<5IcctXZ|@;1 z;@y)*BXs68ayz9<$Y3y=GKwku635v}S`^tE;bAL2U~7mg!6N)W{7xuc><-*w5q&|Z zT2kPHa5JB=ohlL0dzyHoOF5J))%P1_jGp-f!;yGi9^ae0`k`D&+vzq8Z75@z>VDW% za~`CB)NKC_3&-@$#$z0f#Yt#o`~Q^wwib!!Z}8us4F~9D+OsqF-Utk-!^HzX@RA^> zq}{rb#y5CT)JY2GOMTKij$9c;DRsZ@dyb=T7bVhJ-_(ojRo(CAtst0>h=eLhE`Y4Fx<;U%<@FLOp-Cs-6zr0CrA=ghTnk5p}pu=AX)jqo+P zX(-vg7M*)#R?JyMf`+v1i3E^}FH`9CA7g=K#)hKtn$LG5#(xu}TG1y^$`c-YtsJ|f z_gx>07!eN;PbGU@(I}oSHU~*!^H=5 z5oxaq>-q#!bobCG)DF23(2I?(E~^FHnmT_Yu`$iJFYqM@Klk0RG(UR?99$nh?@c2X zd@Fx|r>@t0;*w{i|5ld{E6Pi>*3ruePF*^#7WozIO&+)6|=MC2vZ+=0|wfTo(9< z9=j_Um!c?S!&KVPaJW>Zxf5OgO0i6`NHjoQoW}h(FHh*$_VexM6Idse9+iXTv8~SC zaTf%sggbXrOkR_uMLRc&2z{Q^NI%(8$&}N&tKl3>EevrC0s_EslP{^6@0xXtPBlBy zD-Qc=N3#bJ6VNDdwecSt0-Koj_AkOZ{z`5h=s>3O6 zK~A#4)kxFz13Chdyhb@UJ%Fc=wE7juqQJYQu=t_J`lfBAW+d4(p<1v0iB5xGOCOuk z(OS)T_aP$S^7iW{?zl~njxk8If;vr!G_fy+4-}pXVN_j@qV`*Hb2kAfTX09SRn*Es!_L1R2ufU7;HX z-1!xtF|+xNn51swG3A|<9&qumdNW{ApM4qN)I?_o+2^)& zSHDA$tymLnjJu9_4t_X(;3Ly<3n)uN;<->6Rgpga>;R`7-xRKIjzKF8yPMWQr}0|_Zg$m)~RVuXqLD3!)u(Re{$zxk6P zrN#Ys9qC>7-!d|I*P;MRwV|nRZW${{m1#QbJDolG*}*0usb22sWsdl_G^EcQ`Tns? znrOpedzEH@vmf+pc0zU{Cw-ejpat0-K?w+ON5R+H)XK&s1KTGSm_sXGoQ4b$3CmeO zM8a6(wc}UA%ycj`Vt&1eU!e@Pb#6n@6KM)ACl%FGy_DsEvHE-hn&GEYWs4cEk1D&_ zTm9{s0^Qvh*_spffNND*L<5Q5TA98nwFv;w$$>>d=C5T10qKO9+i5A3o$T9rAN(di zgFG`&K)Mv6dQ$=&!}g2cQ#V*_wC~3m<7zpv9SSE+hQkKhB(EtaWWd%3% z*F!tIL7y1mQh0nedUo8stz23%hvY?h4Jz+q)_z!x`r1Sa^gi{5`Ifj^T(Ren)U=#S zBVq&QXsW0$g;KGn&9m?uY#Ei&krV+?WNeo*@J^+qINm@O3Z^HUym6YCfDQ%jC68E6 zZDgk1to0x8$+b>@*#NQD6VQ_)CP2ThErhQO8Ti!?^fCDXsd_1X@I+Yhl)c@t2j<}; zGMJE_zBY31_5QA&SP`%}#rYHkju)%i|M=+I4|J@$%~yLCMW0qt(L@Tx=16Pn??+sV zHZg@;id6AUDw>*cEwD}o?@7jtpLqGBkEh80&UTi~|5Fo@0!W)y(ihqfYR)T8gpFJa zzh8I-4i^KqVF@M&1BE_7s|7r9#ob~AZvAax%v*J3qUKxx&UBLZqbUibjm3p_hprs|bd+1gnF?R9Bc2Z+3JEXHdAD1Y(tY2HjKkV2oWIUv6 zy#G_0=8)6+!)UO$o}E*4n}1q?QIM3^jJ*xWA?7;5qmR?k!5LsP>+-QNVX~~CH)L4h ztZ75woaz2lYiyM!|F({C?-A-VHfr~Gipj&F??J&k{AfJcv$O4+Nu>(1Y%9+jdTb)o zGl$6icFfc5XCxTt2GW7=d;#$PG95tpzt76t?_s?_XwoE@vr1JG%-5ex+4|#G>m;=fzBhY^+a~7aY#LzMz==hs%`$PGG^mC~)u`M?~ckm}nyRy*KMekZqB_*ev; zf}I!DfMkpDXv=`JhDbU@q-LKlA@~>3&VHMjGhe~ZJJfm!(=HO#o;l+mu};r-5N|5$ zJY$~=WRN_57&)<_XmY7kL2EVJ0?ckO|KTlmF1a~M@FU*pM zfp`6B}KoU%5X>Qfj|G9nc$T=y-3)Wo9RG zeamvuLU9Oc2A6#CHEM=g;E2P1m)h=iNC;nJtHiLq&4>c&Mknh*X;Ax%SH^MjtNuCb z8DK$zQ!b-!FVaKkN1z3&+7sUtqGe)odGfBGec!Yt#CY+Av(Pc+)19qi8QFogFV0zZ z^v}Q?>u*_%w3~j`SD$8(=|61!gM0Zmu+()!D5>@r>f^l@Nea+-YAD>bYn%8c8)#9W z{hk71<>S(^4`~%svbq2v)y@g00ju$N{Cug(J^Fbi3=kS9);->8-FV|Zh_>B{#y~$j zx;GrLKE@a9V^~M$>d9m}LB5fcm!)bcce{F2GmPMT1$6S%u8!|Djt6p$tr~SSv#PKx zfTQxHic{9Ko2bFKrUgkSZI4kmdgnlp*9 z!d}JVRD>m z{eCftWbZ;jk^AuT8b~~-|2bz+Z_f0>Ti>q4Eb;ydf{588`woS2>75eHY{O``I?H&q zy>FDy#J0>KwOgee#+~npfm8 zXf3YXZeiY{K*G*0pjiF1Q#W8Dz{&VI@EaMtwsGNriHjp?pu?%B zyKoiR_{_Oz*C)Dr1Qi6 zdNIv_F;rT_KbB4+THASg+I;690PM!^Uq@&r1e~ILr_%cjas9J`#%qJ;WC%6Py{9{h zhBGoBdg`kVwXAQI3z}o7ez|0f3BA&8_YN9+SsFKB$fVwqZys&=% zS&rJ(%v3=X1=0AOI*Ovl%K^0MDT=dgKKb0cV(Y%i82yT6YN~gts?3@TMzr`1G-kcE{fKTf2xJJO2?x(#$ISo z2!f`Su;%-b#DF5eQ^Kak^2=t>(%qs^z`lRb$A3WKQ^bD*_acjP9asEV-uDwWkEP;q z@|uX&>nAA50U}$Il>yE2q6KoTY`DSP_1QZ9>6t`PPyw;uYC54a8uH*~bi_qiDV(Q6 zVLmr69**+fn-$Ym%-QIEA+*tXWS=$jK#>daVEBBwF<+*O0gh=rhkyB!rEKd>_x7dD zM7{TzsKlR+W4^2Kh5Dm;fXI-(?~Kf}zfa+Dkm+!@v8w((4|EyDP;jV^h|B%JAw>wC zCFMa}9Memt(18}Yhp}LL=N(J?z_few54pbw%sA~tpR;u+{Hf{g_#jy6&`kNN%dd_SluXgxmeZVyy_``z(?V z3EO z#4^w9-{0HN@E8zbY^Ko3U-j_41%t*{RkQ9SqcJdo1b5+%;7oMsuMqEZ1_j4!i_Y%M zZe}?X$jXcqG z)aUovo(m%0YIRWx_JoG!!M9?&=U3SGPI$DmM>_3u!a2cRww9i`azb{#BxoD@ni!ZONIb3^)zc&Ry{}L7e*yKmVfPs{vs}8WM?R ziY%4!j4N~og`z|C$#sjQa~-U#fa{Jmd}|oTsR3vMVmee3YwS?>cebVELA|~?3r+y%)t|->W>5U?+V9L$ zil`@tSYUGF?X)*d_&)geC}!;Q@hyB&?rD)dRsXA5PA z`h9^ZYPiFEpIv=m;Q`a4rO7mg!5lZDXV?F{jyt*WE~~^L^OAscYG8SRlx$*4mU_fS z;pPA#3MwLTT)p#V-KYBOJv?9>pFLdcglp?-+9%vZfx<6WyTg~(pob)rR+KJZ5X}*j zeEmu#>D*ryDiOZ+J5y2ni5;W>k!`3)6tp6!A{>0~#U-wia+sxP= zSYKxV)wb;O!7Es_MEy1*W@Q8)(X!8p`OQ$gK*PSi?%(W2eQ8Lar4ZQ@_YWUw(PPoy z-xqc;HMXu2A$MgZIJqinqI%!8X-le%vp{h>7o1M{IwvT=NE;gOE2PDFD^iF6SnO4s zqWk%QvxB3>#E6!+&__R-zK093N=LIjuR>b&IEwHgjTOpDrSkZ6|>m=a`nS`lct?A)UN*0?Oid((KKK)gGAO!_`xh62oVDS@!-&1O38ztw(QMC5{M+K$QJIkt zD2m;a4D+;XLyzu6289`6*a)Hw!A(u#&rf9Lw3{>hm+U7_e)^hK!JaNf*>R*^VN^v6 zpRD-5pDbre|6J>kW8~LvHKV7>=@|z}D}{1@{{amrL^gd3#LG=|Mb-6HQW4(#5ZX}H z%9;I_Ktrl;GHYNo!hJIbkfbKzk_j5{DsV@LXy=rjAe9q<_p~tj5U|2hplP+r1?pB+Hi8{D;Bw z{rK-YU5-Cv&1E_kwPPB~Mdude;qLKVKfVWizIQdhpHQ2jKgt_7KCbgF=9E2w#_dC5 zr~BNvG4Toe(yKuo3*KNQAkggjbK*|xMqlGMC*C{^f{_tv6wW6kfF#S z5Hs)M>1D0xru%4}MADN9`n7`n3jM)l-qIH29`k#OQLBT;v!k9K9GsBX0kiigpfS>r z!`xk?1ArRf%R;xdbn6m%YbRGBJe;fDD3kWGKDRtN2$aNuh*hM7OtU)cZN>dZm!lxtu0~y`C*z2P| z)A*#2`eLQ2>U^&?G@YrZc=Ll-Ff|J8!|Fm5EGRi6=f0{tM33yxW73ae-?O&GwaaHg z93&nVGzNCxOLuC$3(Z}A_v+T2Qe+zcR>qdnT1V@hUD;q-*VC(A$<=ok2QKDhZf%O> zA`33VtXL$Xwv$~pxgSBDIlWktKZrHS-;3R02fi;v%_)`q@EMJBC`>AQuW!7+8dSuy zOl>ZQX=jECkK2AIK}7ixU+uEx+VqCuF{pj%jxDENFPHeuE84L5w9NZjcX$wTb!0BL znDw!I^&hIxp+Fdj(-!!#pw&?z)YLg~iN1O1twJTmNQsCPQh6#>ej7(SQ4M|NrY@a} zXtLJZsMAwKh;Si-iAMEk2Fc;_jsToErEX{Y9C+Sss+C^Exy2^y`%BKR{RmmFUCG|J z!(uU61Q`?M^T8WC(8;ojM9(--S`vkarfD12WAj+|sYJS~tNA~Ahyd@bznHe&K0HI= zYB5R|T^`+m-}znZNJ@euaUbK3TP?fYS6W)KpktP$q36M-pG#6RJSC4OqSFgXsErzB zM-cc>Ch7YHuZi~T`x83yHSitBB$lI}y)TC0V4Ix;3>2sF>JkswjQyYd!ta2daui4uSzDeR^M zRv#qed-PP4sg}KLW@ftYNb5+O@et;Bm3+q}AHi$%QSGL`vfkvUeP5+o-o)9qXCe4==Xx!v8G9rgOQ_z?oh=^}MV&Wyy zvwE_#;9!n@$6+2;66Eb(`Hj!LE_7D26m!GlMTnZy*@En49J`4WlM?5MKdm#M;OS?5W367x`zEdf3f=vu_+iO5WJ}feU={&{OPVLBHDP6i*=TLuqW^!*`Da zq6ppeaV4!*ZA?7DhR4ABd1;Wh5vB6(5Ey~pP~ix^gWsgK3fVr z{s=Tb%{_Vn1I4^V)gPfZ2}l60hK8G^FD7wZaOcD!`qiJYtjiAfp1GQaaP+hFC9n?2 zPu4zcc9K9h^)w`O8@q!B9>|To zhiP;)A}&UIEP_3`>@EcCZHlBv#khc{8^3t**#(D*-R{~_6KPLy;% z9J@yYX@kH$5y!}GPLk>mAg1i20rJdHBQI8atEbLuYJVhUHz%1HVxNp2}F-HiX z?}(0V+=!o<3UQlhRCXHvl&%wSd4Ubw9C&#fV?<@vIG#PzBBT`L!j`TrBOn9vn5OvzuV?@lPt z%!G`QFP3?CgSsO(CyUR&cPjj8>2eF=Sx(Ot^T0s}uxM$wFw8>rv*XG+!++vY6v5x} ztRxI;L3fNpcOsx@cQE9x%LM;PFYCaD_(75Ryktm$RDMv?z={`ZZtlAqX2E_$z)TIH z_~HHGMaZQ_Z*0pE<}S+(mOfB`%HFQ^Or$kvrg)UjDes#!E0HXz4^N)t@6kJeM9@O( z;e5cyJBk`^LnqHguPoVibL3nD+pS9Q?7;Y^-e*%f+Br*|Z;Q%5@zKoqEU~c;n|3pC zg?CJqG=F|Ih^Gqc2TUZJl7f9rBs!xz0kB+=zS3|GR-nyE49`!85%qnQ*iR)x4+TEY zxrqmT4XyWC2YvdN5$OzHOM zVGieX%jc*epj8=DreHSCLkJw6Nj@&$GQ4Nesqi*HfAu|i5+&rd?}R_;1AuVEvd7cT zz()7Q!!bnX6ZJe;RI}YPKef<-*+sce}x+PzQT$ImVVImI_EIC}hOXMW(KS!TDjAfc&#i9JrPwf(E5iMrUhz4^sT%5;D8<#ZS*SNQ*FTFdI z_`-RDijvBagK^>JetNEk=kC(F6NAvUFTL1G&(>HN)MYuVTc02xidynR9P`0A5qWyiNVlomOGYu-kw`rdHL>{FS3u8 zDqR_PL&OPgwawC2elU(@P2Jw>9rRI@xf`35T4LrXXi11g&S|*P-^Nb?2X9-O6k$E* z`=AbAlV9b>2SqzskA3iudS&}*p~l$~xI^)Nvd!8q6K9CmjyS2#ovG`de%dlUB~UgV zz$T>A|9(Qas#7mmV_${YJce8eI1z-;!v4}vz(iqS|->_4&)`s$; z^YZc*F^TpAn>dVn-p)FXZU zo!MGkmcNI^Qyss%aRS>wT6)8B~4%+6FiZ&YuTr5i5dw_#0&sJ z)|Z|r($GTAS;e3?q?apOtbQx_7ktf*GPGyR*nm4`4SIo#-Y{EEZ(D>vF>X>X-j^9z zkiE>Jqz_0g%D*BHneb029;T($%{;w{UTm#{lC@v&0f$>-mBV_WBTHcC+SmxjuiDy%?0kM6iHr zX!AAW#t6vbV0!wB_$A|F@Wfrza9c=f`l83ufxB)R%1%6_KFSZDiK6#~oG&Y82mxpw z*1uCf{v&GtZ=GV|+;n(6@4=3|sPdLUS50fetbLbt&Nu!wsW!iJ2ea#VCYe-i1DQbj z@gph!(#&5|_6e7}?s>jP4PtAJ9@-8fV=jiycD?gxRjae7P=PdaB&@L)>7 zXXSlE>mOX7-4V9o>qr|F>kcCrEAP?D9!PH?d`lu$s!{TXp*8Hzr7deE_1jxjwSZ zq}cAnwIQRtC1J08ddaVkN`o4|4jgQ?-Na{}nPYao zdFqV%;`V(QNMhOE9r;}MT*TR>VE;>ktnZNHt9 zbg@*~kM1S${RAPy!=dl&vucl0e?@+ajXW#xc^)rV@KrJGOSWM2tdx??rlGo|U-GP7 zyM(^7<;=Yy-SUGqN++UJ--G5wn&p8LM3FOokCc?hm6VKXcdR_tB*f@s@Qu*BD{58+LZXC^R%qU@6s>$94UKHQOe6e z_);jr=&kgS%fi7Zw`YpO z_FAzBYV-4`N*Chy6c-{PJ+#ZH;YGzoeYLEOdka^ck}c=`8>02}v+-+{`5!X3zcC*_ zC&0GAk*+NR_^#X`D>L1=vZ42WdsK(#KqBE&D>K@{!BdVuCAx8>=_q3}rIom7$U2); zNM-8Ua8BFo=is0;aD>;8E;r`;uM|cN;eFAN?(e~wZS&8+@8S_U&z8$9Ql|WO|8G{& z2zV-G)n$_Vd0!A=XKaDuFuls8+2cQ&{^dQE-)ski;|uBOxni^Hn47chpsA@es{DZb zwwnz~)qMfymebsLAHQu;8fbE7)VXKt*+iUrTSxMtmCSU9!l|9_R(ir&Ix%0R@kXbH z%tn9Pf@OVoygqQ}Ca*se7&n+z6?{f*9&}D!I&ZOibD|=3Zgf|8yj0cNj!%mJovY<@ z*!&ey>XhK<;_$0zN}lQ`KQ~o3YvtTSjF1a@Gh&Lm@)R3jufVFQcX_2*r&u}~=+xQR zhgSpwr~21B z`GVG^p!}OzUcW1S*^M>3ycK;CO64sP%$h9m#MKtB)2uXu=UE;8PG4glDMo9Q z+1dw&Ys7`>T$n9sz=NUzhJPlqRhNEm`0h0YnLOOJ{v+_(57dEYS$Fmi(|=IQT)D;g zH>CURl~A5fBA=)#4RelBTVN%DrVw!L>W`7u5NxO!hsn5DwIT}Yos&A| zNq>r~3T%3(afFdV3AVG|oGcn_s~>gW;&rr>U0b}~;aneEyuezZB-KrLrs?$QehFMl z!Clw+f_L@<-JQNng-PG_$vpFdq+1ukS`Me~{eYHVA|vPTN@K-%APTLQ&Pg>+is$GZ z_yJe`MgeJekMC*2r3nzHq#)Vf(7I$kMc1N%UM6mndL9>o>Q6NaG+oeL40({aX{P5g zIG#x!RcX#O`AClo<@e^o=}wpPBLF?_p6d;J>gefBU-{v?z{Fg}AG7UkS4H?*uOm_5 z|0bG0b;N6lyA_9Geu)Ww3ydp4OzR|q8OV$J=#VpiknK|<+f>F8}T;z{^!Ib z1XBW)lcV|}s8~|lOp)M-l1@7muFD6nx&9v)`o9F;|Bvp4zvT7*D!K9R;oq4ZFY8Of zi~9ck)BkdiZ~y;`;Um?*EeZdhZIT-YSgor{3`KD)9t)1SdiTuQSjf)7PK(Rv+?+r`RN{~ZRgYRpp)Z)5Q39KrYez1b@(QYN~vC1X)O`4 znm|Kc48E!1CcDgdu#9M0OB5Ob3Yy;&FfNOrzJI?cW4gp=0X9UX%;L5{7~KS z70b@VvLjK7Qmcz|oL*A|p+nvfjUP8mzAvj_7p4u3(}=@Qnd>?DkqHTR?~a60jb3$O zmH+BuF#oqfCNR5dv_?oSAdNtg_v|q>K&9*{Ewyq~5kYX~{N`>M-q<#oTY0x{=Ts(% z+S*+=*xLRON$L0;XkzCA&E_W4>72MUzOf>_V=6e%Fcheehx8PATOghP=;wraGEIedQ$!anG|Rz1e>NAnw$i zI9BItwzT~&nf^8B9YV1!``a~K^-&qfF$5DpY*1!SDPolAI?T+_oR&ujD>s{BF|yyH z{a}6Ae64t|oJPS&e)!ACFT2T>p?4wtHZTkqAjIf*&Uf?N4fjuH_Z5>&#}#fqkj_h^ zy@tyKkecd-wzns>ZzP8p@WEoG$o9WY9f6pt(HIMG?2&;eeukMP;&KjJKVV?Prw&iq zGB>xImy%c9VSY4jDm0}tDp3J1c1a$1QHOE_>-)O zEX-W%4VGy3r_M8m1V#SggP$q2L7T>_Z8Pj@Dx`^${EsV3bw zwJ>0gI_#)in*o$+}20>-GX5NBz-*#6lzZ@pZU>p!pd0!qDw3 zv-PRtIALA9lAdqqb#Fc38W%u0IQ}?YNm-3@oaK(-odQ)=t|~Av02ICTo#Z(Lr8E8t zhv#Po%?k7|&!G;wg%|Mxlfox_{>?>Ir> zZ#g(f59~L2f+kWg^?W-xU2kD%Y~4~h?=7RJJ2^fj`nv-R0|YSj*D?v&{vq2#eO7!Y zJjmo(wrNN0OlPZ%%lji!!$a`CXwg~nLfJpdvAAL)!MN7Zm@|XRd{JGGaDQ@71gF7Q?l5<3j^ma%m>$97=CN3&%cK}w^5K?cpU@*+m-W7oJ&AIvQ`L}-EfH|D zouS~+$RvO7+(b91+{Q~8Vn!=47crMOu18Dmssh{RhsKbMmr%4-q+uV);0CPmEsIWf;)AL zM>M<;L+SCDlF%eSbR%`fp7RUjK3Dn`V~-29l{+Z2WZ?-*5grGhJA+X*T$vSn%-~>r zTZU9Sh1Et*+2zNMFeSVD_PcpaLDDVqlBC_e-q;@=F2n`8@b~hvwWSKiJtZggw43%b zXK1jKmA$PW=6Ojjz88+TcxP~3d=VV1z3xh1Dx6kWG$9=Lb!+Q20^;NW6wK|6r2=B6 zb;b1!s9b*OU76_@J81#6c~ihV4Z$jd7wi`k``Yp4rlO;gpbdY|26A0l^jC$&c22%8 zo5>^*8yl1ES|A~**ySk!d5Fz3=GF1iVBY;^8PUZinZMx8mC=72C>Euhg#=^`RG`!3 zKa53OW?V|L_4~KEm?kwFp%i>BkSZDDuE|*b)%0H}kEs>(a5ViGCZTlOBq~}t1A9J( z;MTj{tD{myin&b|$s&g^1 zEv(GD{HY|@sp}`lnEL*+RE67AZQNEs>;4oJoIj~>TZ3h^*%mrK?o!j9i+Q3;G(cU& zGx1~@@HX(>Lw3T^uzS8MWI3-iv!T_KE>&usI=0V}&1VKX5R6u)ldCTk$(|Hqb>|1} zg}+HL8y&pN;>d@(8`C&^=XyGW%7}3%4qIUkZzu(5jRVO;kTn`%&y3WfPEy#}TOQxn2xNM|=ir z)g5;Ls4b%qT)=>Za2KDKg&_r@RowDyYR{gmZ`y9j0pZ9bxUUMWfP2e$KG3K}z zva)j8;LXe_E3@41mESXt&)67&aL%YNn_hiL1=q-2AF2%6V#dP@o1r{dM2Is7b^M(H zA{{aicjA*$3X{?rlL4E7DewCwL&}WnSa)rtI!D93KkLX_2%ar}HnsN~8mjDf5W%iN zE~d6EkeoM(?`xdE?5bKgAAOu*C!fB?$gI$P-OQ;;?;|FiY@IbiP0*7~l!}4vBUHcB z>G9C`Xx7qe6Ep6h*lnm)&i9w1IXesPtHNrfHfmg6sb4aal@vThfvLZK!l(FwnO5JL zavHxl+H$F=V)Y&`>-MdhBK0=XCS&}nLu!L{V8uswaTkv>-YYDY>B*MX!55etfElyp z3;4y6+bN;ZeI-8vEaieUs51#Q-`K;|AhBPHbz-t2M6NY$K{;43*X=8^o?aD3aqir? zzIQc2m0!Ro5|HPk8X`}8u4wESk&}Kc3A(0E1j#0i88RPTpwBc;4LoATlw%0>abmxd zD^i|S5-7edt^g&Jmxyz8vqlAfRUVmLy4(jIEfBkx8?BAEoiZn()d9W~66G=gKIk zdPV2hR{I-F5_lCgu>ZCwyt==0Vy);YCAI&Cf3AVt=~p^b(2W@6m4@|~jKSuj^+cZ(^xwbmxD(aK_Ty~;@1%|(`MIXasq)Jr=f|Obc?&VlV=Eq; zRDd7sta1Hx$`cx89}M!o>(9Hv?Suq><^L3&PE=W-uG0XB_=^usJodW0OK4i^9blYU z1n5=g{ps$OMqXalpKI+m&n(g${iJ+jD)13C|99W;^)Vr#N~~Q3wuS1)XR_jKky?QT zIfuai$W+_Z`{-q*u}%cKs?&;xI(h5|z0TER=~sHb5#(q%vkNPj)Nnd;a9IZlLdsm) z1I8PdmtVUDXO}BRYEG-UpApMxb8cp7?+gg1n7)6PhxOfhMLs+FI_%dZ7_cnN#i@;N zh;$-;0_|L!Acu^kG<`LG2&#n{|v z6Y1bD@(VVAFoa0beM#&KN(8zp)u3PkMJR)Jo8vqc*s4@34r~kc>X{V{U&gS@&5S3L5re8-aRWL z*WY3~Z{EEV+oKZ~IvKPOO3)^!SJP8|WOaJXV{EPiO3!&?pv5%az*VLW(ad}r<{Bqq zX2h$M;y7O36lT(-y!S;<)`^R>RK#;MJLfxfw-cj#^E1`0O@(2x9XA%rq5nhNTSc|m zwR^u$pE}Z(QoKMZ?(Wv&?(XivgF`Af1PT;)cPF?NEnXx9f;%KYfE2f#zH2?-`o{aN zgFVJR*e5y4n7K3OJ?C}JOMZX4sS@WilxQRAh}GlCJ?)uOcC#$U_oDTBORKS*)o1*o zTq(QlgmgHBvo=DED$z9WiXw9(*c>z-9>*}{dYdp$b7^K?1{<}ioP8T2gzvT{2ySdj zTG-zYjNKW~bH>Pq1B`VJbOO)i2$LuLi&tIp>7Ns2i)HvXcpNVv~ z(N)sJp`M`$drguqi>%082AAV|LU-_!7Jo!u`5TjG*EX^^%QV&I4fDa`hWmHfbjC)M z2>r_&6Xbd?>MDuKd}~v8vB&#(?K-}r#8*0F+zQefesW0E!!fn&E`YQw2cSyHndV#( zJa(vNKFCP>T766Nw0<%9v*L$`%myhdloPd*6js3TI;YyQvkXN~CBY7C<|hASfL@{S zQo>OMmXIy9MR@Xqd`#=1PqC(+Xx^Di()c>gR6^7)1!Yc^NOtqh1Dq>$xTD7muj{k? zS;IC){E3E6fB4r~Zl{R2_H=LP1l)=@ZhR-AJi7)up*IO!cl1xK>F|es=@idS`DKM= z7?!%r^o~j-BRG!_2$+sp5CH3|OGy<>3RG4-M2pVYJaH9#msm#C0k|!kB*c-`OeReHQo?2r#)d`5qsyKT>i4ukW!i6%!j|j}tF4#)d)w9EsEP z(9_16FyGTQGh-yx@xHtT(pJx?Eu@n-O%boKAr?6U{8@&OH6GzAw)?9=Zb$uVvJ7&(4$Ni^oqbBwRu@7saK#-VQ zPQUyD44=FfB%3XRM_t`p3L4>-**K{WdIBD0El-xcoks9O%f>&8{4HuZ1Ryr6piXZ7 z^(3kCIiKYQ*1)jtI)&x#w zxMLMr*`@MMr#UFvKa$qsZ0Q_ON@Zt*t(WR_MaTeSQj-njJw0d}75s-kIF5Lu1}pms zr=}tq9kXgqmyJyKa~Qh9E6UVo3H?i$bOGf7#J5_)+K8)td`*Qe%#Fx0Pq|IZ-^nN& zwN&*d>(Pn-C$<`-ifN9lzP#Ib(aOnzfcuPyM1=bfP}iWnsW&*%}qWEs!lb zo&_`A2pOBm4!8s^dkGAea@ztHrVvBN-ISMO6F~*1zd=9wamiq~3BPruT$d*aUQ$v9 zIJF<2oUO~K(SZ|~^~UIm+%p9UmIrQhFg0~FJCWRLiISsajm`?nzY9(2Y3enWx=B*Y zp40Oce;PQZrAr^SV^F2$tITMx`$%XjTsk^J*W&Z6!#r(y_)%4xalde5%GEO7!bWJ* z4DPQfJ#x3IK{wT^TnI$lzNn@2`>uz-EAymtCaT_;C;m%`I79q)9%!AtR8+yBl%K|@yk4kq`2N}+;6@x}r~@lpkCt)HD|mx995s|J$s zJFRips+Ok}oxfJ`ex8f>gBQ(m{N9fHZmM9t!a?4`**9Q2#bLduH(U49RS~yeUwTH% z7C#6|a6bxPur6a%reC~$`v53ZQH}_0>mw@;Zv=biRh8GJ7(5qu&j^kg!$>=3*`XAh z{rcmy=Oyk(x2eI~j0g*tRgzcAe)=2RXO2U$XFcpJ5mP_LC@dHBwy*8kROw1AhR>RO z?K85b)I=1Ewf$3VOXd>D5N()}J&vj#5S#3XLCVPDueOkw{ z^!=lj6!8$QL3NKXy5WR}U|=fKszunuv_#AUE&(aSccWeen zsWM4}GoxATI-VUo&Bot)AhqrA)rEyqM^`G)`pKlc^&9Qj8i6Glc`r5+f_xSw9!-<) z3VA}Rvqi%83^8;?K$49fj?DfakN6ios>YL{z9MODg@uUhq z5v@s1LDgprfq-EG3B(R2=2^_k8Xcd6)!tr~QctY!0Pcl0WsyMnim=%|#OmUn-)4Hp zvhho=r7sMx?vq}fS&8)4WA1{3a4wHxk^Zw05C0XHh2}FB=e9E*o#Ivh(RsqxjEOQ?XVrOx{h+>Y~ehlbHPH+qHnDU-&hx_iHgW3Gn}XPj z>_=j$-gA8RgARlu>%z6Wh(dbPVU8nQnoBJgS)FoP$Xj5uGbgvMdjvBrcSV`d6!c;( zX=!kA{Z)ubmDKlhE(kCyb)aPIXK_(WTplrd`)#j0>ypq8k|7-3FHRGacc(q8<HJNm(o+z8qltYpr@gxs9JCpgo9~v^nTyDHmyniWMev35zbcYMeGs-T?%m9pX={&x^`ayDziB-D9!B*d z#2c#aB1}bHKpm9hitSh1@)=bbgZ9}Smo7)!D50903D6PrsU!~WQa&}&IZ@U|>fi~9 z?>*{f@c#N!P_;OE7CUxjc>rlnfD?$JukMg4!^V%YuJ(tLSGv~>{A=QUp87*m%CCk`_w|DQ&vCTG^*nJ#~ z*fVOIPH=5}6Pxh)JMKii`}L#({%tD%v$3i=jL<`6gw)O(&4mSNfIK5J{MMp5G`69d}Y zp@uW(Tk(mR((X==)`F5a-^T&h#|+HsHE;hkW6N>P_Z0h#Vhc#KQ*_uF3P@o^pfj|QU$Au8s(mZLsuL$ z&S_jYV|_|=0V)M^Kv4!_WKvU?EeD zmXX&dS~|Vl+`=?hcMJ#U3R>$QYsEOCumL&mX}?do9o&9in(6b8=XalIWHq?mbT!Ww zS4O;TMPogsK2WDWVnZxEvm88WN!3!F=;LDk`dI35vHG&u(69xw{R4hCLC{|32H|%j zx!&f_EmaB%(|L@PU78aEmmkwSI*u91%s<{P(@DX&gfvxuLf;R-Y)WxEm6T#BqM&ky z7xwG$hVyM_W1=w}tHpPPD#rd=*A(ODKbUjFlQ>12JcSc&k(9!X7?GeL1*8g^P-P)H9&}7=p%t%&GhW0qEiw6U#~r* zFDUS3qP%Y1=sK+lm!t&6Y`-uZrkh_b4<;oW$eo?8=ApN)W3?TgD{qh;w9s%T#ZQhQ z=iofIi9?H?vHAM`yq~W|>l#Px0-198ms&i7HZq$GYFfk+!bUnZG2P$Y8(9ak+AlcE zyUyF2xK>i6{N!m_6X56iDb6!b1V(c0;eASmoQ3m4Gq|yn2CqKXXCmt-8jEt7&)DI&f{!SC=g0lT3wkr!#765{QuECG z(HJJ_w79rgS@-e{tHIobV0Pdo{I({p%$9@)vt zZh;S#6Y?9Z-e?kMe{^=k6ZFkwv5QR@pWvwK2s=!QNSt?OvJ`Cz*rQ7|){NGb@jxgs z1-1q1E;`gqEr=K4Y?U@<>M}Ne{r?pL<0V{NR)8^)gV+e(s)Gts&;}!>ODSf>K_~a8u6p zHOQo#wP(7?FGWyT+9TtQN@KffxXJ)u{ADp=a56=&<~=NE)W%ua^fS@CvSZ6IpXBCO~?ufZ?eo z&YLi|LxTsFGUVvf$+x0eAI@QK`HdwxY&Vd*Y>Mw{gTA>f{UvQeqNTeP|4R1*_{`@Z z5V=Rfpi0Fl^m&*Qm{1<03l=hgJyalppzl=3DrM80ql-3~Gu+*KSp8?teD-DL1SD(Q zsHu20St{p!wOj*}giehMaXSzqdU>LviR*QA12Uv?&tvFB>J#-B>U5&79@`Ytr)2IH zQc;t7XIseZCk^!=re0m@29`_#0*XSYie}YfG8FPWFt8i*q+C2;g_CGRGD)@akBLj1 zJKuw7Pa=FD(fFCP2ZWRj6W*NMFhf~=i$_py_=*gn%mU+4l-j|3ut}!Jye_21jzH3p z=lWcBvNR^W<2+aF4VoBOY91VBJMFHEn&Y);MKDA}6#IJIL(Zm6Uxg>k205K_%Vo8d zWz#axCffT!26eT`D_0CG3TUwSWo5sV)9dRkU_lS{_7wW*3sa`P;9wyP?9wT6sY*Ys zHz?JeU=OkHneWX;3Kb7CC=D0-TZbGslAgTh-sQ6U`kXfbN$K4NSh3MLoi2i^;w&Lh z3)S!S4rs^vBYrUf4=c*}8W!cWtY}3aO3u)hd$i|#{_z;9L(dd(67#;QIo-DnSZ-U8 z`{hfs(LxTXVRkx^tUW8%nnYf!*bFWHlGxy|1ese*ZG%ek+D_6$vw`z%QtOMBGNJTN ze4Uk6URmuA9EFH>6CU;{V&K=3_9s^myd-+mcUx!vL3mxConm9_+2T7LV}H6C$Y2dm zzpFh5{kSz(K}@;% zQvf#ULpZvytxXv^N-eSStFaVB0m}dZJ(2f~A|1b^Vw4bN*ihTPe1E(He;Mv6?pVD8 z6#gwHu8z1WQ|O~wKZ8f8prIL=`pkHV3O1C`UPURVxhQjpm)v-shu>=5gE2MB|K42IpT5jKSn1$gi~J$Fwe`;E zG|$uNxumHOk&3LQ7+36%#&&|<#gx_o_Bt*jnYl5B*CYOvzr1vaOWBJVIAtL_;E4*w z-iEDUkNN88=h~`{irhG*D9+MW&T5sZ#JyPbWP+4eMcp!f@8>`~9wa!u%UoDLU)+?u z?Zn^-pethJH{rJ0cf%h!9|u1aUS+B>=9!W~MOh;q?+RZw6aL}uuB-ov*dMF=pZ%5F zzk!fx|C%!LLd4sDc|oAHNF8P*vkUDIxf{jC_}rB9_2+**eX(ze$`U_WFcq7yR2A#3 z@4BOYasBpUB>N82-uiR~{8Q}g=9s^|0I)*@GK=LyiSoMK2c4B)`rrTN69;WGW~rgG z{f?8{PX|T!mx=-2)dnbK6aO`mg?4&VpG4ToWdi(cz+32M&->;InvF)3>poL3*#4>- zYNr4S;|JAhZ?nF{=L;HLj85$$OLGlEDQ8WJfml=4m-T^`w}RQA=5{eKxYPiP~!A;7Wj8?yM}&x3TCYO$_D+_%4yLRY{X?rAbmaHWAwMRfRY zoG*Xlm)hIeDv(uBb$s)jc=wt)l7VE#Lvg7BYBjilr}Lv^)=?qRzOg!z<|V%c=|GBu z!oaB#0~9{iO2}u2T1lrcxAG#0VhxyMnMhiDyEqa24JJHR*Sf}6%{rM()J=erQV_D` zFpw!#VkoGnNbVm4CS5DYM?}#SS>Pl%e+wODaK769)nd`uf$1=Jwi($7Y;o;aJ;U7s zz&|}h+&p&=FB&DMYSERvmmzHdh+ZvimD^% zo3x~OA>-pWiD$Wnh+G=6G_!--ukhV@#I-K{0)r~n5BiFfA1%-QqVn82;#HdVk`DCt ziv1a|1qV6r{gN7LYT5AyMa90`KlCdRsv}J%W_!Ncpos(2gzuJ}@Avu$=E8dAs`f2a zpsD>Ow#{4=;wv1l%Vkl)LxvUbRgT1hFrB3rQm`2@{vwk>+T3*B`mFwOEjEECYGPf! ziw&PyZDfccr!;U8=MH%R*`2tz#LBndgiN;aBAtuk$?!k;SaTa2K9qB^P0f>rBnQg@ z1CnM|uJF=4ERIgba+He^ifyT;nk(YmKMKnH%g>q!7omL~V_S6kEsV`Za%zJ*WJY#N zXW_QL-H7V^llUl%JI}9i$P2 zXEh{E^bTcQjLTyfAz-^$i2)Y)Zo}52RsxP(_?83ciS0{24K7>wZfa48V7+Cu{l_?= z36$_kXDBc?vwfGLC&3YQcx!KLmXrHs=3Cv^2T&%o<)Z^Wn+IoY7_YYY2sb3y?$nag z91&yNWhnwc_&Ds`u#V73!y2-JZ$|;5&aF#wc%K>dgY8i>j)&@9)|xytoAG-@QUTH= z7-DQ|z9^QVj)Y9WL+&DbKL)+l;us@S_iG)S1QBf$qXc2vbMi z0jVlY=tGk5;EtJdyo^U~DLdHHCm5u(REkia4c9}!tXFQWSa~f0ya^OQ5s2f&i4{LB z)wsYDzM2Afu3Jm$FMLL_hjmU>{MxRm2|u9Gtfh@E*G^fj-DG`IPd&JclK8Y;nnv1| zG>D{Y;~w=VO%|V4Oy5m**Yw?t@^A~~3&ryJtu_&qqF0u}3TCXFeQYL+J4{`d!p(ED z-q8a-QDGwkkKc-ssMfdM%~5pe!s6o7RW7#AIXY&Pi>`5}9G~z#IpsW0Aj(nME4!mR7&XeOvDL;C)Ty^}a5^r(yxwc-p>-Yt3(tHEVL_gp?zn27;aib+@ z`BiN>@;WA_W+diX-Ut!taKvo6jWMPKEV#g0uZ&ak*e0XCWjOfxm&^agrV^@7t*x|# zh`0#v5b4a+){Rf;>&SQo+#Yzf2|=Z$Bl%&|*ZPK;mJLE#^@sDn=S|ct%mJmbO3A%G zI_x!KX(8y(>2IQ0UE2L5g;6^LB-zG|qKLp1Uzf~WDzUF8Wo*Flk}fF90nFE}@B9?) zXvsrJ5Fa-?{G}{AX;H5|UT3!uPaz>yhTz5jXs5gnyV(JvJOX)F85jDHe)CKU7f3v9jy_3q%{F2-eQK%tJ}y} zwBFG(%KIJN04p_qdBl^so8y(s@~fBg&G}v1&|;Idi9?cxiPHNI+WcCxFK3kRoF2MW z`Cn|+vmedQb3{JDt>~&=N-^YMf2l@F`lZ`P#oegE`fuUXp^Pj z#g@I49F`*{v52jPa~!T&ZRz;zr$1U)8z(~nBTCR$WL{tE;f`3X+qH{ng{<6}-RLZu z?=u`_OGlW(AST709h+CB(52`Xr@wTP5fy^xn&yicvgNF3Md4n63Ff}oe9*jOsWvY2| zrbu_zcP#m#S^CsT#|rUi1%~|;-G#+xl@?#9 z<#qYpEpHEIw)-%kBFUhx<+J7!J4wDEUCAK;nYCR_a%i4wRhD4?aj*#xFtt2Cr}70Y zzZg$SLaa05Nr>lq`08o(_M~{z>G)5;jB=ok+_SjSEuOR3NtlU(!;!VhN;qA<^;xHo z34ipIj;WOAZ1?tGq_f~(RHGy-qyS1KVo!&3SY}IVE_o9k&}e}H?Al9RKfxCs14x(D zH*)I=R&*ukt%v9ET7LHlTRYfRbiV!zeGV?GAeJdn1iu&HNQF<*>ah9^EMP~RpHnv$ zXa>SC62G)oGEec;#eS6WaVW}Cd?sSUo3Hug3yh8=i}6Wftt$$##fCf*Frle3@K;Uq zU9j9CWBJSC$>T1(%P%sdN8qFi%QqF#AG1&ESZzbZQRU?h(ktuVX~&x8J*IOTDK)D zrKj42#Ws^94K)W@sFp#58e;^Wdf%I~CEoX_R`ckyw1D^1t$hBjslULG_>IaAOHEt< z&A?9Kgs8QH3Wpt-6~VH~&e4RU_JMw4Y4Mll@+>QFmN`nsz`Tr_ZpV!Cq1;-RkC1bc zwD|bru2pGwX=;4OG91NQtwf?YHK8831SKxP-lOCgODK5KI5Svw`RH~50-gA)1;*w| z9atYEr0`4^AkggYxj?;*o_Q>dw-%U{qX86czh(L)DCAE43|FF(+e+D=_1^B=tI(A?#`3)zk>ew}N$03=F-})*2%+p}ZHg6S-K-02l<}S-V9Ro& z%ad@NSm@kfQ~a%4H1|YexCEiIg)FW&@aL6bDFsgxH%z9MYdlkfT{oQhCKbaOez!>J zExop>91JjhG7cAPtQtqplirLAZX{1j-RI1PmdQ0AO6wq56zf_0+KlOisQe31;+(YPI4?cbGs*fBxp!LP zCqbsUcmq zyD_zdF}rwt#659ebIL!Il^ zqe|_F>oa?i*aw@0-{UpKBixD-*Vo^^MmC)HI?t$n$*!&p;;RawwUU1P+N7!~#NeVN z6NO)Ye%?&#zrp^!eF-P!|R+j(0qAe5@e5(H1HAPaE{k6`rqPH}| zA&Pu(Yy11v%i(HJH2muRF6#bbDtO4V>GQrV|I?&-9J1-#JtMVyb9ex0SQALbZ2pxH zuvd*sWPD0z&gXqb^mA;-C91_a5b8XF@~g`mJ_l55S>)FGB|2l}ut$3FYkUcbK4j@F ziBLkbx>!BnL$LA{)$n>pv)3dEkuGH(7G&^O<5J4*H6!>X6;pmvmhXYgVz-?!Uo9u& z8!y(y+xv1Nx0YRby&!B1%3SnZ=Sq>Wv^3w^0(l#T#+k8w9n||c8T+vD0eRU| zBEGMpK(HQ0sX_RaE|D!;v+wH+Efs+Cv%@{nMlxkUgJ!Rs7?mztnNV}EtrIRSF3AL>sl1b`B@kx{=Li*Ja>s4;lGRFSU zD+7NMyNEv8k}N@1Cmyf{`T98Rj^pMj>oTm(t%dvRD4gv{11NxmmAyC7(VQY$B&ZZN}Cyjq!oAMnRW7l(?cvVH>st4 zRn4_MB?lO(W4iUPmx5SWS6*gP4mLV&` zCJ0bJSWucB&_!(MBAVHea)aAks(_jkmwz0HT)M*G;57dl0+36kY~ zR|ay}i{@1jNX4HhsCmX-5kyGw7W8l+1kbN5K^__K;o4C5w0=(6YgOm=(Kj{jcEB4y zaKw+E4*|}7no#k2k`iZ)!8}g(C#Vs)n@2AZz8Yw~8Dh45tx&X5MxUDV6EM#D@E*!r8BC5YpiwR3QR#*}E~u&udoJ2;+L zT!O33=_`(Y!{-=>jpJw+^+Cyr0L8b<+TQSGcMwG!1;YEIaJCkif_<7A%=Wa+DlLz8 zi1H<@ykPbv=e(wpfiiQZW_b!dVh9tSgJ9AsGD!C!)v;V(^!fU1nNS#M-OTCWV_5m} zBPp6!2i_4iq5d)Xbes=StIV$MLPxyKa~HB4>)gyYAWX#+1eqSZ*~AS2*ud&4IadYA&yY^5it@oqZCyvCIcA1wvr<7eF z-vs^@&v&JMDTbjz0i>-zjk(NAo_8N)j-4zvw$->b#j2|oc1il685});0_5_=?ye!F zJ=0dRFbrTUHaK3)LWiHt+~;k3aaLA9nyrb}_3h1c<6svmjlL5z@F(Kq68+r?SL)o> zZ28-VJ$RTR0r4J(tXxjEjQB>pZB$_KnrbxPRpZC%`qSUWFw7-8&$2!LlbyGzLIX&t zu|DR{ob;WW|EqcWfWVY1eN4|r^GN8n9$-GdA#$6XU=*$Vu7W1kwQ^A1k&Q~#9^Ke8 z0F)8N2gIs_&R~zzL?OOsJp=41(Sae^^D>ZSLOz`)j^p{RV()6NFw|f!{t>Gt2VPKcbBrdzO!dgGPDD%j)>8H~yJU8PR z(>O$q3Qvd(;j4;_C#c?k@#qv(LY~fe^WiOaj$V5t(q#LD7H9iKJyaoJ39_>&;ayJ; z1KV%mbh_9uojrOAx_gAtYr~o7IC{`wv|KAX9f10N<6ir^SklGA*?;b0&c!VjAmd_CAhwSM z`t_t){q%R=bhX>M0oR5fb*6sS&FJBIIO;1#Cr;<#rjOMx5ialZjqjM!a?mhG3(Qym z#2G*Q*;l7gX8WFz8%YdcrkOe58H{{B9c) zAnxi=So;+6QYq8Q1h|^x@g@L~+ZVeLU3Z^55u6k+Db~M&?lX>elYO@Y0YQWv<)$_8OZsJh zG-uFZ#)sa;!JAw08L#^t@ryP{HqXw(_Nq?wmL$L2A;;0YIK=mU6I=1+e9)lJR;{V) zt^}4P<=xZ!8>^VBg8Zg)%U-;1+bm>&5A%O7tk~3 zPGj|z{-|@Y9~%ovfj1w~4X1qKZS@BSjmf7$WGJH8KJ8ihh68}}#&KmA)O%^Z zN~g%bvGQ)&M0GvvAH}ynYxC!Y!;mZ^|4r-jk9^SoJCVcp|3(b?|7oxr4)cvSxX(GI z-gt6WaxaTca41NcVA=Px;;=1pqhzHA!h;`xkVL|Z5t&DUS3|ZG~vBeJu_dM@Uv~NCq*_XPRjiUeS&`@3HSfk(T(Stg;W&X z_yh?KqFK^7s+Fc;dQyG?Z`3E{H+6s1NQxJo*;S_%$2h3UoxghEhZG& z{96MqyQ2?rV$L74ncICWXSDQt2|YS8`WqIPkR*B9y=iQo4|THgEr{7~CVro9AwTM3 zC(#96wmopT=(61Dix7>xVKi< zCf!i+#Kjw__6gHI;e2qZb$%MZ0?_@P*k`u_E1OqDo6@cljDQWl(S?yqjJA_o(&sXP z#qkzAZE<&cr;5}84yZ(H7n!bP9RrgBb>C8APWwks8|K-Ah5tT`Fh$<7{|(UC8hp#g z*8q(pa3_!b<&;J@%Q5<5Qd?J96DHtMFRDemxOoC$7?#!1qi~@U?@o-mvyQF=1cQlQ zzTMH%6BXLPn(pU!o%4>~`~j@+*jf~5&fb7oFggM9s|v!`2k??`=yd$JkK8&xm^lku zjxa|jg{-d;Dj6(sD5i^2@;ils2glbCTMKInU7P2FE;%+5KWB)!#}zm~ z)Iq-|SErxz7795ez_;03`sYMlfBNV4{f871G-__CZOy07U%i^3_2W~}0@v_~8g8oC zAf{DG#Z`iIs5bYaMab>U{cnIGnfb<6ez7Zi%4(7?CdDuC;`$7KsXhi+m|a0eFW8KF zr2_jqTu!dA*%E6hEo4YT)ksyyeV#vKZj$>taYe9(iY?nia? z^@$QpNdFZ5MoPY`H|M_y{WAiej<1p@%Qz@t)lv-3*YD76)ypV(hot_`D`fl6D|FF2 zptz{SkgwYWAhD))68SNN=6|LrPcLemploiBjXy$Wp1v5!JPQ0CpH87z zaL+qVF5124$jGCNAZDDzpeLK3%EW(bge*yrUKjncM}2KK4h;iE`%yc2TCF^={X3zl zv63<0)OO&1j;nCWpa00)9gE8x#29`c)uw);Lo~Q&UzXPh$sRg(W?C0%*~F8D7CiWx z2GciI(MHmQj(PKmaX1<678T@tD_XNJ3KJSS79E=Wn)L>EoC}s2Q;fF$f-Rh?$H_6h z@BygJ{7`cwr7;;z77V`Il8jD%>bf2-Z2$F1g^s8sukWTdPOVif{7F@dqwxRCj@3W2 zlViTo|L*lPnt_Q4uC_Eb=lYPb>1lXsK^N24@K0tE8{9vYBHs(V`!v@>NS91V;yg~@ zvqE&=%)*sm`RoYiU9HojTNU#SB~eZjHlJYIxO7vgylQ6MhuFIrhCd1@i$pkIRp;o% zbJvGIKN=8!pFOZ9y&yO1eYTd4^NPEFSPDNP=+FpvBroS(W;Zj@vGSh9xKrE%i+^nT zjoE)2k6}!5d;C{goP>oZ&*VZOY>InEQBwXzOCtHd4zY#Lv812$i%hJp#ihRDhU%JvN z?joEBe@lFiQWBFsvpRTV8{dL5z=ZTUXKi0$@-Gpd!N|+yKs}rGj?l#lcSM+{_r!G1 z_?@5oG}J3>Tc6aCj$bhIB$uFqkXliace8J>EHH+es_8Rlhjya<|9ZM{{9lGGNa_EZ zouq6rJ)Wg};r_etxymB)g6gdO^a=ZdF^cSJt8HJ@J*C4%bi%{sCPti6WVCaoV>D`F zPG2WH>_2H-H$x@0Czs;0wG}Gdq8(#;Py6qZU2EEw`8VhLZg#S{l26${&sYmVx737+ zF&;M^#NFc@$I$rvBtdW>IX3twQX351i`CcDj zMnvlRZas#K`tP*BOLh__#4G?_si&%98}$<~P9Cr>zSyUs$brJZuT(|Q zPh_X*TMCo>S5CwzL8t7UT#f7J3&}p?iWK>Tv7!Iw>>S4}JR`e5%QijfHx*yck3IbL zau9z%FR2!z8yaw0m^vA6mZ56=K4{g}_n~ zu*iW8eND8|U+NRnb&JF<$_M>mm&DBG|Mq+RmNShtlikTHJBWnIJl}`sKUd1RS4Olc zsZ36^`tA;1bIh1^J1;#<)V1DqfBI7F{zg(qM{IlL?i#!3&trZ2k7>A$=^elTFt?5v zJ1s+s!wq1?ognF8g&tkfAa|kWDnIt!1teXFD68ew+YICrbCu9>v5Q` z{>$tC^YLFrl^Da5e2?n7tiHb@y1#;XQPyXWjh%)CMqh1Ve`gEmzrUu0fbVaZ2O3R& z-(RR!bg;EkKrw!*56yr6$!QVvK6d-Xlw!MQHj(ezysZx+g5DR=Lgcd+V(Yst4;kN3 zJt}A%$DTOe*MzUcqMOt1*P|xT6@YZrlYKP%^8A3u#Bom)d+B{(wu#lPj5CT?_aIN6Y@ChL;qE?`sXOFHT=KEgm~k2 z-rrpZoI-Wi4M~ZKYie~T{(00s=l|o?zIR%@8fWjiIdKfMAkGt6&g^yR8c?k6?7c(U z�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 diff --git a/legacy/Documentation/system-requirements.md b/legacy/Documentation/system-requirements.md deleted file mode 100644 index 2fd436fe..00000000 --- a/legacy/Documentation/system-requirements.md +++ /dev/null @@ -1,82 +0,0 @@ -# Setting up the Environment - -OS Name | Version | Docker Version | -|-------|---------|----------------| -|CentOS | 7.1 | 1.8.2 (latest) | - -## Single Node Requirements -* Operating System: CentOS 7.1 -* CPU: 4 Cores -* Memory: Minimum 16GB RAM -* Disk: 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. - -## Multi-Node Requirements -An ECS cluster deployment requires a minimum of four data nodes to provide the full set of features. Each one of the instances should have the following minimum requirements: -* Operating System: CentOS 7.1 -* CPU: 4 Cores -* Memory: Minimum 16GB RAM -* Disk: 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. - -## Using a Public Cloud Service -ECS can be easily installed on any public cloud service such as Google Computer, Amazon EC2, Microsoft Azure, etc. Simply create the above required resources and follow the installation guide. However, ***make sure that the appropriate ports are open externally.*** Default open ports will change from provider to provider. ***Even though the correct ports are open on your VM they may be closed by the provider.*** - -## Attach Data Disk(s) -These steps are to be performed prior running the installation scripts on each of the ECS Nodes: - -1. **Attach Data Disk(s):** ECS requires one or more disks to be attached to each host. The disk(s) will hold the object data store. **The Disks will be formatted as XFS by the installation script.** - -The data disk(s) attached to each host need to be **unpartitioned or RAW**. For example: We have a new host where we execute the command `sudo fdisk -l`: - -![Fdisk in a new Host ](../media/ecs-disk-install-step1.PNG) - -In the picture, we can see two disks: **sda** and **sdb**. A `mount -l` looks like this: - -![Mount in a new Host](../media/ecs-disk-install-step2.PNG) - -Now we attach a new disk to the host VM. The new disk **/dev/sdc** looks like this after executing `fdisk -l` again: - -![Fdisk in New Host with a new disk attached](../media/ecs-disk-install-step3.PNG) - - -**Note:** Depending on the environment or the cloud provider you maybe using, the attached disk name(s) will be different. In this example, the attached disk came as **/dev/sdc**. The attached disk will be formatted and mounted during step 1, so do not mount the ECS data disk before executing step 1: - -![Fdisk after the STEP 1 script has executed](../media/ecs-disk-install-step4.PNG) - - -## Required Ports -2. **Open Ports:** ECS requires the following ports to be open: - -|Port Number|Port Description| -|-----------|----------------| -|22| SSH, needed if using remote access | -|80| HTTP Portal | -|111| NFS | -|443| Port used for accessing the ECS management website| -|2049| NFS | -|3218| Port used by the CAS service| -|4443| ECS management API port | -|9020| Port used for the S3 API| -|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 | -|9025| Port used for SWIFT API on HTTPS| -|9040| HDFS | -|9094| Replication | -|9095| Replication | -|9096| Replication | -|9097| Replication | -|9098| Replication | -|9100| Port used for DT Query service| -|9101| ECS Diagnostic Service Index | -|10000| NFS | -|10110| Metering | -|64443| Management API | - -## Network Configuration -3. **Network configuration:** Define your network configuration. In the case of multiple nodes, all ECS Data Nodes must be on the same subnet and be able to talk to each other. This is an example: - -![ECS Multinode network configuration example](../media/ecc-host-network-example.png) - -## Install ECS-CE -Now that the correct resources are available you're ready to install ECS. Simply follow the correct installation documentation and you'll be up and running in no time. diff --git a/legacy/Documentation/system-requirements.rst b/legacy/Documentation/system-requirements.rst deleted file mode 100644 index 8eb3a209..00000000 --- a/legacy/Documentation/system-requirements.rst +++ /dev/null @@ -1,163 +0,0 @@ -Setting up the Environment -========================== - -+-----------+-----------+------------------+ -| OS Name | Version | Docker Version | -+===========+===========+==================+ -| CentOS | 7.1 | 1.8.2 (latest) | -+-----------+-----------+------------------+ - -Single Node Requirements ------------------------- - -- Operating System: CentOS 7.1 -- CPU: 4 Cores -- Memory: Minimum 16GB RAM -- Disk: 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. - -Multi-Node Requirements ------------------------ - -An ECS cluster deployment requires a minimum of four data nodes to -provide the full set of features. Each one of the instances should have -the following minimum requirements: \* Operating System: CentOS 7.1 \* -CPU: 4 Cores \* Memory: Minimum 16GB RAM \* Disk: 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. - -Using a Public Cloud Service ----------------------------- - -ECS can be easily installed on any public cloud service such as Google -Computer, Amazon EC2, Microsoft Azure, etc. Simply create the above -required resources and follow the installation guide. However, ***make -sure that the appropriate ports are open externally.*** Default open -ports will change from provider to provider. ***Even though the correct -ports are open on your VM they may be closed by the provider.*** - -Attach Data Disk(s) -------------------- - -These steps are to be performed prior running the installation scripts -on each of the ECS Nodes: - -1. **Attach Data Disk(s):** ECS requires one or more disks to be - attached to each host. The disk(s) will hold the object data store. - **The Disks will be formatted as XFS by the installation script.** - -The data disk(s) attached to each host need to be **unpartitioned or -RAW**. For example: We have a new host where we execute the command -``sudo fdisk -l``: - -.. figure:: ../media/ecs-disk-install-step1.PNG - :alt: Fdisk in a new Host - - Fdisk in a new Host - -In the picture, we can see two disks: **sda** and **sdb**. A -``mount -l`` looks like this: - -.. figure:: ../media/ecs-disk-install-step2.PNG - :alt: Mount in a new Host - - Mount in a new Host - -Now we attach a new disk to the host VM. The new disk **/dev/sdc** looks -like this after executing ``fdisk -l`` again: - -.. figure:: ../media/ecs-disk-install-step3.PNG - :alt: Fdisk in New Host with a new disk attached - - Fdisk in New Host with a new disk attached - -**Note:** Depending on the environment or the cloud provider you maybe -using, the attached disk name(s) will be different. In this example, the -attached disk came as **/dev/sdc**. The attached disk will be formatted -and mounted during step 1, so do not mount the ECS data disk before -executing step 1: - -.. figure:: ../media/ecs-disk-install-step4.PNG - :alt: Fdisk after the STEP 1 script has executed - - Fdisk after the STEP 1 script has executed - -Required Ports --------------- - -2. **Open Ports:** ECS requires the following ports to be open: - -+---------------+------------------------------------------------------+ -| Port Number | Port Description | -+===============+======================================================+ -| 22 | SSH, needed if using remote access | -+---------------+------------------------------------------------------+ -| 80 | HTTP Portal | -+---------------+------------------------------------------------------+ -| 111 | NFS | -+---------------+------------------------------------------------------+ -| 443 | Port used for accessing the ECS management website | -+---------------+------------------------------------------------------+ -| 2049 | NFS | -+---------------+------------------------------------------------------+ -| 3218 | Port used by the CAS service | -+---------------+------------------------------------------------------+ -| 4443 | ECS management API port | -+---------------+------------------------------------------------------+ -| 9020 | Port used for the S3 API | -+---------------+------------------------------------------------------+ -| 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 | -+---------------+------------------------------------------------------+ -| 9025 | Port used for SWIFT API on HTTPS | -+---------------+------------------------------------------------------+ -| 9040 | HDFS | -+---------------+------------------------------------------------------+ -| 9094 | Replication | -+---------------+------------------------------------------------------+ -| 9095 | Replication | -+---------------+------------------------------------------------------+ -| 9096 | Replication | -+---------------+------------------------------------------------------+ -| 9097 | Replication | -+---------------+------------------------------------------------------+ -| 9098 | Replication | -+---------------+------------------------------------------------------+ -| 9100 | Port used for DT Query service | -+---------------+------------------------------------------------------+ -| 9101 | ECS Diagnostic Service Index | -+---------------+------------------------------------------------------+ -| 10000 | NFS | -+---------------+------------------------------------------------------+ -| 10110 | Metering | -+---------------+------------------------------------------------------+ -| 64443 | Management API | -+---------------+------------------------------------------------------+ - -Network Configuration ---------------------- - -3. **Network configuration:** Define your network configuration. In the - case of multiple nodes, all ECS Data Nodes must be on the same subnet - and be able to talk to each other. This is an example: - -.. figure:: ../media/ecc-host-network-example.png - :alt: ECS Multinode network configuration example - - ECS Multinode network configuration example - -Install ECS-CE --------------- - -Now that the correct resources are available you're ready to install -ECS. Simply follow the correct installation documentation and you'll be -up and running in no time. diff --git a/legacy/ecs-multi-node/.gitignore b/legacy/ecs-multi-node/.gitignore deleted file mode 100644 index 09ba14da..00000000 --- a/legacy/ecs-multi-node/.gitignore +++ /dev/null @@ -1,62 +0,0 @@ -# Created by .ignore support plugin (hsz.mobi) -### Python template -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] -*$py.class - -# C extensions -*.so - -# Distribution / packaging -.Python -env/ -build/ -develop-eggs/ -dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -*.egg-info/ -.installed.cfg -*.egg - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage.xml -*,cover - -# Translations -*.mo -*.pot - -# Django stuff: -*.log - -# Sphinx documentation -docs/_build/ - -# PyBuilder -target/ - - diff --git a/legacy/ecs-multi-node/README.md b/legacy/ecs-multi-node/README.md deleted file mode 100644 index 69e42614..00000000 --- a/legacy/ecs-multi-node/README.md +++ /dev/null @@ -1,23 +0,0 @@ -# ECS SW 2.x Multiple Nodes Deployments - -Welcome to the Multiple Nodes installation for ECS Software 2.x. We have provided the following deployment options: - - -- **[ECS Multiple Nodes Docker Deployment](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-MultiNode-Instructions.md "ECS Multiple Node Docker Deployment Information")** -- **[ECS Docker Multi Node Deployment using Docker Machine, Docker Swarm, & Docker Compose](https://github.com/emccode/ecs-dockerswarm/ "ECS Docker Multi Node Deployment using Docker Machine, Docker Swarm, & Docker Compose Deployment Information")** -- **[ECS Multiple Nodes Puppet Deployment](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-MultiNode-Puppet-Instructions.md "ECS Multiple Node Puppet Deployment Information")** -- **[Google Compute Engine Multi Node Deployment](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-GCE-MultiNode-Instructions.md "ECS GCE Deployment Information")** - - -## Requirements - -The host sachines should have these following minimum requirements: - -- **Operative system:** CentOS 7 -- **CPU/Cores:** 4 Cores -- **Memory:** Minimum of 16 GB RAM -- **Disks:** An unpartitioned/raw disk with at least 100 GB of storage per disk per host. Multiple disks can be attached on each node to increase capacity and performance. Each disk needs to be de-partitioned before running the installation scripts (you can use the --cleanup option with the step1 script to accomplish this automatically). - -For multi-node deployments, the minimum number of nodes is 3. However, installing 4 nodes is recommended if you want redundancy against node failure and erasure coding to work (EC will be disabled if less than 4 nodes are available). - -Installation also requires internet connectivity to recieve the requisite utility packages and Docker images. diff --git a/legacy/ecs-multi-node/__init__.py b/legacy/ecs-multi-node/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/legacy/ecs-multi-node/additional_prep.sh b/legacy/ecs-multi-node/additional_prep.sh deleted file mode 100644 index 9648153f..00000000 --- a/legacy/ecs-multi-node/additional_prep.sh +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/bash - -MOUNT=/bin/mount -UMOUNT=/bin/umount -GREP=/usr/bin/grep -AWK=/usr/bin/awk -DF=/bin/df -FALLOCATE=/usr/bin/fallocate -XFS_DB=/usr/sbin/xfs_db -#XFS_CHECK=/usr/sbin/xfs_check -XFS_REPAIR=/sbin/xfs_repair -DD=/bin/dd - -# size of chunk file -FILE_SIZE_GB=10 - -function usage { - echo "usage: $0 " - exit 1 -} - -device=$1 -mount_point=`$MOUNT | $GREP $device | $AWK '{print $3}'` - -if [ -z "$device" -o -z "$mount_point" ]; then - usage -fi - -# mount file system to create files on it -$MOUNT | $GREP $device -q -if [ $? -eq 1 ]; then - echo "mount $device" - $MOUNT $device $mount_point -fi - -num_files=`$DF -BG $mount_point | $GREP $mount_point | $AWK -v FGB=$FILE_SIZE_GB '{gsub("G", "", $4); print int($4 / FGB)}'` - -# Remove one block so we can account for XFS reserved space. -((num_files--)) -declare -a inodes -for ((i=0;i<$num_files;i++)) { - file=`printf "%04d\n" $i` - echo "create file $file" - $FALLOCATE -l ${FILE_SIZE_GB}G $mount_point/$file - inodes[$i]=`ls -i $mount_point/$file | $AWK '{print $1}'` -} - -# umount file system and force allocation of data blocks -$UMOUNT $device - -for inode in ${inodes[@]}; do - num_extents=`$XFS_DB -c "inode $inode" -c "print u.bmx" $device | $AWK '{if ($0 ~ "not found") {print 0} else {print NF - 3}}'` - # inode locates on offset inode # * inode size (256 by default) on disk - # and the first extent locates at offset 100 in the inode - extent_offset=$((inode*256+100)) - for ((i=0;i<$num_extents;i++)) { - echo "set extent $i of inode $inode at $extent_offset" - # the extent status flag is the first two MSB - # as the file size is just a few GB, the rest bits in the first byte are all zeros - $DD if=/dev/zero of=$device bs=1 count=1 seek=$extent_offset > /dev/null 2>&1 - - # each extent is 16 bytes - extent_offset=$((extent_offset+16)) - } - - # show the extents after force allocation - $XFS_DB -c "inode $inode" -c "print u.bmx" $device -done - -$XFS_REPAIR -n $device -if [ $? -ne 0 ]; then - echo "fs check failed" - exit 1 -fi - -# mount again, the file system is now ready -$MOUNT $device $mount_point -o rw,noatime,attr2,inode64,noquota - -# Add the filesystem to /etc/fstab -grep "$device" /etc/fstab || echo "$MOUNT $device $mount_point -o rw,noatime,attr2,inode64,noquota 0 0" >> /etc/fstab diff --git a/legacy/ecs-multi-node/ecs_multinode_install.sh b/legacy/ecs-multi-node/ecs_multinode_install.sh deleted file mode 100644 index 69c6aba1..00000000 --- a/legacy/ecs-multi-node/ecs_multinode_install.sh +++ /dev/null @@ -1,68 +0,0 @@ -#!/usr/bin/env bash - -# CentOS Get Updates -yum update -y - -# Install Packages CentOS -yum install wget tar -y - -#Disable SELinux -setenforce 0 - -# Download Docker -wget http://cbs.centos.org/kojifiles/packages/docker/1.4.1/2.el7/x86_64/docker-1.4.1-2.el7.x86_64.rpm - -# Install Docker for CentOS -yum install docker-1.4.1-2.el7.x86_64.rpm -y - -service docker start - -#Get the additional Preparation file -wget https://emccodevmstore001.blob.core.windows.net/test/additional_prep.sh -chmod 777 additional_prep.sh - -#Get the Docker Image from the EMC Corporation DockerHub repository -docker pull emccode/ecsstandalone:v2.0 - -# Create the network.json file -ip=$(hostname -i) -hn=$(hostname) -printf '{"private_interface_name":"eth0","public_interface_name":"eth0","hostname":"%s","public_ip":"%s"}' $hn $ip > network.json - -# Seeds File needs to pre-configured -# Seeds file needs to contain all the ip addresses of the nodes that will be part of the cluster -# The seeds.example file is a coma delimited list of IPs -# Example: 10.4.0.1,10.4.0.2,10.4.0.3 -#echo $ip > seeds.example - -# Formating and preparation of the the Attach Disk that will hold the Object Data -echo -e "o\nn\np\n1\n\n\nw" | fdisk /dev/sdc -mkfs.xfs /dev/sdc1 -mkdir -p /ecs/uuid-1 -mount /dev/sdc1 /ecs/uuid-1 - -# Executing Addtional Preparation Script -additional_prep.sh /dev/sdc1 - -# Prepare Permisions for Directory and Copy files -chown -R 444 /ecs -mkdir -p /host/data -mkdir -p /host/files -cp network.json /host/data -cp seeds /host/files -chown -R 444 /host -mkdir -p /var/log/vipr/emcvipr-object -chown 444 /var/log/vipr/emcvipr-object -mkdir /data -chown 444 /data - -# Fix SELinux permissions on the folders -mv /etc/sysconfig/docker /etc/sysconfig/dockerold - -# Start the Docker Service and Check Status -service docker restart -service docker status - -# Execute docker container -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 -docker ps diff --git a/legacy/ecs-multi-node/gce/ecs_multi_node_template.jinja b/legacy/ecs-multi-node/gce/ecs_multi_node_template.jinja deleted file mode 100644 index f6944c26..00000000 --- a/legacy/ecs-multi-node/gce/ecs_multi_node_template.jinja +++ /dev/null @@ -1,74 +0,0 @@ - -{% set DATADISK = "datadisk-" + env["name"] %} - -# Creates a Persistent Disk -# Creates an instance that attaches that Persistent Disk as a data disk -resources: -- type: compute.v1.disk - name: {{ DATADISK }} - properties: - zone: {{ properties["zone"] }} - sizeGb: 100 - # Disk type is a full URI. Example uses pd-standard, but pd-ssd can be used as well - type: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/zones/{{ properties["zone"] }}/diskTypes/pd-standard - -- type: compute.v1.instance - name: {{ env["name"] }} - properties: - zone: {{ properties["zone"] }} - machineType: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/zones/{{ properties["zone"] }}/machineTypes/n1-highmem-2 - scheduling: - preemptible: true - metadata: - items: - # For more ways to use startup scripts on an instance, see: - # https://cloud.google.com/compute/docs/startupscript - - key: startup-script - value: | - # startup script for installing ECS on GCE - echo "Starting..." - echo "Install Packages..." - yum update -y - yum install wget -y - yum install tar -y - yum install git -y - echo "Installed!" - echo "Cloning git repo" - git clone https://github.com/EMCECS/ECS-CommunityEdition.git - echo "Change directory" - cd /ECS-CommunityEdition/ecs-multi-node/ - echo "Starting ECS Install Script" - iplookup() { - python -c 'import socket, sys; print socket.gethostbyname(sys.argv[1])' "$@" 2>/dev/null - } - echo "sleep 15 seconds" - sleep 15s - node1=$(iplookup ecs1) - node2=$(iplookup ecs2) - node3=$(iplookup ecs3) - node4=$(iplookup ecs4) - echo $node1 $node2 $node3 $node4 - python step1_ecs_multinode_install.py --ips $node1 $node2 $node3 $node4 --hostnames ecs1 ecs2 ecs3 ecs4 --disks sdb --ethadapter eth0 - echo "Done! Try it out" - - disks: - - deviceName: boot - type: PERSISTENT - boot: true - autoDelete: true - initializeParams: - diskName: disk-{{ env["name"] }} - sourceImage: https://www.googleapis.com/compute/v1/projects/centos-cloud/global/images/centos-7-v20150818 - - deviceName: {{ DATADISK }} - type: PERSISTENT - source: $(ref.{{ DATADISK }}.selfLink) - autoDelete: true - - networkInterfaces: - - network: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/global/networks/default - # Access Config required to give the instance a public IP address - accessConfigs: - - name: External NAT - type: ONE_TO_ONE_NAT - - diff --git a/legacy/ecs-multi-node/gce/ecs_multinode.yaml b/legacy/ecs-multi-node/gce/ecs_multinode.yaml deleted file mode 100644 index c6cdcc42..00000000 --- a/legacy/ecs-multi-node/gce/ecs_multinode.yaml +++ /dev/null @@ -1,28 +0,0 @@ -imports: -- path: ecs_multi_node_template.jinja - -resources: -- name: ecs-firewall - type: compute.v1.firewall - properties: - allowed: - - IPProtocol: TCP - ports: [ 22,443,80,9024,9020,9011,4443 ] - sourceRanges: [ 0.0.0.0/0 ] - -- name: ecs1 - type: ecs_multi_node_template.jinja - properties: - zone: us-central1-f -- name: ecs2 - type: ecs_multi_node_template.jinja - properties: - zone: us-central1-f -- name: ecs3 - type: ecs_multi_node_template.jinja - properties: - zone: us-central1-f -- name: ecs4 - type: ecs_multi_node_template.jinja - properties: - zone: us-central1-f diff --git a/legacy/ecs-multi-node/license.lic b/legacy/ecs-multi-node/license.lic deleted file mode 100644 index cca829a0..00000000 --- a/legacy/ecs-multi-node/license.lic +++ /dev/null @@ -1,51 +0,0 @@ - - - - \ No newline at end of file diff --git a/legacy/ecs-multi-node/puppet/ecs3datanodes/facts.d/checkecsfile.sh b/legacy/ecs-multi-node/puppet/ecs3datanodes/facts.d/checkecsfile.sh deleted file mode 100644 index 80d9b5d9..00000000 --- a/legacy/ecs-multi-node/puppet/ecs3datanodes/facts.d/checkecsfile.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -/usr/bin/test -e /host/ecscontainer && echo "checkecsfile=true" diff --git a/legacy/ecs-multi-node/puppet/ecs3datanodes/manifests/configure.pp b/legacy/ecs-multi-node/puppet/ecs3datanodes/manifests/configure.pp deleted file mode 100644 index be4879c9..00000000 --- a/legacy/ecs-multi-node/puppet/ecs3datanodes/manifests/configure.pp +++ /dev/null @@ -1,125 +0,0 @@ -class ecs3datanodes::configure -{ -#Clean up first -exec{"Clean_Up": - command =>"/usr/bin/umount /dev/sdc1;/usr/bin/rm -rf /ecs /data /host /var/log/vipr/", - -}-> - -# Run a yum update -exec{"yum_update": - command => "/usr/bin/yum -q -y update; ", - timeout => 1800, - before => exec["install_wget"], - require => exec["Clean_Up"] -}-> -# Install wget -exec{"install_wget": - command => "/usr/bin/yum install wget -y ", - timeout => 1800, - require => exec["yum_update"] -}-> -#Disable SELinux -exec{"Disable_SELinux": - command => "/usr/sbin/setenforce 0 ", -}-> - -#Get Preperation script -exec{"Get_Prepration_script": - command => "/usr/bin/wget -q https://emccodevmstore001.blob.core.windows.net/test/additional_prep.sh -O /tmp/additional_prep.sh", - creates => "/tmp/additional_prep.sh", - require=>exec["Clean_Up"] -}-> - -file{"/tmp/additional_prep.sh": - mode => 777, - require => exec["Get_Prepration_script"] -}-> - -file { [ "/ecs/","/ecs/uuid-1/","/host/", "/host/files/","/host/data/", "/data/","/var/log/vipr","/var/log/vipr/emcvipr-object/" ]: - ensure => "directory", - owner=>"root", - group=>"444", - before=>file["/host/data/network.json"] -}-> - -file {"/host/data/network.json": - ensure => file, - owner=>"root", - group=>"444", - content =>"{\"private_interface_name\":\"eth0\",\"public_interface_name\":\"eth0\",\"hostname\":\"$hostname\",\"public_ip\":\"$ipaddress_eth0\"}", - before =>file["/host/files/seeds"], -}-> - -file {"/host/files/seeds": - ensure => file, - owner=>"root", - group=>"444", - content => "10.0.0.4,10.0.0.5,10.0.0.6", - before => exec["Create_partition"], - require => file["/host/data/network.json"] - }-> - -#Create Partition Hard rive -exec{"Create_partition": - command => '/usr/bin/echo -e "o\nn\np\n1\n\n\nw" | fdisk /dev/sdc ', - require => exec["Get_Prepration_script"] -}-> - -#Format New Drive -exec{"Format_drive": - command => '/usr/sbin/mkfs.xfs -f /dev/sdc1 ', - require => exec["Create_partition"] -}-> - -#Mount Drive -exec{"Mount_drive": - command => '/usr/bin/mount /dev/sdc1 /ecs/uuid-1 ', - require => exec["Format_drive"] -}-> -#run script New Drive -exec{"run_preperation_script": - command => '/tmp/additional_prep.sh /dev/sdc1 ', - require => exec["Mount_drive"] -}-> -#fix permission if needed -exec{"fix_permission": - command => '/usr/bin/chown -R 444 /ecs /data /host /var/log/vipr/emcvipr-object/ ', -}-> - -#Install Docker RPM -exec{"install_docker": - command => '/usr/bin/yum install -q -y docker' - -}-> - - -#disable Docker linux security -exec{"disable_docker_lxc": - command => '/usr/bin/rm -f /etc/sysconfig/docker', - notify => service["docker"] -}-> - -#Start Docker Service -service { "docker": - ensure => "running", -}-> - -#pull docker image -exec{"docker_pull_image_ecs": - command => '/usr/bin/docker pull emccorp/ecs-software', - -}-> -#start docker conatiner -exec{"Start_ecs_container": - command =>"/usr/bin/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 docker.io/emcorp/ecsobjectsw", -}-> -file {"/host/ecscontainer": - ensure => file, - content => "ecscontainer", - } - - - - -} diff --git a/legacy/ecs-multi-node/puppet/ecs3datanodes/manifests/ini.pp b/legacy/ecs-multi-node/puppet/ecs3datanodes/manifests/ini.pp deleted file mode 100644 index 5910a597..00000000 --- a/legacy/ecs-multi-node/puppet/ecs3datanodes/manifests/ini.pp +++ /dev/null @@ -1,13 +0,0 @@ -class ecs3datanodes { -# include ecs3datanodes::configure - - if $checkecsfile{ - notify {"ECS Container is running":} - } - else - { - notify {"Installing ECS Software":} - include ecs3datanodes::configure - } - -} diff --git a/legacy/ecs-multi-node/settings.py b/legacy/ecs-multi-node/settings.py deleted file mode 100644 index 5bfc0d47..00000000 --- a/legacy/ecs-multi-node/settings.py +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env python - -ECS_SINGLENODE_LOGGING = { - 'version': 1, - 'disable_existing_loggers': False, - 'formatters': { - 'verbose': { - 'format' : "[%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s", - 'datefmt' : "%d/%b/%Y %H:%M:%S" - }, - 'simple': { - 'format': '%(levelname)s %(message)s' - }, - }, - 'handlers': { - 'console': { - 'level': 'DEBUG', - 'class': 'logging.StreamHandler', - 'formatter': 'verbose' - }, - 'file': { - 'level': 'DEBUG', - 'class': 'logging.FileHandler', - 'formatter': 'verbose', - 'filename' : 'ecs-install-multinode.log' - } - }, - 'loggers': { - 'root': { - 'handlers': ['console', 'file'], - 'propagate': True, - 'level': 'DEBUG' - } - } -} - diff --git a/legacy/ecs-multi-node/step1_ecs_multinode_install.py b/legacy/ecs-multi-node/step1_ecs_multinode_install.py deleted file mode 100644 index 1b88d769..00000000 --- a/legacy/ecs-multi-node/step1_ecs_multinode_install.py +++ /dev/null @@ -1,780 +0,0 @@ -#!/usr/bin/env python -# An installation program for ECS SW 2.2.1 Multiple Data nodes -import argparse -import logging.config -import re -import socket -import struct -import subprocess -import sys -import time -from subprocess import PIPE, Popen - -import fcntl -import os - -import settings - -# Logging Initialization -logging.config.dictConfig(settings.ECS_SINGLENODE_LOGGING) -logger = logging.getLogger("root") - -DockerCommandLineFlags=[] - -def yum_update_func(): - """ - Performs CentOS update - """ - logger.info("Performing a yum update.") - - try: - subprocess.call(["yum", "update", "-y"]) - - except Exception as ex: - logger.exception(ex) - # Abort Program - # http://stackoverflow.com/questions/73663/terminating-a-python-script - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def package_install_func(): - """ - Installs required packages - """ - try: - - yum = "yum" - yum_arg = "install" - yum_package_wget = "wget" - yum_package_tar = "tar" - yum_package_docker = "docker" - yum_package_xfsprogs = "xfsprogs" - yum_auto_install = "-y" - - logger.info("Performing installation of the following package: {} .".format(yum_package_wget)) - subprocess.call([yum, yum_arg, yum_package_wget, yum_auto_install]) - - logger.info("Performing installation of the following package: {} .".format(yum_package_tar)) - subprocess.call([yum, yum_arg, yum_package_tar, yum_auto_install]) - - logger.info("Performing installation of the following package: {} .".format(yum_package_xfsprogs)) - subprocess.call([yum, yum_arg, yum_package_xfsprogs, yum_auto_install]) - - logger.info("Performing installation of the following package: {} .".format(yum_package_docker)) - subprocess.call([yum, yum_arg, yum_package_docker, yum_auto_install]) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def update_selinux_os_configuration(): - """ - Update the selinux permissions to permissive - """ - - logger.info("Updating SELinux to Permissive mode.") - subprocess.call(["setenforce", "0"]) - - - -def prep_file_func(): - """ - Downloads and configures the preparation file - """ - - file_name = "additional_prep.sh" - - try: - chmod = "chmod" - chmod_arg = "777" - logger.info("Changing the additional_prep.sh file permissions.") - subprocess.call([chmod, chmod_arg, file_name]) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def docker_load_image(imagefile): - """ - Load the specified docker image file. - """ - try: - logger.info("Loading docker image file %s" % imagefile) - res = subprocess.check_output("docker load -i \"%s\"" % imagefile, shell=True) - except Exception as ex: - logger.exception(ex) - logger.fatal("Error loading docker image file %s" % imagefile) - sys.exit(13) - - - -def docker_cleanup_old_images(): - """ - Clean up images and containers from the Host Docker images repository - sudo docker rm -f $(sudo docker ps -a -q) 2>/dev/null - sudo docker rmi -f $(sudo docker images -q) 2>/dev/null - """ - try: - - logger.info("Clean up Docker containers and images from the Host") - - os.system("docker rm -f $(docker ps -a -q) 2>/dev/null") - # os.system("docker rmi -f $(docker images -q) 2>/dev/null") - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -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"]) - - docker = "docker" - docker_arg = "pull" - logger.info("Executing a Docker Pull for image {}".format(docker_image_name)) - subprocess.call([docker, docker_arg, docker_image_name]) - command_line = [docker, docker_arg, docker_image_name] - command_line[1:1] = DockerCommandLineFlags - subprocess.call(command_line) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def network_file_func(ethadapter): - """ - Creates and configures the the network configuration file - """ - - try: - - # Get the IP address on Linux - s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) - ip_address = socket.inet_ntoa(fcntl.ioctl(s.fileno(), - 0x8915, struct.pack('256s', ethadapter[:15]))[20:24]) - - # Get the hostname - hostname = subprocess.check_output(['hostname']).rstrip('\r\n') - - # Create the Network.json file - logger.info("Creating the Network.json file with Ethernet Adapter: {} Hostname: {} and IP: {}:".format(ethadapter, hostname, ip_address)) - logger.info( - "{\"private_interface_name\":\"%s\",\"public_interface_name\":\"%s\",\"hostname\":\"%s\",\"data_ip\":\"%s\",\"mgmt_ip\":\"%s\",\"replication_ip\":\"%s\"}" % ( - ethadapter, ethadapter, hostname, ip_address, ip_address, ip_address)) - - # Open a file - network_file = open("network.json", "wb") - - network_string = "{\"private_interface_name\":\"%s\",\"public_interface_name\":\"%s\",\"hostname\":\"%s\",\"data_ip\":\"%s\",\"mgmt_ip\":\"%s\",\"replication_ip\":\"%s\"}" % ( - ethadapter, ethadapter, hostname, ip_address, ip_address, ip_address) - - network_file.write(network_string) - - # Close file - network_file.close() - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def seeds_file_func(ips): - """ - Creates and configures the seeds file. This file contains the list of the ECS Nodes' IPs - """ - - try: - - logger.info("Creating the seeds.example file with IP addresses: {} ".format(ips)) - # Open a file - seeds_file = open("seeds", "wb") - - seeds_file.write("%s\n" % ','.join(ips)) - - # Close file - seeds_file.close() - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def cmdline(command): - """ - Function that executes a Shell command and returns the output - :param command: Shell command to be passed in - :return: Returns a string with the Shell command output - """ - process = Popen( - args=command, - stdout=PIPE, - shell=True - ) - return process.communicate()[0] - - -def hosts_file_func(ips, hostnames): - """ - Updates the /etc/hosts file with the IP-Hostname of each one of the DataNodes in the cluster - :rtype : null - """ - - try: - logger.info("Updating the /etc/hosts file with the IP-Hostname of each one of the DataNodes in the cluster") - # Open a file - seeds_file = open("/etc/hosts", "a") - - for index in range(len(ips)): - # Check if the hosts file has the entries - hostname_exists = cmdline("cat /etc/hosts | grep %s" % ips[index]) - if not hostname_exists: - print "(Adding) Hostname does not Exist: %s %s" % (ips[index], hostnames[index]) - seeds_file.write("%s %s\n" % (ips[index], hostnames[index])) - else: - print "(Ignoring) Hostname Exists: %s" % hostname_exists - # Close file - seeds_file.close() - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def prepare_data_disk_func(disks): - """ - Prepare the data disk for usage. This includes format, and mount - """ - - try: - - # echo -e "o\nn\np\n1\n\n\nw" | fdisk /dev/sdc - - for index, disk in enumerate(disks): - disk_path = "/dev/{}".format(disk) - - logger.info("Partitioning the disk '{}'".format(disk_path)) - ps = subprocess.Popen(["echo", "-e", "\"o\nn\np\n1\n\n\nw\""], stdout=subprocess.PIPE) - output = subprocess.check_output(["fdisk", disk_path], stdin=ps.stdout) - ps.wait() - # os.system("echo -e o\nn\np\n1\n\n\nw | fdisk /dev/sdc") - - device_name = disk_path + "1" - # Make File Filesystem in attached Volume - logger.info("Make File filesystem in '{}'".format(device_name)) - subprocess.call(["mkfs.xfs", "-f", device_name]) - - uuid_name = uuid_filename(device_name) - # mkdir -p /ecs/uuid-[uuid] - logger.info("Make /ecs/{} Directory in attached Volume".format(uuid_name)) - subprocess.call(["mkdir", "-p", "/ecs/{}".format(uuid_name)]) - - # mount /dev/sdc1 /ecs/uuid-[uuid] - logger.info("Mount attached {} to /ecs/{} volume.".format(device_name, uuid_name)) - subprocess.call(["mount", device_name, "/ecs/{}".format(uuid_name), "-o", "noatime,attr2,inode64,noquota"]) - - # add entry to fstab if not pre-existing - fstab = "/etc/fstab" - p = subprocess.Popen(["grep", device_name, fstab], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - out, err = p.communicate() - if p.returncode == 0: - logger.info("Data disk already entered in fs table") - elif p.returncode == 1: - with open("/etc/fstab", 'a') as file: - file.write("{} /ecs/{} xfs rw,noatime,attr2,inode64,noquota 0 0\n".format(device_name, uuid_name) ) - else: - logger.info("Error in checking filesystem table: {}".format(err)) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - -def uuid_filename(device_name): - blkd_id_process = subprocess.Popen(["blkid", "-s", "UUID", "-o", "value", device_name], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - stdout, stderr = blkd_id_process.communicate() - return "uuid-{}".format(stdout.strip()) - - -def clean_data_disk_func(disks): - """ - Un-mounts created disks, removes files and directories created by ECS - """ - - try: - - for index, disk in enumerate(disks): - disk_path = "/dev/{}".format(disk) - - device_name = disk_path + "1" - uuid_name = uuid_filename(device_name) - uuid_name = "uuid-{}".format(index + 1) - - # umount /dev/sdc1 /ecs/uuid-[uuid] - logger.info("Umount attached /dev{} to /ecs/{} volume.".format(device_name, uuid_name)) - subprocess.call(["umount", device_name, "/ecs/{}".format(uuid_name)]) - - # rm -rf /ecs/uuid-[uuid] - logger.info("Remove /ecs/{} Directory in attached Volume".format(uuid_name)) - subprocess.call(["rm", "-rf", "/ecs/{}".format(uuid_name)]) - - logger.info("Remove {} from fs table".format(disk_path)) - fstab = "/etc/fstab" - f = open(fstab, "r+") - rl = f.readlines() - f.seek(0) - for ln in rl: - if not disk_path in ln: - f.write(ln) - f.truncate() - f.close() - - # sudo rm -rf /data/* - logger.info("Remove /data/* Directory in attached Volume") - subprocess.call(["rm", "-rf", "/data"]) - - # sudo rm -rf /var/log/vipr/emcvipr-object/* - logger.info("Remove /var/log/vipr/emcvipr-object/* Directory ") - subprocess.call(["rm", "-rf", "/var/log/vipr/emcvipr-object/*"]) - - # sudo rm -rf /ecs/* - logger.info("Remove /ecs directory on host") - subprocess.call(["rm", "-rf", "/ecs"]) - - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - - -def run_additional_prep_file_func(disks): - """ - Execute the additional preparation script - """ - - try: - prep_file_name = "./additional_prep.sh" - - chmod = "chmod" - chmod_arg = "0755" - logger.info("Setting the additional preparation script permissions.") - subprocess.call([chmod, chmod_arg, prep_file_name]) - - for disk in disks: - device_name = "/dev/{}1".format(disk) - # Gets the prep. file - logger.info("Executing the additional preparation script in '{}'".format(device_name)) - subprocess.call([prep_file_name, device_name]) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def precheck(): - """ - Checks for common errors like the /data directory not being empty before install. - """ - logger.info("PRECHECK: Check that /data directory is clean") - data_dir = "/data" - if os.path.exists(data_dir): - if not os.path.isdir(data_dir): - logger.fatal("The path %s is a file. Please delete it. It is used as a directory to store " - "configuration information for ECS." % data_dir) - sys.exit(1) - if len(os.listdir(data_dir)) > 0: - logger.fatal("The directory %s is not empty. Please remove or empty it before installing ECS. It is " - "used as a directory to store local configuration information for ECS" % data_dir) - sys.exit(1) - - -def directory_files_conf_func(): - """ - Configure and create required directories and copy files into them. - """ - try: - # chown -R 444 /ecs - logger.info("Changing /ecs folder permissions.") - subprocess.call(["chown", "-R", "444", "/ecs"]) - - # mkdir -p /host/data - logger.info("Creating the /host/data directory.") - subprocess.call(["mkdir", "-p", "/host/data"]) - - # mkdir -p /host/files - logger.info("Creating the /host/files directory.") - subprocess.call(["mkdir", "-p", "/host/files"]) - - # cp network.json /host/data - logger.info("Copying network.json to /host/data.") - subprocess.call(["cp", "network.json", "/host/data"]) - - # cp seeds /host/files - logger.info("Copying seeds file to /host/files.") - subprocess.call(["cp", "seeds", "/host/files"]) - - # chown -R 444 /host - logger.info("Changing permissions to the /host folder.") - subprocess.call(["chown", "-R", "444", "/host"]) - - # mkdir -p /var/log/vipr/emcvipr-object - logger.info("Creating the /var/log/vipr/emcvipr-object directory.") - subprocess.call(["mkdir", "-p", "/var/log/vipr/emcvipr-object"]) - - # chown 444 /var/log/vipr/emcvipr-object - logger.info("Changing permissions to /var/log/vipr/emcvipr-object directory.") - subprocess.call(["chown", "444", "/var/log/vipr/emcvipr-object"]) - - # mkdir /data - logger.info("Creating the /data folder.") - subprocess.call(["mkdir", "/data"]) - - # chown 444 /data - logger.info("Changing permissions to /data folder.") - subprocess.call(["chown", "-R", "444", "/data"]) - - # Put flag that we're really community edition so SS startup doesn't think this - # is developer sanity build. - logger.info("Marking node as ECS Community Edition (for bootstrap scripts)") - subprocess.call(["touch", "/data/is_community_edition"]) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log") - - -def set_docker_configuration_func(): - ''' - Sets Docker Configuration and Restarts the Service - ''' - - try: - - # cp /etc/sysconfig/docker /etc/sysconfig/dockerold - logger.info("Copy files /etc/sysconfig/docker to /etc/sysconfig/dockerold.") - subprocess.call(["cp", "/etc/sysconfig/docker", "/etc/sysconfig/dockerold"]) - - # service docker restart - logger.info("Restart Docker service.") - subprocess.call(["service", "docker", "restart"]) - - # service docker status - logger.info("Check Docker service status.") - subprocess.call(["service", "docker", "status"]) - - logger.info("Set container to start on boot.") - subprocess.call(["systemctl", "enable", "docker.service"]) - os.system("echo \"docker start ecsmultinode\" >>/etc/rc.local") - os.system("chmod +x /etc/rc.d/rc.local") - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log") - - -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:z -v /host:/host:z -v /var/log/vipr/emcvipr-object:/var/log:z -v /data:/data:z --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:z"]) - docker_command.extend(["-v", "/ecs:/dae:z", "-v", "/host:/host:z", "-v", "/var/log/vipr/emcvipr-object:/var/log:z", "-v", "/data:/data:z", "--net=host", - "--name=ecsmultinode", "{}".format(docker_image_name)]) - logger.info("Execute the Docker Container.") - docker_command[1:1] = DockerCommandLineFlags - logger.info(" ".join(docker_command)) - subprocess.call(docker_command) - - # docker ps - logger.info("Check the Docker processes.") - subprocess.call(["docker", "ps"]) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log") - - -def valid_ip(address): - """ - Functions that checks for valid IPs - :param address: IP Address - :return: True or False - """ - try: - socket.inet_aton(address) - return True - except: - return False - -def get_first(iterable, default=None): - """ - Returns the first item from a list - :rtype : object - """ - if iterable: - for item in iterable: - return item - return default - - -def modify_container_conf_func(no_internet): - try: - # - # Reduce number of partitions for each table from 128 to 32 to reduce memory/threads - # - logger.info("Backup common-object properties file") - os.system( - "docker exec -t ecsmultinode cp /opt/storageos/conf/common.object.properties /opt/storageos/conf/common.object.properties.old") - - logger.info("Copy common-object properties files to host") - os.system( - "docker exec -t ecsmultinode cp /opt/storageos/conf/common.object.properties /host/common.object.properties1") - - logger.info("Modify Directory Table config for multi node") - os.system( - "sed --expression='s/object.NumDirectoriesPerCoSForSystemDT=128/object.NumDirectoriesPerCoSForSystemDT=32/' --expression='s/object.NumDirectoriesPerCoSForUserDT=128/object.NumDirectoriesPerCoSForUserDT=32/' < /host/common.object.properties1 > /host/common.object.properties") - - logger.info("Copy modified files to container") - os.system( - "docker exec -t ecsmultinode cp /host/common.object.properties /opt/storageos/conf/common.object.properties") - - # - # Change Storage Server block allocation watermarks to deal with smaller storage footprints - # (NOTE: if you have 100+TB of storage you can comment this out) - # - logger.info("Backup ssm properties file") - os.system( - "docker exec -t ecsmultinode cp /opt/storageos/conf/ssm.object.properties /opt/storageos/conf/ssm.object.properties.old") - - logger.info("Copy ssm properties files to host") - os.system( - "docker exec -t ecsmultinode cp /opt/storageos/conf/ssm.object.properties /host/ssm.object.properties1") - - logger.info("Modify SSM config for multi node") - os.system( - "sed --expression='s/object.freeBlocksHighWatermarkLevels=1000,200/object.freeBlocksHighWatermarkLevels=100,50/' --expression='s/object.freeBlocksLowWatermarkLevels=0,100/object.freeBlocksLowWatermarkLevels=0,20/' < /host/ssm.object.properties1 > /host/ssm.object.properties") - - logger.info("Copy modified files to container") - os.system( - "docker exec -t ecsmultinode cp /host/ssm.object.properties /opt/storageos/conf/ssm.object.properties") - - if not no_internet: - logger.info("Adding python setuptools to container") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsmultinode python ez_setup.py --insecure") - - logger.info("Adding python requests library to container") - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsmultinode curl -OLk https://github.com/kennethreitz/requests/tarball/master") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsmultinode tar zxvf master -C /tmp") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t -i ecsmultinode bash -c \"cd /tmp/kennethreitz-requests-* && python setup.py install\"") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsmultinode curl -OLk https://bootstrap.pypa.io/ez_setup.py") - logger.info("Cleaning up python packages") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsmultinode rm master") - - # Flush vNest to clear data and restart. - logger.info("Flush VNeST data") - os.system("docker exec -t ecsmultinode rm -rf /data/vnest/vnest-main/*") - - logger.info("Stop container") - os.system("docker stop ecsmultinode") - - logger.info("Start container") - os.system("docker start ecsmultinode") - - logger.info("Clean up local files") - os.system("rm -rf /host/common.object.properties*") - os.system("rm -rf /host/ssm.object.properties*") - - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def getAuthToken(ECSNode, User, Password): - """ - Poll to see if Auth Service is active. - """ - logger.info("Waiting on Authentication Service. This may take several minutes.") - for i in range (0,60): - time.sleep(30) - try: - curlCommand = "curl -i -k https://%s:4443/login -u %s:%s" % (ECSNode, User, Password) - print ("Executing getAuthToken: %s " % curlCommand) - res=subprocess.check_output(curlCommand, shell=True) - authTokenPattern = "X-SDS-AUTH-TOKEN:(.*)\r\n" - searchObject=re.search(authTokenPattern,res) - assert searchObject, "Get Auth Token failed" - print("Auth Token %s" % searchObject.group(1)) - return searchObject.group(1) - except Exception as ex: - logger.info("Problem reaching authentication server. Retrying shortly. %s" % (ex.message)) - # logger.info("Attempting to authenticate for {} minutes.".format(i%2)) - - logger.fatal("Authentication service not yet started.") - - -def main(): - import os - - if os.getuid() != 0: - print("You need to run it as root.") - sys.exit(3) - - parser = argparse.ArgumentParser( - description='EMC\'s Elastic Cloud Storage 2.0 Software in a Docker container installation script.') - parser.add_argument('--ips', nargs='+', help='A list of data nodes\' IPs. Example: 10.1.0.4 10.1.0.5 10.1.0.6', - required=True) - parser.add_argument('--hostnames', nargs='+', - help='A list of data nodes\' hostnames. Example: ECSNode1.mydomain.com ECSNode2.mydomain.com ECSNode3.mydomain.com', - required=True) - parser.add_argument('--ethadapter', nargs='+', help='The main Ethernet Adapter used by the Host VM to communicate with the internet. Example: eth0.', - required=True) - parser.add_argument('--disks', nargs='+', help='A list of disk names to be prepared. Example: sda sdb sdc', - required=True) - parser.add_argument('--cleanup', dest='cleanup', action='store_true', - help='If present, run the Docker container/images Clean up and the /data Folder. Example: True/False', - required=False) - parser.add_argument('--imagename', dest='imagename', nargs='?', - help='If present, pulls a specific image from DockerHub. Defaults to emccorp/ecs-software-2.2', - required=False) - parser.add_argument('--imagetag', dest='imagetag', nargs='?', - help='If present, pulls a specific version of the target image from DockerHub. Defaults to latest', - required=False) - parser.add_argument('--use-urandom', dest='use_urandom', action='store_true', default=True, - help='If present, /dev/random will be mapped to /dev/urandom on the host. If you container starts up slow the first time could help.', - required=False) - parser.add_argument('--no-internet', dest='no_internet', action='store_true', default=False, - help='When specified, do not perform any actions that require an Internet connection.', - required=False) - 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-3.0.0") - parser.set_defaults(imagetag="latest") - parser.set_defaults(proxy=False) - parser.set_defaults(image_file=False) - args = parser.parse_args() - - # Check if hotname is valid - for hostname in args.hostnames: - if not re.match("^[a-z0-9]+", hostname): - logger.info("Hostname must consist of alphanumeric (lowercase) characters.") - sys.exit(2) - - - # Check if only wants to run the Container Configuration section - if args.cleanup: - logger.info("Starting CleanUp: Removing Previous Docker containers and images. Deletes the created Directories.") - subprocess.call(["service","docker","start"]) - docker_cleanup_old_images() - clean_data_disk_func(args.disks) - sys.exit(4) - - # Check if Number of IPs and Hostnames are the same - if len(args.ips) != len(args.hostnames): - print 'The number of IPs and hostnames do not match.' - sys.exit(1) - - # Check for Valid IP Addresses - for ip in args.ips: - if not valid_ip(ip): - print "Please check the --ips parameter. The IP '%s' is not valid" % ip - sys.exit(2) - - - # Check that the Selected Disks have not been initialized and can be used - for disk in args.disks: - if not os.path.exists("/dev/{}".format(disk)): - print "Disk '/dev/{}' does not exist".format(disk) - sys.exit(4) - - # disk_ready = cmdline("fdisk -l /dev/{} | grep \"Disk label type:\"".format(disk)) - # if disk_ready: - # print "Please check that Disk: {} is not formatted (fdisk -l).".format(disk) - # sys.exit(5) - # else: - # print "Disk {} checked. Ready for the installation.".format(disk) - - docker_image_name = "{}:{}".format(args.imagename, args.imagetag) - ethernet_adapter_name = get_first(args.ethadapter) - - - #Pick the first node for test purposes - ip_address = args.ips[0] - - # Step 1 : Configuration of Host Machine to run the ECS Docker Container - logger.info("Starting Step 1: Configuration of Host Machine to run the ECS Docker Container: {}".format(docker_image_name)) - - # yum_update_func() - precheck() - update_selinux_os_configuration() - if not args.no_internet: - package_install_func() - prep_file_func() - docker_cleanup_old_images() - if args.image_file: - docker_load_image(args.image_file) - elif not args.no_internet: - 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() - 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( - "Step 1 Completed. Navigate to the administrator website that is available from any of the ECS data nodes. \ - The ECS administrative portal can be accessed from port 443. For example: https://ecs-node-external-ip-address. \ - The website may take a few minutes to become available.") - - -if __name__ == "__main__": - main() diff --git a/legacy/ecs-multi-node/step2_object_provisioning.py b/legacy/ecs-multi-node/step2_object_provisioning.py deleted file mode 100644 index 5695d47e..00000000 --- a/legacy/ecs-multi-node/step2_object_provisioning.py +++ /dev/null @@ -1,360 +0,0 @@ -#!/usr/bin/env python - -import os,json -import subprocess -import shutil -import getopt -import sys,re -import time - -AuthToken=None -def getAuthToken(ECSNode, User, Password): - curlCommand = "curl -i -k https://%s:4443/login -u %s:%s" % (ECSNode, User, Password) - print ("Executing getAuthToken: %s " % curlCommand) - res=subprocess.check_output(curlCommand, shell=True) - authTokenPattern = "X-SDS-AUTH-TOKEN:(.*)\r\n" - searchObject=re.search(authTokenPattern,res) - assert searchObject, "Get Auth Token failed" - print("Auth Token %s" % searchObject.group(1)) - return searchObject.group(1) - - -def executeRestAPI(url, method, filter, data, ECSNode,contentType='json',checkOutput=0): - if data: - subprocess.call("echo %s > request_body.tmp" % data, shell=True) - data="-d @request_body.tmp" - if "license" in url: - data="-T license.lic" - curlCommand = "curl -s -k -X %s -H 'Content-Type:application/%s' \ - -H 'X-SDS-AUTH-TOKEN:%s' \ - -H 'ACCEPT:application/%s' \ - %s https://%s:4443%s" %(method, contentType, AuthToken, contentType,data, ECSNode, url) - print ("Executing REST API command: %s " % curlCommand) -#print jsonResult - if checkOutput: - jsonResult = subprocess.check_output(curlCommand, shell=True) - RestOutputDict = {} - RestOutputDict = json.loads(jsonResult) - return RestOutputDict - assert "code" not in jsonResult, "%s %s failed" % (method, url) - else: - res=subprocess.check_output(curlCommand, shell=True) - print res - - -def retry( numberOfRetries, timeToWaitBetweenTriesInSeconds, functionToRetry, argumentList, keywordArgs = {}): - for i in range(numberOfRetries): - try: - return apply(functionToRetry, argumentList, keywordArgs) - except Exception, e: - print("Method %s threw error %s" % (functionToRetry, e)) - print("Sleep for %s seconds before retry" % timeToWaitBetweenTriesInSeconds) - time.sleep(timeToWaitBetweenTriesInSeconds) - raise e - - -def getVDCID(ECSNode,VDCName): - url ='/object/vdcs/vdc/%s' %VDCName - return executeRestAPI(url, 'GET','.id', "", ECSNode,checkOutput=1)["id"] - -def getVarrayID(ECSNode): - return executeRestAPI('/vdc/data-services/varrays', 'GET','.id', "", ECSNode, checkOutput=1)['varray'][0]["id"] - -def getVpoolID(ECSNode): - return executeRestAPI('/vdc/data-service/vpools', 'GET','.id', "", ECSNode, checkOutput=1)['data_service_vpool'][0]["id"] - -def getNamespaces(ECSNode): - return executeRestAPI('/object/namespaces', 'GET','.id', "", ECSNode, checkOutput=1)['namespace'][0]["id"] - - -def DeleteNamespace(ECSNode, Namespace): - url ='/object/namespaces/namespace/%s/deactivate' %Namespace - return executeRestAPI(url, 'POST','', "", ECSNode) - - -def DeleteUser(ECSNode,userName,Namespace): - print("\nDelete User %s" % userName) - DeleteUserPayload ='{\\"user\\":\\"%s\\",\ - \\"namespace\\":\\"%s\\"\ - }' % (userName, Namespace) - executeRestAPI("/object/users/deactivate", 'POST','.id', DeleteUserPayload, ECSNode) - - -def getVDCSecretKey(self): - Log.info(LoggingInfra.logger, "Fetch VDC secret key") - secretKeyDict = self.executeRestAPI("/vdc/secret-key", 'GET', '.secret_key', "") - return secretKeyDict['secret_key'] - - -def UploadLicense(ECSNode): - executeRestAPI("/license", 'POST','', '', ECSNode, contentType='xml') - -def UploadLicenseWithRetry(ECSNode): - retry(5, 60, UploadLicense, [ECSNode]) - - -def CreateObjectVArray(ECSNode, objectVArrayName): - print("\nCreate Object Varray %s" % objectVArrayName) - objectVArrayPayload ='{\\"name\\":\\"%s\\",\ - \\"description\\":\\"%s\\",\ - \\"isProtected\\":\\"%s\\",\ - \\"isColdStorageEnabled\\":\\"%s\\"\ - }' % (objectVArrayName, objectVArrayName, "false", "false") - executeRestAPI("/vdc/data-services/varrays", 'POST','.id', objectVArrayPayload, ECSNode, checkOutput=1) - print("Object Varray %s is created" % objectVArrayName) - -def CreateObjectVarrayWithRetry(ECSNode, objectVArrayName): - retry(30, 60, CreateObjectVArray, [ECSNode, objectVArrayName]) - - -def createDataStoreOnCommodityNodes(ECSNode, dataStoreName, varray): - createDataStorePayLoad ='{ \\"nodes\\":[\ - {\ - \\"nodeId\\":\\"%s\\",\\"name\\":\\"%s\\",\ - \\"virtual_array\\":\\"%s\\",\\"description\\":\\"%s\\"\ - }]}' % (ECSNode, dataStoreName, varray, dataStoreName) - return executeRestAPI('/vdc/data-stores/commodity', 'POST','.id', createDataStorePayLoad, ECSNode) - - -def CreateDataStoreOnCommodityNodesWithRetry(ECSNode, dataStoreName, varray): - retry(5, 60, createDataStoreOnCommodityNodes, [ECSNode, dataStoreName, varray]) - - -def RetryDTStatus(ECSNode): - # DTs stagger their init, so wait for >200 before we accept 100% as okay - # Real number is more like 384. - minDt = 200 - - print("\nWaiting on Directory Tables to Initialize...") - - curlCommand = "curl -s http://%s:9101/stats/dt/DTInitStat" % (ECSNode) - timeout = time.time() + 60*60 - ret = "" - - try: - dtPrev = 1 - while True: - ret = subprocess.check_output(curlCommand, shell=True) - dtTot = re.findall("(.+?)", ret)[0] - dtUnready = re.findall("(.+?)", ret)[0] - dtUnknown = re.findall("(.+?)", ret)[0] - dtTotal = int(float(dtTot)) - dtBad = int(float(dtUnready)) + int(float(dtUnknown)) - initPercent=((dtTotal-dtBad)*100.0/dtTotal) - print("Directory Tables %.1f%% ready. (%s total %s unready %s unknown)") % (initPercent, dtTot, dtUnready, dtUnknown) - - if (dtBad == 0 and dtPrev == dtTotal and dtTotal > minDt): - break - elif(time.time() > timeout): - print("Directory Tables failed to initialize.") - break - - dtPrev = dtTotal - time.sleep(20) - - except Exception, e: - if("Cannot update" in ret): - print(ret) - else: - print("Failed to retrieve DT status: %s" % (e)) - - - -def InsertVDC(ECSNode, VDCName): - # count storagepool nodes in state "readytouse" - - for i in range(0, 9): - curlCommand = "curl -s -k -H\"X-SDS-AUTH-TOKEN: %s\" https://%s:4443/vdc/data-stores/commodity/%s\ | grep -c 'readytouse'" % (AuthToken, ECSNode, ECSNode) - stateCheck = subprocess.check_output(curlCommand, shell=True) - if stateCheck is "0": - print("Step 2 loading, Storage data creation in progress") - time.sleep(180) - elif i == 9: - print("No storage pools could be found.") - return None - else: - break - - secretKey="secret12345" - #secretKey=getVDCSecretKey() - InsertVDCPayload ='{\\"vdcName\\":\\"%s\\",\ - \\"interVdcEndPoints\\":\\"%s\\", \ - \\"secretKeys\\":\\"%s\\"\ - }' % (VDCName, ECSNode, secretKey) - executeRestAPI('/object/vdcs/vdc/%s' % VDCName, 'PUT','',InsertVDCPayload, ECSNode) - return getVDCID(ECSNode,VDCName) - - -def InsertVDCWithRetry(ECSNode, objectVpoolName): - retry(30, 60, InsertVDC, [ECSNode, objectVpoolName]) - - -def CreateObjectVpool(ECSNode, objectVpoolName, VDCName): - vdcID = getVDCID(ECSNode,VDCName) - print("\nVDC ID is %s" % vdcID) - vArrayID = getVarrayID(ECSNode) - print("\nVArray ID is %s" % vArrayID) - objectVpoolPayload ='{\\"description\\":\\"%s\\",\ - \\"name\\":\\"%s\\", \ - \\"zone_mappings\\":[\ - {\ - \\"name\\":\\"%s\\",\\"value\\":\\"%s\\"\ - }]}' % (objectVpoolName, objectVpoolName, vdcID, vArrayID) - print("\nCreate Object VPool %s" % objectVpoolName) - executeRestAPI("/vdc/data-service/vpools", 'POST','.id', objectVpoolPayload, ECSNode, checkOutput=1) - print("Object Vpool %s is created" % objectVpoolName) - -def CreateObjectVpoolWithRetry(ECSNode, objectVpoolName, VDCName): - retry(5, 60, CreateObjectVpool, [ECSNode, objectVpoolName, VDCName]) - - -def CreateNamespace(ECSNode, Namespace, objectVpoolName): - print("\nCreate Namespace %s" % Namespace) - NamespacePayload='{\\"namespace\\": \\"%s\\", \\"default_data_services_vpool\\": \\"%s\\"}'%(Namespace, objectVpoolName) - executeRestAPI("/object/namespaces/namespace", 'POST','.id', NamespacePayload, ECSNode, checkOutput=1) - print("Namespace %s is created" % Namespace) - -def CreateNamespaceWithRetry(ECSNode, Namespace): - retry(5, 60, CreateNamespace, [ECSNode, Namespace]) - - -def addUser(ECSNode,userName,Namespace): - print("\nCreate User %s" % userName) - createUserPayload ='{\\"user\\":\\"%s\\",\ - \\"namespace\\":\\"%s\\"\ - }' % (userName, Namespace) - executeRestAPI("/object/users", 'POST','.id', createUserPayload, ECSNode) - - -def addUserSecretKey(ECSNode, username): - secretKeyPayload='{\\"existing_key_expiry_time_mins\\":20000}' - secretKeyDict = executeRestAPI("/object/user-secret-keys/%s" % username, 'POST', '.secret_key', secretKeyPayload, ECSNode) - print("\nAdd secret key for user %s" % username) - -def getUserSecretKey(ECSNode, username): - secretKeyDict = executeRestAPI("/object/user-secret-keys/%s" % username, 'GET', '.secret_key', "", ECSNode, checkOutput=1) - print("\n\nUser %s SecretKey is %s" % (username,secretKeyDict['secret_key_1'])) - - - -def main(argv): - try: - opts, argv = getopt.getopt(argv, '', ["ECSNodes=","Namespace=","ObjectVArray=","ObjectVPool=","UserName=","DataStoreName=","VDCName=","MethodName=","SkipVdcProvision"]) - except getopt.GetoptError, e: - print e - print 'ObjectProvisioning.py --ECSNodes= --Namespace= --ObjectVArray= --ObjectVPool= --UserName= --DataStoreName= --VDCName= --MethodName= [--SkipVdcProvision]\n --MethodName is required only when you need to run a particular step in Object Provisioning.If this option is not provided all the Object Provisioning steps will be run.\n Supported options for --MethodName are:\n UploadLicense \n CreateObjectVarray \n GetVarrayID \n CreateDataStore \n InsertVDC \n CreateObjectVpool \n CreateNamespace \n CreateUserAndSecretKey \nUse --SkipVdcProvision for non-primary VDCs\n' - sys.exit(2) - ECSNodes="" - MethodName="" - SkipVdcProvision = False - for opt, arg in opts: - if opt == '-h': - print 'ObjectProvisioning.py --ECSNodes= --Namespace= --ObjectVArray= --ObjectVPool= --UserName= --DataStoreName= --VDCName= --MethodName= [--SkipVdcProvision]\n --MethodName is required only when you need to run a particular step in Object Provisioning.If this option is not provided all the Object Provisioning steps will be run.\n Supported options for --MethodName are:\n UploadLicense \n CreateObjectVarray \n GetVarrayID \n CreateDataStore \n InsertVDC \n CreateObjectVpool \n CreateNamespace \n CreateUserAndSecretKey \nUse --SkipVdcProvision for non-primary VDCs\n' - sys.exit() - elif opt in ("-ECSNodes", "--ECSNodes"): - ECSNodes = arg - ECSNodeList = ECSNodes.split(",") - ECSNode = ECSNodeList[0] - elif opt in ("-Namespace", "--Namespace"): - Namespace = arg - elif opt in ("-ObjectVArray", "--ObjectVArray"): - ObjectVArray = arg - elif opt in ("-ObjectVPool", "--ObjectVPool"): - ObjectVPool = arg - elif opt in ("-UserName", "--UserName"): - UserName = arg - elif opt in ("-DataStoreName", "--DataStoreName"): - DataStoreName = arg - elif opt in ("-VDCName", "--VDCName"): - VDCName = arg - elif opt in ("-MethodName", "--MethodName"): - MethodName = arg - elif opt in ("-SkipVdcProvision", "--SkipVdcProvision"): - SkipVdcProvision = True - - global AuthToken - AuthToken=getAuthToken(ECSNode, "root", "ChangeMe") - - print("ECSNodes: %s" %ECSNodes) - print("ObjectVArray: %s" %ObjectVArray) - print("DataStoreName: %s" %DataStoreName) - if not SkipVdcProvision: - print("ObjectVPool: %s" %ObjectVPool) - print("Namespace: %s" %Namespace) - print("UserName: %s" %UserName) - print("VDCName: %s" %VDCName) - print("MethodName: %s" %MethodName) - - - if MethodName == "UploadLicense": - UploadLicense(ECSNode) - sys.exit() - elif MethodName == "CreateObjectVarray": - CreateObjectVarrayWithRetry(ECSNode, ObjectVArray) - print("Virtual Array: %s" %getVarrayID(ECSNode)) - sys.exit() - elif MethodName == "GetVarrayID": - ObjectVArrayID = getVarrayID(ECSNode) - sys.exit() - elif MethodName == "CreateDataStore": - ObjectVArrayID = getVarrayID(ECSNode) - for node in ECSNodeList: - CreateDataStoreOnCommodityNodesWithRetry(node, DataStoreName, ObjectVArrayID) - time.sleep(20 * 60) - sys.exit() - elif MethodName == "InsertVDC": - InsertVDCWithRetry(ECSNode, VDCName) - print("VDCID: %s" %getVDCID(ECSNode, VDCName)) - sys.exit() - elif MethodName == "CreateObjectVpool": - CreateObjectVpoolWithRetry(ECSNode, ObjectVPool, VDCName) - print("Data service vPool ID:%s" %getVpoolID(ECSNode)) - sys.exit() - elif MethodName == "CreateNamespace": - ObjectVPoolID = getVpoolID(ECSNode) - CreateNamespace(ECSNode, Namespace, ObjectVPoolID) - print("Namespace: %s" %getNamespaces(ECSNode)) - sys.exit() - elif MethodName == "CreateUser": - addUser(ECSNode, UserName, Namespace) - sys.exit() - elif MethodName == "CreateSecretKey": - addUserSecretKey(ECSNode, UserName) - getUserSecretKey(ECSNode, UserName) - sys.exit() - elif MethodName == "DeleteUser": - DeleteUser(ECSNode, UserName, Namespace) - sys.exit() - elif MethodName == "getUserSecretKey": - getUserSecretKey(ECSNode, UserName) - sys.exit() - - else: - UploadLicense(ECSNode) - CreateObjectVarrayWithRetry(ECSNode, ObjectVArray) - print("Virtual Array: %s" %getVarrayID(ECSNode)) - ObjectVArrayID = getVarrayID(ECSNode) - - for node in ECSNodeList: - CreateDataStoreOnCommodityNodesWithRetry(node, DataStoreName, ObjectVArrayID) - - RetryDTStatus(ECSNode) - - if not SkipVdcProvision: - InsertVDC(ECSNode, VDCName) - RetryDTStatus(ECSNode) - print("VDCID: %s" %getVDCID(ECSNode, VDCName)) - CreateObjectVpoolWithRetry(ECSNode, ObjectVPool, VDCName) - print("Data service vPool ID:%s" %getVpoolID(ECSNode)) - ObjectVPoolID = getVpoolID(ECSNode) - CreateNamespace(ECSNode, Namespace, ObjectVPoolID) - print("Namespace: %s" %getNamespaces(ECSNode)) - addUser(ECSNode, UserName, Namespace) - addUserSecretKey(ECSNode, UserName) - getUserSecretKey(ECSNode, UserName) - - sys.exit() - - -if __name__ == "__main__": - main(sys.argv[1:]) diff --git a/legacy/ecs-multi-node/systemd/README.md b/legacy/ecs-multi-node/systemd/README.md deleted file mode 100644 index 70bc4119..00000000 --- a/legacy/ecs-multi-node/systemd/README.md +++ /dev/null @@ -1,13 +0,0 @@ -For systems running systemd, you can start and stop the ECS container with the system using this script. To install, run: - -``` -sudo cp docker.ecsmultinode.service /etc/systemd/system/ -sudo systemctl enable docker.ecsmultinode.service -``` - -Then your docker container will restart with the system. Also be sure that docker itself is set to restart with the system: - -``` -sudo systemctl enable docker.service -``` - diff --git a/legacy/ecs-multi-node/systemd/docker.ecsmultinode.service b/legacy/ecs-multi-node/systemd/docker.ecsmultinode.service deleted file mode 100644 index 01a94fec..00000000 --- a/legacy/ecs-multi-node/systemd/docker.ecsmultinode.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=ECS Multinode Container -Requires=docker.service -After=docker.service - -[Service] -Restart=always -ExecStart=/usr/bin/docker start -a ecsmultinode -ExecStop=/usr/bin/docker stop -t 60 ecsmultinode - -[Install] -WantedBy=multi-user.target - diff --git a/legacy/ecs-single-node/.gitignore b/legacy/ecs-single-node/.gitignore deleted file mode 100644 index a2c7c760..00000000 --- a/legacy/ecs-single-node/.gitignore +++ /dev/null @@ -1,49 +0,0 @@ -# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion - -*.iml - -## Directory-based project format: -.idea/ -# if you remove the above rule, at least ignore the following: - -# User-specific stuff: -# .idea/workspace.xml -# .idea/tasks.xml -# .idea/dictionaries - -# Sensitive or high-churn files: -# .idea/dataSources.ids -# .idea/dataSources.xml -# .idea/sqlDataSources.xml -# .idea/dynamic.xml -# .idea/uiDesigner.xml - -# Gradle: -# .idea/gradle.xml -# .idea/libraries - -# Mongo Explorer plugin: -# .idea/mongoSettings.xml - -## File-based project format: -*.ipr -*.iws - -## Plugin-specific files: - -# IntelliJ -/out/ - -# mpeltonen/sbt-idea plugin -.idea_modules/ - -# JIRA plugin -atlassian-ide-plugin.xml - -# Crashlytics plugin (for Android Studio and IntelliJ) -com_crashlytics_export_strings.xml -crashlytics.properties -crashlytics-build.properties - -# Vagrant -.vagrant/ diff --git a/legacy/ecs-single-node/README.md b/legacy/ecs-single-node/README.md deleted file mode 100644 index 6fd1661a..00000000 --- a/legacy/ecs-single-node/README.md +++ /dev/null @@ -1,20 +0,0 @@ -# ECS SW 2.x Single Node Deployments - -Welcome to the Single Node installation for ECS Software 2.x. We have provided the following deployment options: - - -- **[ECS Single Node Docker Deployment](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-SingleNode-Instructions.md "ECS Single Node Deployment Information")** -- **[ECS Single Node Vagrant Deployment](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-SingleNode-Vagrant-Instructions.md "ECS Single Node Vagrant Deployment Information")** -- **[Google Compute Engine Single Node Deployment](https://github.com/EMCECS/ECS-CommunityEdition/blob/master/Documentation/ECS-GCE-SingleNode-Instructions.md "ECS GCE Single Node Deployment")** - - -## Requirements - -The most machine should have these following minimum requirements: - -- **Operative system:** CentOS 7.1 -- **CPU/Cores:** 4 Cores -- **Memory:** Minimum of 16 GB RAM -- **Disks:** An unpartitioned/raw disk with at least 100 GB of storage per disk per host. Multiple disks can be attached on each node to increase capacity and performance. Each disk needs to be de-partitioned before running the installation scripts (you can use the --cleanup option with the step1 script to accomplish this automatically). - -Installation also requires internet connectivity to recieve the requisite utility packages and Docker images. diff --git a/legacy/ecs-single-node/Vagrantfile b/legacy/ecs-single-node/Vagrantfile deleted file mode 100644 index 8521e02b..00000000 --- a/legacy/ecs-single-node/Vagrantfile +++ /dev/null @@ -1,27 +0,0 @@ -# -*- mode: ruby -*- -# vi: set ft=ruby : - -Vagrant.configure(2) do |config| - - config.vm.define :managed_linux do |ml_config| - - ml_config.vm.box = "tknerr/managed-server-dummy" - - ml_config.vm.synced_folder ".", "/ecs" - - ml_config.vm.provider :managed do |managed, override| - managed.server = "your_host.com" - override.ssh.username = "your_username" - override.ssh.password = "your_password" - override.ssh.port = 22 - #override.ssh.private_key_path = "/path/to/bobs_private_key" - end - - ml_config.vm.provision "shell" do |s| - s.inline = "sh /ecs/vagrant-install.sh" - s.privileged = true - end - - end - -end diff --git a/legacy/ecs-single-node/__init__.py b/legacy/ecs-single-node/__init__.py deleted file mode 100644 index e69de29b..00000000 diff --git a/legacy/ecs-single-node/additional_prep.sh b/legacy/ecs-single-node/additional_prep.sh deleted file mode 100644 index 9648153f..00000000 --- a/legacy/ecs-single-node/additional_prep.sh +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/bash - -MOUNT=/bin/mount -UMOUNT=/bin/umount -GREP=/usr/bin/grep -AWK=/usr/bin/awk -DF=/bin/df -FALLOCATE=/usr/bin/fallocate -XFS_DB=/usr/sbin/xfs_db -#XFS_CHECK=/usr/sbin/xfs_check -XFS_REPAIR=/sbin/xfs_repair -DD=/bin/dd - -# size of chunk file -FILE_SIZE_GB=10 - -function usage { - echo "usage: $0 " - exit 1 -} - -device=$1 -mount_point=`$MOUNT | $GREP $device | $AWK '{print $3}'` - -if [ -z "$device" -o -z "$mount_point" ]; then - usage -fi - -# mount file system to create files on it -$MOUNT | $GREP $device -q -if [ $? -eq 1 ]; then - echo "mount $device" - $MOUNT $device $mount_point -fi - -num_files=`$DF -BG $mount_point | $GREP $mount_point | $AWK -v FGB=$FILE_SIZE_GB '{gsub("G", "", $4); print int($4 / FGB)}'` - -# Remove one block so we can account for XFS reserved space. -((num_files--)) -declare -a inodes -for ((i=0;i<$num_files;i++)) { - file=`printf "%04d\n" $i` - echo "create file $file" - $FALLOCATE -l ${FILE_SIZE_GB}G $mount_point/$file - inodes[$i]=`ls -i $mount_point/$file | $AWK '{print $1}'` -} - -# umount file system and force allocation of data blocks -$UMOUNT $device - -for inode in ${inodes[@]}; do - num_extents=`$XFS_DB -c "inode $inode" -c "print u.bmx" $device | $AWK '{if ($0 ~ "not found") {print 0} else {print NF - 3}}'` - # inode locates on offset inode # * inode size (256 by default) on disk - # and the first extent locates at offset 100 in the inode - extent_offset=$((inode*256+100)) - for ((i=0;i<$num_extents;i++)) { - echo "set extent $i of inode $inode at $extent_offset" - # the extent status flag is the first two MSB - # as the file size is just a few GB, the rest bits in the first byte are all zeros - $DD if=/dev/zero of=$device bs=1 count=1 seek=$extent_offset > /dev/null 2>&1 - - # each extent is 16 bytes - extent_offset=$((extent_offset+16)) - } - - # show the extents after force allocation - $XFS_DB -c "inode $inode" -c "print u.bmx" $device -done - -$XFS_REPAIR -n $device -if [ $? -ne 0 ]; then - echo "fs check failed" - exit 1 -fi - -# mount again, the file system is now ready -$MOUNT $device $mount_point -o rw,noatime,attr2,inode64,noquota - -# Add the filesystem to /etc/fstab -grep "$device" /etc/fstab || echo "$MOUNT $device $mount_point -o rw,noatime,attr2,inode64,noquota 0 0" >> /etc/fstab diff --git a/legacy/ecs-single-node/gce/ecs_node_template.jinja b/legacy/ecs-single-node/gce/ecs_node_template.jinja deleted file mode 100644 index 732f2260..00000000 --- a/legacy/ecs-single-node/gce/ecs_node_template.jinja +++ /dev/null @@ -1,65 +0,0 @@ - -{% set DATADISK = "datadisk-" + env["name"] %} - -# Creates a Persistent Disk -# Creates an instance that attaches that Persistent Disk as a data disk -resources: -- type: compute.v1.disk - name: {{ DATADISK }} - properties: - zone: {{ properties["zone"] }} - sizeGb: 100 - # Disk type is a full URI. Example uses pd-standard, but pd-ssd can be used as well - type: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/zones/{{ properties["zone"] }}/diskTypes/pd-standard - -- type: compute.v1.instance - name: {{ env["name"] }} - properties: - zone: {{ properties["zone"] }} - machineType: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/zones/{{ properties["zone"] }}/machineTypes/n1-highmem-8 - scheduling: - preemptible: true - metadata: - items: - # For more ways to use startup scripts on an instance, see: - # https://cloud.google.com/compute/docs/startupscript - - key: startup-script - value: | - # startup script for installing ECS on GCE - echo "Starting..." - echo "Install Packages..." - yum update -y - yum install wget -y - yum install tar -y - yum install git -y - echo "Installed!" - echo "Cloning git repo" - git clone https://github.com/EMCECS/ECS-CommunityEdition.git - echo "Change directory" - cd /ECS-CommunityEdition/ecs-single-node/ - echo "Starting ECS Install Script" - python step1_ecs_singlenode_install.py --disks sdb --ethadapter eth0 --hostname ecs1 - echo "Upload License" - python step2_object_provisioning.py --ECSNodes=$(ip a | sed -n 's/\s*inet \(.*\)\/.*eth0.*/\1/p') --Namespace=ns1 --ObjectVArray=sp1 --ObjectVPool=rg1 --UserName=user1 --DataStoreName=ds1 --VDCName=vdc1 - echo "Done! Try it out" - disks: - - deviceName: boot - type: PERSISTENT - boot: true - autoDelete: true - initializeParams: - diskName: disk-{{ env["name"] }} - sourceImage: https://www.googleapis.com/compute/v1/projects/centos-cloud/global/images/centos-7-v20150818 - - deviceName: {{ DATADISK }} - type: PERSISTENT - source: $(ref.{{ DATADISK }}.selfLink) - autoDelete: true - - networkInterfaces: - - network: https://www.googleapis.com/compute/v1/projects/{{ env["project"] }}/global/networks/default - # Access Config required to give the instance a public IP address - accessConfigs: - - name: External NAT - type: ONE_TO_ONE_NAT - - diff --git a/legacy/ecs-single-node/gce/ecs_singlenode.yaml b/legacy/ecs-single-node/gce/ecs_singlenode.yaml deleted file mode 100644 index 884efd83..00000000 --- a/legacy/ecs-single-node/gce/ecs_singlenode.yaml +++ /dev/null @@ -1,16 +0,0 @@ -imports: -- path: ecs_node_template.jinja - -resources: -- name: ecs1 - type: ecs_node_template.jinja - properties: - zone: us-central1-f - -- name: ecs-firewall - type: compute.v1.firewall - properties: - allowed: - - IPProtocol: TCP - ports: [ 22,443,80,9024,9020,9011,4443 ] - sourceRanges: [ 0.0.0.0/0 ] \ No newline at end of file diff --git a/legacy/ecs-single-node/license.lic b/legacy/ecs-single-node/license.lic deleted file mode 100644 index cca829a0..00000000 --- a/legacy/ecs-single-node/license.lic +++ /dev/null @@ -1,51 +0,0 @@ - - - - \ No newline at end of file diff --git a/legacy/ecs-single-node/settings.py b/legacy/ecs-single-node/settings.py deleted file mode 100644 index 085e001f..00000000 --- a/legacy/ecs-single-node/settings.py +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env python - -ECS_SINGLENODE_LOGGING = { - 'version': 1, - 'disable_existing_loggers': False, - 'formatters': { - 'verbose': { - 'format' : "[%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s", - 'datefmt' : "%d/%b/%Y %H:%M:%S" - }, - 'simple': { - 'format': '%(levelname)s %(message)s' - }, - }, - 'handlers': { - 'console': { - 'level': 'DEBUG', - 'class': 'logging.StreamHandler', - 'formatter': 'verbose' - }, - 'file': { - 'level': 'DEBUG', - 'class': 'logging.FileHandler', - 'formatter': 'verbose', - 'filename' : 'ecs-install-singlenode.log' - } - }, - 'loggers': { - 'root': { - 'handlers': ['console', 'file'], - 'propagate': True, - 'level': 'DEBUG' - } - } -} diff --git a/legacy/ecs-single-node/step1_ecs_singlenode_install.py b/legacy/ecs-single-node/step1_ecs_singlenode_install.py deleted file mode 100644 index 4c0d3997..00000000 --- a/legacy/ecs-single-node/step1_ecs_singlenode_install.py +++ /dev/null @@ -1,814 +0,0 @@ -#!/usr/bin/env python -# An installation program for ECS SW 2.1 Single Data node -import argparse -import logging.config -import re -import socket -import string -import struct -import subprocess -import sys -import time - -import fcntl -import os - -import settings - -# Logging Initialization -logging.config.dictConfig(settings.ECS_SINGLENODE_LOGGING) -logger = logging.getLogger("root") - -DockerCommandLineFlags=[] - -def yum_func(): - """ - Performs CentOS update - """ - logger.info("Performing a yum update.") - - try: - subprocess.call(["yum", "update", "-y"]) - - except Exception as ex: - logger.exception(ex) - # Abort Program - # http://stackoverflow.com/questions/73663/terminating-a-python-script - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def package_install_func(): - """ - Installs required packages - """ - try: - - yum = "yum" - yum_arg = "install" - yum_package_wget = "wget" - yum_package_tar = "tar" - yum_package_docker = "docker" - yum_package_xfsprogs = "xfsprogs" - yum_auto_install = "-y" - - logger.info("Performing installation of the following package: {} .".format(yum_package_wget)) - subprocess.call([yum, yum_arg, yum_package_wget, yum_auto_install]) - - logger.info("Performing installation of the following package: {} .".format(yum_package_tar)) - subprocess.call([yum, yum_arg, yum_package_tar, yum_auto_install]) - - logger.info("Performing installation of the following package: {} .".format(yum_package_xfsprogs)) - subprocess.call([yum, yum_arg, yum_package_xfsprogs, yum_auto_install]) - - logger.info("Performing installation of the following package: {} .".format(yum_package_docker)) - subprocess.call([yum, yum_arg, yum_package_docker, yum_auto_install]) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def update_selinux_os_configuration(): - """ - Update the selinux permissions to permissive - """ - - logger.info("Updating SELinux to Permissive mode.") - subprocess.call(["setenforce", "0"]) - - -def prep_file_func(): - """ - Downloads and configures the preparation file - """ - try: - logger.info("Changing the additional_prep.sh file permissions.") - subprocess.call(["chmod", "777", "additional_prep.sh"]) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def docker_cleanup_old_images(): - """ - Clean up images and containers from the Host Docker images repository - sudo docker rm -f $(sudo docker ps -a -q) 2>/dev/null - sudo docker rmi -f $(sudo docker images -q) 2>/dev/null - """ - try: - - logger.info("Clean up Docker containers and images from the Host") - - os.system("docker "+' '.join(DockerCommandLineFlags)+" rm -f $(docker "+' '.join(DockerCommandLineFlags)+" ps -a -q) 2>/dev/null") - #os.system("docker rmi -f $(docker images -q) 2>/dev/null") - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -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"]) - - docker = "docker" - docker_arg = "pull" - logger.info("Executing a Docker Pull for image {}".format(docker_image_name)) - command_line = [docker, docker_arg, docker_image_name] - command_line[1:1] = DockerCommandLineFlags - subprocess.call(command_line) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def hosts_file_func(hostname, ethadapter): - """ - Updates the /etc/hosts file with the IP-Hostname of each one of the DataNodes in the cluster - :rtype : null - """ - - try: - logger.info("Updating the /etc/hostname file with the Parameter Hostname") - hostname_exists = cmdline("cat /etc/hostname | grep %s" % hostname) - if not hostname_exists: - print "(Adding) Hostname does not Exist: %s" % hostname - os.remove("/etc/hostname") - hostname_file=open("/etc/hostname", "wb") - hostname_file.write(str(hostname)) - hostname_file.close() - else: - print "(Ignoring) Hostname Exists: %s" % hostname_exists - - logger.info("Updating the /etc/hosts file with the Parameter Hostname") - - # Get the IP address on Linux - s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) - ip_address = socket.inet_ntoa(fcntl.ioctl(s.fileno(), - 0x8915, struct.pack('256s', ethadapter[:15]))[20:24]) - - # Open a file hosts - hosts_file = open("/etc/hosts", "a") - # Check if the hosts file has the entries - hostname_exists = cmdline("cat /etc/hosts | grep %s" % hostname) - if not hostname_exists: - print "(Adding) Hostname does not Exist: %s %s" % (ip_address, hostname) - hosts_file.write("%s %s\n" % (ip_address, hostname)) - else: - print "(Ignoring) Hostname Exists: %s" % hostname_exists - # Close file - hosts_file.close() - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - -def network_file_func(ethadapter): - """ - Creates and configures the the network configuration file - """ - - try: - - # Get the IP address on Linux - s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) - ip_address = socket.inet_ntoa(fcntl.ioctl(s.fileno(), - 0x8915, struct.pack('256s', ethadapter[:15]))[20:24]) - - # Get the hostname - hostname = subprocess.check_output(['hostname']).rstrip('\r\n') - - # Create the Network.json file - logger.info("Creating the Network.json file with Ethernet Adapter: {} Hostname: {} and IP: {}:".format(ethadapter, hostname, ip_address)) - logger.info( - "{\"private_interface_name\":\"%s\",\"public_interface_name\":\"%s\",\"hostname\":\"%s\",\"data_ip\":\"%s\",\"mgmt_ip\":\"%s\",\"replication_ip\":\"%s\"}" % ( - ethadapter, ethadapter, hostname, ip_address, ip_address, ip_address)) - - # Open a file - network_file = open("network.json", "wb") - - network_string = "{\"private_interface_name\":\"%s\",\"public_interface_name\":\"%s\",\"hostname\":\"%s\",\"data_ip\":\"%s\",\"mgmt_ip\":\"%s\",\"replication_ip\":\"%s\"}" % ( - ethadapter, ethadapter, hostname, ip_address, ip_address, ip_address) - - network_file.write(network_string) - - # Close file - network_file.close() - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def seeds_file_func(ethadapter): - """ - Creates and configures the seeds file - """ - - try: - # Get the IP address on Linux - s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) - ip_address = socket.inet_ntoa(fcntl.ioctl(s.fileno(), - 0x8915, struct.pack('256s', ethadapter[:15]))[20:24]) - - logger.info("Creating the seeds file with IP address: {} ".format(ip_address)) - # Open a file - seeds_file = open("seeds", "wb") - - seeds_file.write("%s" % ip_address) - - # Close file - seeds_file.close() - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def prepare_data_disk_func(disks): - """ - Prepare the data disk for usage. This includes format, and mount - """ - - try: - - # echo -e "o\nn\np\n1\n\n\nw" | fdisk /dev/sdc - - for index, disk in enumerate(disks): - disk_path = "/dev/{}".format(disk) - - if "{}1".format(disk) in cmdline("fdisk -l"): - logger.fatal("Partitioned disk {} already mounted. Please unmount and re-initialize disk before retrying.".format(disk)) - sys.exit() - - logger.info("Partitioning the disk '{}'".format(disk_path)) - ps = subprocess.Popen(["echo", "-e", "\"o\nn\np\n1\n\n\nw\""], stdout=subprocess.PIPE) - output = subprocess.check_output(["fdisk", disk_path], stdin=ps.stdout) - ps.wait() - # os.system("echo -e o\nn\np\n1\n\n\nw | fdisk /dev/sdc") - - device_name = disk_path + "1" - # Make File Filesystem in attached Volume - logger.info("Make File filesystem in '{}'".format(device_name)) - subprocess.call(["mkfs.xfs", "-f", device_name]) - - uuid_name = uuid_filename(device_name) - # mkdir -p /ecs/uuid-[uuid] - logger.info("Make /ecs/{} Directory in attached Volume".format(uuid_name)) - subprocess.call(["mkdir", "-p", "/ecs/{}".format(uuid_name)]) - - # mount /dev/sdc1 /ecs/uuid-[uuid] - logger.info("Mount attached {} to /ecs/{} volume.".format(device_name, uuid_name)) - subprocess.call(["mount", device_name, "/ecs/{}".format(uuid_name), "-o", "noatime,attr2,inode64,noquota"]) - - # add entry to fstab if not pre-existing - fstab = "/etc/fstab" - p = subprocess.Popen(["grep", device_name, fstab], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - out, err = p.communicate() - if p.returncode == 0: - logger.info("Data disk already entered in fs table") - elif p.returncode == 1: - with open("/etc/fstab", 'a') as file: - file.write("{} /ecs/{} xfs rw,noatime,attr2,inode64,noquota 0 0\n".format(device_name, uuid_name) ) - else: - logger.info("Error in checking filesystem table: {}".format(err)) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - -def uuid_filename(device_name): - blkd_id_process = subprocess.Popen(["blkid", "-s", "UUID", "-o", "value", device_name], stdout=subprocess.PIPE, stderr=subprocess.PIPE) - stdout, stderr = blkd_id_process.communicate() - return "uuid-{}".format(stdout.strip()) - - -def run_additional_prep_file_func(disks): - """ - Execute the additional preparation script - """ - - try: - prep_file_name = "./additional_prep.sh" - - for disk in disks: - device_name = "/dev/{}1".format(disk) - # Gets the prep. file - logger.info("Executing the additional preparation script in '{}'".format(device_name)) - subprocess.call([prep_file_name, device_name]) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def directory_files_conf_func(): - ''' - Configure and create required directories and copy files into them. - ''' - try: - # chown -R 444 /ecs - logger.info("Changing /ecs folder permissions.") - subprocess.call(["chown", "-R", "444", "/ecs"]) - - # mkdir -p /host/data - logger.info("Creating the /host/data directory.") - subprocess.call(["mkdir", "-p", "/host/data"]) - - # mkdir -p /host/files - logger.info("Creating the /host/files directory.") - subprocess.call(["mkdir", "-p", "/host/files"]) - - # cp network.json /host/data - logger.info("Copying network.json to /host/data.") - subprocess.call(["cp", "network.json", "/host/data"]) - - # cp seeds /host/files - logger.info("Copying seeds file to /host/files.") - - subprocess.call(["cp", "seeds", "/host/files"]) - - # chown -R 444 /host - logger.info("Changing permissions to the /host folder.") - subprocess.call(["chown", "-R", "444", "/host"]) - - # mkdir -p /var/log/vipr/emcvipr-object - logger.info("Creating the /var/log/vipr/emcvipr-object directory.") - subprocess.call(["mkdir", "-p", "/var/log/vipr/emcvipr-object"]) - - # chown 444 /var/log/vipr/emcvipr-object - logger.info("Changing permissions to /var/log/vipr/emcvipr-object directory.") - subprocess.call(["chown", "444", "/var/log/vipr/emcvipr-object"]) - - # mkdir /data - logger.info("Creating the /data folder.") - subprocess.call(["mkdir", "/data"]) - - # chown 444 /data - logger.info("Changing permissions to /data folder.") - subprocess.call(["chown", "-R", "444", "/data"]) - - # Put flag that we're really community edition so SS startup doesn't think this - # is developer sanity build. - logger.info("Marking node as ECS Community Edition (for bootstrap scripts)") - subprocess.call(["touch", "/data/is_community_edition"]) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log") - - -def set_docker_configuration_func(): - ''' - Sets Docker Configuration and Restarts the Service - ''' - - try: - - # cp /etc/sysconfig/docker /etc/sysconfig/dockerold - logger.info("Copy files /etc/sysconfig/docker to /etc/sysconfig/dockerold.") - subprocess.call(["cp", "/etc/sysconfig/docker", "/etc/sysconfig/dockerold"]) - - # service docker restart - logger.info("Restart Docker service.") - subprocess.call(["service", "docker", "restart"]) - - # service docker status - logger.info("Check Docker service status.") - subprocess.call(["service", "docker", "status"]) - - # set container to start on boot - logger.info("Set container to start on boot.") - subprocess.call(["systemctl", "enable", "docker.service"]) - os.system("echo \"docker start ecsstandalone\" >>/etc/rc.local") - os.system("chmod +x /etc/rc.d/rc.local") - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log") - - -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:z"]) - docker_command.extend(["-v", "/ecs:/dae:z", "-v", "/host:/host:z", "-v", "/var/log/vipr/emcvipr-object:/var/log:z", "-v", "/data:/data:z", "--net=host", - "--name=ecsstandalone", "{}".format(docker_image_name)]) - logger.info("Execute the Docker Container.") - docker_command[1:1] = DockerCommandLineFlags - logger.info(" ".join(docker_command)) - subprocess.call(docker_command) - - # docker ps - logger.info("Check the Docker processes.") - command_line = ["docker", "ps"] - command_line[1:1] = DockerCommandLineFlags - subprocess.call(command_line) - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log") - - -def cmdline(command): - """ - Function that executes a Shell command and returns the output - :param command: Shell command to be passed in - :return: Returns a string with the Shell command output - """ - process = subprocess.Popen( - args=command, - stdout=subprocess.PIPE, - shell=True - ) - return process.communicate()[0] - - -def modify_container_conf_func(no_internet): - try: - logger.info("Backup object properties files") - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone cp /opt/storageos/conf/cm.object.properties /opt/storageos/conf/cm.object.properties.old") - - logger.info("Backup application config file") - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone cp /opt/storageos/ecsportal/conf/application.conf /opt/storageos/ecsportal/conf/application.conf.old") - - logger.info("Backup common-object properties file") - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone cp /opt/storageos/conf/common.object.properties /opt/storageos/conf/common.object.properties.old") - - logger.info("Backup ssm properties file") - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone cp /opt/storageos/conf/ssm.object.properties /opt/storageos/conf/ssm.object.properties.old") - - logger.info("Copy object properties files to host") - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone cp /opt/storageos/conf/cm.object.properties /host/cm.object.properties1") - - logger.info("Copy common-object properties files to host") - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone cp /opt/storageos/conf/common.object.properties /host/common.object.properties1") - - logger.info("Copy ssm properties files to host") - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone cp /opt/storageos/conf/ssm.object.properties /host/ssm.object.properties1") - - logger.info("Modify BlobSvc config for single node") - os.system( - "sed s/object.MustHaveEnoughResources=true/object.MustHaveEnoughResources=false/ < /host/cm.object.properties1 > /host/cm.object.properties") - - logger.info("Modify Directory Table config for single node") - os.system( - "sed --expression='s/object.NumDirectoriesPerCoSForSystemDT=128/object.NumDirectoriesPerCoSForSystemDT=32/' --expression='s/object.NumDirectoriesPerCoSForUserDT=128/object.NumDirectoriesPerCoSForUserDT=32/' < /host/common.object.properties1 > /host/common.object.properties") - - logger.info("Modify SSM config for small footprint") - os.system( - "sed --expression='s/object.freeBlocksHighWatermarkLevels=1000,200/object.freeBlocksHighWatermarkLevels=100,50/' --expression='s/object.freeBlocksLowWatermarkLevels=0,100/object.freeBlocksLowWatermarkLevels=0,20/' < /host/ssm.object.properties1 > /host/ssm.object.properties") - - logger.info("Copy modified files to container") - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone cp /host/cm.object.properties /opt/storageos/conf/cm.object.properties") - - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone cp /host/common.object.properties /opt/storageos/conf/common.object.properties") - - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone cp /host/ssm.object.properties /opt/storageos/conf/ssm.object.properties") - - - if not no_internet: - logger.info("Adding python setuptools to container") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone python ez_setup.py --insecure") - - logger.info("Adding python requests library to container") - os.system( - "docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone curl -OLk https://github.com/kennethreitz/requests/tarball/master") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone tar zxvf master -C /tmp") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t -i ecsstandalone bash -c \"cd /tmp/kennethreitz-requests-* && python setup.py install\"") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone curl -OLk https://bootstrap.pypa.io/ez_setup.py") - logger.info("Cleaning up python packages") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone rm master") - - logger.info("Flush VNeST data") - os.system("docker "+' '.join(DockerCommandLineFlags)+" exec -t ecsstandalone rm -rf /data/vnest/vnest-main/*") - - logger.info("Stop container") - os.system("docker "+' '.join(DockerCommandLineFlags)+" stop ecsstandalone") - - logger.info("Start container") - os.system("docker "+' '.join(DockerCommandLineFlags)+" start ecsstandalone") - - logger.info("Clean up local files") - os.system("rm -rf /host/cm.object.properties*") - os.system("rm -rf /host/application.conf") - os.system("rm -rf /host/common.object.properties*") - - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - -def getAuthToken(ECSNode, User, Password): - """ - Poll to see if Auth Service is active. - """ - logger.info("Waiting on Authentication Service. This may take several minutes.") - for i in range (0,60): - time.sleep(30) - try: - curlCommand = "curl -i -k https://%s:4443/login -u %s:%s" % (ECSNode, User, Password) - print ("Executing getAuthToken: %s " % curlCommand) - res=subprocess.check_output(curlCommand, shell=True) - authTokenPattern = "X-SDS-AUTH-TOKEN:(.*)\r\n" - searchObject=re.search(authTokenPattern,res) - assert searchObject, "Get Auth Token failed" - print("Auth Token %s" % searchObject.group(1)) - return searchObject.group(1) - except Exception as ex: - logger.info("Problem reaching authentication server. Retrying shortly.") - # logger.info("Attempting to authenticate for {} minutes.".format(i%2)) - - logger.fatal("Authentication service not yet started.") - -def docker_load_image(imagefile): - """ - Loads the specified docker image file. - """ - try: - logger.info("Loading docker image file %s" % imagefile) - res = subprocess.check_output("docker load -i \"%s\"" % imagefile, shell=True) - except Exception as ex: - logger.exception(ex) - logger.fatal("Error loading docker image file %s" % imagefile) - sys.exit(13) - - - -def docker_cleanup_old_images(): - """ - Clean up images and containers from the Host Docker images repository - sudo docker rm -f $(sudo docker ps -a -q) 2>/dev/null - sudo docker rmi -f $(sudo docker images -q) 2>/dev/null - """ - try: - - logger.info("Clean up Docker containers and images from the Host") - - os.system("docker "+' '.join(DockerCommandLineFlags)+" rm -f $(docker ps -a -q) 2>/dev/null") - #os.system("docker rmi -f $(docker images -q) 2>/dev/null") - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - - -def cleanup_installation(disks): - """ - Clean the directory and files created by ECS. It un-mounts the drive and performs a directory cleanup - """ - try: - - logger.info("CleanUp Installation. Un-mount Drive and Delete Directories and Files from the Host") - - for index, disk in enumerate(disks): - disk_path = "/dev/{}".format(disk) - - device_name = disk_path + "1" - uuid_name = uuid_filename(device_name) - - # umount /dev/sdc1 /ecs/uuid-[uuid] - logger.info("Umount attached /dev{} to /ecs/{} volume.".format(device_name, uuid_name)) - subprocess.call(["umount", device_name, "/ecs/{}".format(uuid_name)]) - - # rm -rf /ecs/uuid-[uuid] - logger.info("Remove /ecs/{} Directory in attached Volume".format(uuid_name)) - subprocess.call(["rm", "-rf", "/ecs/{}".format(uuid_name)]) - - # dd if=/dev/zero of=/dev/sdc bs=512 count=1 conv=notrunc - logger.info("Destroying partition table for {}".format(disk_path)) - subprocess.call(["dd", "if=/dev/zero", "of={}".format(disk_path), "bs=512", "count=1", "conv=notrunc"]) - - logger.info("Remove {} from fs table".format(disk_path)) - fstab = "/etc/fstab" - f = open(fstab, "r+") - rl = f.readlines() - f.seek(0) - for ln in rl: - if not disk_path in ln: - f.write(ln) - f.truncate() - f.close() - - - # sudo rm -rf /data/* - logger.info("Remove /data Directory") - subprocess.call(["rm", "-rf", "/data"]) - - # sudo rm -rf /var/log/vipr/emcvipr-object/* - logger.info("Remove /var/log/vipr/emcvipr-object Directory ") - subprocess.call(["rm", "-rf", "/var/log/vipr/emcvipr-object"]) - - # sudo rm -rf /ecs/* - logger.info("Remove /data Directory") - subprocess.call(["rm", "-rf", "/ecs"]) - - - except Exception as ex: - logger.exception(ex) - logger.fatal("Aborting program! Please review log.") - sys.exit() - - -def get_first(iterable, default=None): - """ - Returns the first item from a list - :rtype : object - """ - if iterable: - for item in iterable: - return item - return default - -# Main Execution -def main(): - import os - - if os.getuid() != 0: - print("You need to run it as root.") - sys.exit(3) - - parser = argparse.ArgumentParser( - description='EMC\'s Elastic Cloud Storage Software Single Node Docker container installation script. ') - parser.add_argument('--disks', nargs='+', help='The disk(s) name(s) to be prepared. Example: sda sdb sdc', - required=True) - parser.add_argument('--hostname', - help='Host VM hostname. Example: ECSNode1.mydomain.com', - required=True) - parser.add_argument('--ethadapter', help='The main Ethernet Adapter used by the Host VM to communicate with the internet. Example: eth0.', - required=True) - parser.add_argument('--onlyContainerConfig', dest='container_config', action='store_true', - help='If present, it will only run the container configuration. Example: True/False', - required=False) - parser.add_argument('--cleanup', dest='cleanup', action='store_true', - help='If present, run the Docker container/images Clean up and the /data Folder. Example: True/False', - required=False) - parser.add_argument('--imagename', dest='imagename', nargs='?', - help='If present, pulls a specific image from DockerHub. Defaults to emccorp/ecs-software-2.2', - required=False) - parser.add_argument('--imagetag', dest='imagetag', nargs='?', - help='If present, pulls a specific version of the target image from DockerHub. Defaults to latest', - required=False) - parser.add_argument('--use-urandom', dest='use_urandom', action='store_true', default=False, - help='If present, /dev/random will be mapped to /dev/urandom on the host. If you container starts up slow the first time could help.', - required=False) - parser.add_argument('--no-internet', dest='no_internet', action='store_true', default=False, - help='When specified, do not perform any actions that require an Internet connection.', - required=False) - 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-3.0.0") - parser.set_defaults(imagetag="latest") - parser.set_defaults(proxy=False) - parser.set_defaults(image_file=False) - args = parser.parse_args() - - - # Check if hotname is valid - if not re.match("^[a-z0-9]+", "{}".format(args.hostname[0])): - logger.info("Hostname must consist of alphanumeric (lowercase) characters.") - sys.exit(2) - - # Print configuration - print("--- Parsed Configuration ---") - print("Hostname: %s" % args.hostname) - print("Ethadapter: %s" % args.ethadapter) - print("Disk[s]: %s" % args.disks) - print("Docker Image Name: %s" % args.imagename) - print("Docker Image Tag: %s" % args.imagetag) - if(args.image_file): - print("Docker Image File: %s" % args.image_file) - - print("Use Internet to download image and packages: %s" % (not args.no_internet)) - - # If loading an image, make sure it exists. - if args.image_file and not os.path.exists(args.image_file): - logger.error("The specified docker image file %s does not exist." % args.image_file) - sys.exit(12) - - - # Check if only wants to run the Container Configuration section - if args.container_config: - logger.info("Starting Step 1b: Only running the Container Configuration for Single Node.") - modify_container_conf_func() - sys.exit(6) - - # Check if only wants to run the Container Configuration section - if args.cleanup: - logger.info("Starting CleanUp: Removing Previous Docker containers and images. Deletes the created Directories.") - subprocess.call(["service","docker","start"]) - docker_cleanup_old_images() - cleanup_installation(args.disks) - sys.exit(7) - - # Check that the Selected Disks have not been initialized and can be used - for disk in args.disks: - if not os.path.exists("/dev/{}".format(disk)): - print "Disk '/dev/{}' does not exist".format(disk) - sys.exit(4) - - if string.lower(args.hostname[0])=="localhost": - logger.info("StartUp Check: Hostname can not be localhost") - print "StartUp Check: Hostname can not be localhost" - sys.exit(10) - # disk_ready = cmdline("fdisk -l /dev/{} | grep \"Disk label type:\"".format(disk)) - # if disk_ready: - # print "Please check that Disk: {} is not formatted (fdisk -l).".format(disk) - # sys.exit(5) - # else: - # print "Disk {} checked. Ready for the installation.".format(disk) - - - # Step 1 : Configuration of Host Machine to run the ECS Docker Container - docker_image_name = "{}:{}".format(args.imagename, args.imagetag) - - ethernet_adapter_name = args.ethadapter - # Get the IP address on Linux - s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) - ip_address = socket.inet_ntoa(fcntl.ioctl(s.fileno(), - 0x8915, struct.pack('256s', ethernet_adapter_name[:15]))[20:24]) - - logger.info("Starting Step 1: Configuration of Host Machine to run the ECS Docker Container: {}".format(docker_image_name)) - - if not args.no_internet: - yum_func() - package_install_func() - update_selinux_os_configuration() - prep_file_func() - if args.image_file: - docker_load_image(args.image_file) - elif not args.no_internet: - 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() - 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( - "Step 1 Completed. Navigate to the administrator website that is available from any of the ECS data nodes. \ - The ECS administrative portal can be accessed from port 443. For example: https://ecs-node-external-ip-address. \ - The website may take a few minutes to become available.") - - -if __name__ == "__main__": - main() diff --git a/legacy/ecs-single-node/step2_object_provisioning.py b/legacy/ecs-single-node/step2_object_provisioning.py deleted file mode 100644 index 0693ed03..00000000 --- a/legacy/ecs-single-node/step2_object_provisioning.py +++ /dev/null @@ -1,362 +0,0 @@ -#!/usr/bin/env python - -import os,json -import subprocess -import shutil -import getopt -import sys,re -import time - -AuthToken=None -def getAuthToken(ECSNode, User, Password): - curlCommand = "curl -i -k https://%s:4443/login -u %s:%s" % (ECSNode, User, Password) - print ("Executing getAuthToken: %s " % curlCommand) - res=subprocess.check_output(curlCommand, shell=True) - authTokenPattern = "X-SDS-AUTH-TOKEN:(.*)\r\n" - searchObject=re.search(authTokenPattern,res) - assert searchObject, "Get Auth Token failed" - print("Auth Token %s" % searchObject.group(1)) - return searchObject.group(1) - - -def executeRestAPI(url, method, filter, data, ECSNode,contentType='json',checkOutput=0): - if data: - subprocess.call("echo %s > request_body.tmp" % data, shell=True) - data="-d @request_body.tmp" - if "license" in url: - data="-T license.lic" - curlCommand = "curl -s -k -X %s -H 'Content-Type:application/%s' \ - -H 'X-SDS-AUTH-TOKEN:%s' \ - -H 'ACCEPT:application/%s' \ - %s https://%s:4443%s" %(method, contentType, AuthToken, contentType,data, ECSNode, url) - print ("Executing REST API command: %s " % curlCommand) -#print jsonResult - if checkOutput: - jsonResult = subprocess.check_output(curlCommand, shell=True) - RestOutputDict = {} - RestOutputDict = json.loads(jsonResult) - return RestOutputDict - assert "code" not in jsonResult, "%s %s failed" % (method, url) - else: - res=subprocess.call(curlCommand, shell=True) - print res - - -def retry( numberOfRetries, timeToWaitBetweenTriesInSeconds, functionToRetry, argumentList, keywordArgs = {}): - for i in range(numberOfRetries): - try: - return apply(functionToRetry, argumentList, keywordArgs) - except Exception, e: - print("Method %s threw error %s" % (functionToRetry, e)) - print("Sleep for %s seconds before retry" % timeToWaitBetweenTriesInSeconds) - time.sleep(timeToWaitBetweenTriesInSeconds) - raise e - - -def getVDCID(ECSNode,VDCName): - url ='/object/vdcs/vdc/%s' %VDCName - return executeRestAPI(url, 'GET','.id', "", ECSNode,checkOutput=1)["id"] - -def getVarrayID(ECSNode): - return executeRestAPI('/vdc/data-services/varrays', 'GET','.id', "", ECSNode, checkOutput=1)['varray'][0]["id"] - -def getVpoolID(ECSNode): - return executeRestAPI('/vdc/data-service/vpools', 'GET','.id', "", ECSNode, checkOutput=1)['data_service_vpool'][0]["id"] - -def getNamespaces(ECSNode): - return executeRestAPI('/object/namespaces', 'GET','.id', "", ECSNode, checkOutput=1)['namespace'][0]["id"] - - -def DeleteNamespace(ECSNode, Namespace): - url ='/object/namespaces/namespace/%s/deactivate' %Namespace - return executeRestAPI(url, 'POST','', "", ECSNode) - - -def DeleteUser(ECSNode,userName,Namespace): - print("\nDelete User %s" % userName) - DeleteUserPayload ='{\\"user\\":\\"%s\\",\ - \\"namespace\\":\\"%s\\"\ - }' % (userName, Namespace) - executeRestAPI("/object/users/deactivate", 'POST','.id', DeleteUserPayload, ECSNode) - - -def getVDCSecretKey(ECSNode): - secretKeyDict = executeRestAPI("/object/vdcs/vdc/local/secretkey", 'GET', '.secret_key', "", ECSNode, checkOutput=1) - return secretKeyDict['key'] - - -def UploadLicense(ECSNode): - ret = executeRestAPI("/license", 'POST','', '', ECSNode, contentType='xml') - if ret: - raise Exception("Upload license failed with code %d" % ret) - -def UploadLicenseWithRetry(ECSNode): - retry(5, 60, UploadLicense, [ECSNode]) - - -def CreateObjectVArray(ECSNode, objectVArrayName): - print("\nCreate Object Varray %s" % objectVArrayName) - objectVArrayPayload ='{\\"name\\":\\"%s\\",\ - \\"description\\":\\"%s\\",\ - \\"isProtected\\":\\"%s\\",\ - \\"isColdStorageEnabled\\":\\"%s\\"\ - }' % (objectVArrayName, objectVArrayName, "false", "false") - executeRestAPI("/vdc/data-services/varrays", 'POST','.id', objectVArrayPayload, ECSNode, checkOutput=1) - print("Object Varray %s is created" % objectVArrayName) - -def CreateObjectVarrayWithRetry(ECSNode, objectVArrayName): - retry(30, 60, CreateObjectVArray, [ECSNode, objectVArrayName]) - - -def createDataStoreOnCommodityNodes(ECSNode, dataStoreName, varray): - createDataStorePayLoad ='{ \\"nodes\\":[\ - {\ - \\"nodeId\\":\\"%s\\",\\"name\\":\\"%s\\",\ - \\"virtual_array\\":\\"%s\\",\\"description\\":\\"%s\\"\ - }]}' % (ECSNode, dataStoreName, varray, dataStoreName) - return executeRestAPI('/vdc/data-stores/commodity', 'POST','.id', createDataStorePayLoad, ECSNode, checkOutput=1) - - -def CreateDataStoreOnCommodityNodesWithRetry(ECSNode, dataStoreName, varray): - retry(5, 60, createDataStoreOnCommodityNodes, [ECSNode, dataStoreName, varray]) - - -def RetryDTStatus(ECSNode): - # DTs stagger their init, so wait for >200 before we accept 100% as okay - # Real number is more like 384 - minDt = 200 - - print("\nWaiting on Directory Tables to Initialize...") - - curlCommand = "curl -s http://%s:9101/stats/dt/DTInitStat" % (ECSNode) - timeout = time.time() + 60*60 - ret = "" - - try: - dtPrev=1 - while True: - ret = subprocess.check_output(curlCommand, shell=True) - dtTot = re.findall("(.+?)", ret)[0] - dtUnready = re.findall("(.+?)", ret)[0] - dtUnknown = re.findall("(.+?)", ret)[0] - dtTotal = int(float(dtTot)) - dtBad = int(float(dtUnready)) + int(float(dtUnknown)) - initPercent=((dtTotal-dtBad)*100.0/dtTotal) - print("Directory Tables %.1f%% ready. (%s total %s unready %s unknown)") % (initPercent, dtTot, dtUnready, dtUnknown) - - if (dtBad == 0 and dtPrev == dtTotal and dtTotal > minDt): - break - elif(time.time() > timeout): - print("Directory Tables failed to initialize.") - break - - dtPrev = dtTotal - time.sleep(20) - - except Exception, e: - if("Cannot update" in ret): - print(ret) - else: - print("Failed to retrieve DT status: %s" % (e)) - - -def InsertVDC(ECSNode, VDCName): - # count storagepool nodes in state "readytouse" - - for i in range(0, 9): - curlCommand = "curl -s -k -H\"X-SDS-AUTH-TOKEN: %s\" https://%s:4443/vdc/data-stores/commodity/%s\ | grep -c 'readytouse'" % (AuthToken, ECSNode, ECSNode) - stateCheck = subprocess.check_output(curlCommand, shell=True) - if stateCheck is "0": - print("Step 2 loading, Storage data creation in progress") - time.sleep(180) - elif i == 9: - print("No storage pools could be found.") - return None - else: - break - - secretKey=getVDCSecretKey(ECSNode) - InsertVDCPayload ='{\\"vdcName\\":\\"%s\\",\ - \\"interVdcEndPoints\\":\\"%s\\", \ - \\"secretKeys\\":\\"%s\\"\ - }' % (VDCName, ECSNode, secretKey) - ret = executeRestAPI('/object/vdcs/vdc/%s' % VDCName, 'PUT','',InsertVDCPayload, ECSNode) - if ret: - raise Exception("InsertVDC failed with code %d" % ret) - return getVDCID(ECSNode,VDCName) - - -def InsertVDCWithRetry(ECSNode, VDCName): - retry(30, 60, InsertVDC, [ECSNode, VDCName]) - - -def CreateObjectVpool(ECSNode, objectVpoolName, VDCName): - vdcID = getVDCID(ECSNode,VDCName) - print("\nVDC ID is %s" % vdcID) - vArrayID = getVarrayID(ECSNode) - print("\nVArray ID is %s" % vArrayID) - objectVpoolPayload ='{\\"description\\":\\"%s\\",\ - \\"name\\":\\"%s\\", \ - \\"zone_mappings\\":[\ - {\ - \\"name\\":\\"%s\\",\\"value\\":\\"%s\\"\ - }]}' % (objectVpoolName, objectVpoolName, vdcID, vArrayID) - print("\nCreate Object VPool %s" % objectVpoolName) - executeRestAPI("/vdc/data-service/vpools", 'POST','.id', objectVpoolPayload, ECSNode, checkOutput=1) - print("Object Vpool %s is created" % objectVpoolName) - -def CreateObjectVpoolWithRetry(ECSNode, objectVpoolName, VDCName): - retry(5, 60, CreateObjectVpool, [ECSNode, objectVpoolName, VDCName]) - - -def CreateNamespace(ECSNode, Namespace, objectVpoolName): - print("\nCreate Namespace %s" % Namespace) - NamespacePayload='{\\"namespace\\": \\"%s\\", \\"default_data_services_vpool\\": \\"%s\\"}'%(Namespace, objectVpoolName) - executeRestAPI("/object/namespaces/namespace", 'POST','.id', NamespacePayload, ECSNode, checkOutput=1) - print("Namespace %s is created" % Namespace) - -def CreateNamespaceWithRetry(ECSNode, Namespace, defaultObjectVpool): - retry(5, 60, CreateNamespace, [ECSNode, Namespace, defaultObjectVpool]) - - -def addUser(ECSNode,userName,Namespace): - print("\nCreate User %s" % userName) - createUserPayload ='{\\"user\\":\\"%s\\",\ - \\"namespace\\":\\"%s\\"\ - }' % (userName, Namespace) - executeRestAPI("/object/users", 'POST','.id', createUserPayload, ECSNode, checkOutput=1) - -def addUserWithRetry(ECSNode,userName,Namespace): - retry(3, 10, addUser, [ECSNode, userName, Namespace]) - -def addUserSecretKey(ECSNode, username): - secretKeyPayload='{\\"existing_key_expiry_time_mins\\":20000}' - secretKeyDict = executeRestAPI("/object/user-secret-keys/%s" % username, 'POST', '.secret_key', secretKeyPayload, ECSNode, checkOutput=1) - print("\nAdd secret key for user %s" % username) - -def getUserSecretKey(ECSNode, username): - secretKeyDict = executeRestAPI("/object/user-secret-keys/%s" % username, 'GET', '.secret_key', "", ECSNode, checkOutput=1) - print("\n\nUser %s SecretKey is %s" % (username,secretKeyDict['secret_key_1'])) - - - -def main(argv): - try: - opts, argv = getopt.getopt(argv, '', ["ECSNodes=","Namespace=","ObjectVArray=","ObjectVPool=","UserName=","DataStoreName=","VDCName=","MethodName=","SkipVdcProvision"]) - except getopt.GetoptError, e: - print e - print 'ObjectProvisioning.py --ECSNodes= --Namespace= --ObjectVArray= --ObjectVPool= --UserName= --DataStoreName= --VDCName= --MethodName= [--SkipVdcProvision]\n --MethodName is required only when you need to run a particular step in Object Provisioning.If this option is not provided all the Object Provisioning steps will be run.\n Supported options for --MethodName are:\n UploadLicense \n CreateObjectVarray \n GetVarrayID \n CreateDataStore \n InsertVDC \n CreateObjectVpool \n CreateNamespace \n CreateUserAndSecretKey \n Use --SkipVdcProvision for non-primary VDCs \n' - sys.exit(2) - ECSNodes="" - MethodName="" - SkipVdcProvision=False - for opt, arg in opts: - if opt == '-h': - print 'ObjectProvisioning.py --ECSNodes= --Namespace= --ObjectVArray= --ObjectVPool= --UserName= --DataStoreName= --VDCName= --MethodName= [--SkipVdcProvision]\n --MethodName is required only when you need to run a particular step in Object Provisioning.If this option is not provided all the Object Provisioning steps will be run.\n Supported options for --MethodName are:\n UploadLicense \n CreateObjectVarray \n GetVarrayID \n CreateDataStore \n InsertVDC \n CreateObjectVpool \n CreateNamespace \n CreateUserAndSecretKey \n Use --SkipVdcProvision for non-primary VDCs \n' - sys.exit() - elif opt in ("-ECSNodes", "--ECSNodes"): - ECSNodes = arg - ECSNodeList = ECSNodes.split(",") - ECSNode = ECSNodeList[0] - elif opt in ("-Namespace", "--Namespace"): - Namespace = arg - elif opt in ("-ObjectVArray", "--ObjectVArray"): - ObjectVArray = arg - elif opt in ("-ObjectVPool", "--ObjectVPool"): - ObjectVPool = arg - elif opt in ("-UserName", "--UserName"): - UserName = arg - elif opt in ("-DataStoreName", "--DataStoreName"): - DataStoreName = arg - elif opt in ("-VDCName", "--VDCName"): - VDCName = arg - elif opt in ("-MethodName", "--MethodName"): - MethodName = arg - elif opt in ("-SkipVdcProvision", "--SkipVdcProvision"): - SkipVdcProvision = True - - global AuthToken - AuthToken=getAuthToken(ECSNode, "root", "ChangeMe") - - print("ECSNodes: %s" %ECSNode) - print("Namespace: %s" %Namespace) - print("ObjectVArray: %s" %ObjectVArray) - if not SkipVdcProvision: - print("ObjectVPool: %s" %ObjectVPool) - print("UserName: %s" %UserName) - print("DataStoreName: %s" %DataStoreName) - print("VDCName: %s" %VDCName) - print("MethodName: %s" %MethodName) - - - if MethodName == "UploadLicense": - UploadLicense(ECSNode) - sys.exit() - elif MethodName == "CreateObjectVarray": - CreateObjectVarrayWithRetry(ECSNode, ObjectVArray) - print("Virtual Array: %s" %getVarrayID(ECSNode)) - sys.exit() - elif MethodName == "GetVarrayID": - ObjectVArrayID = getVarrayID(ECSNode) - sys.exit() - elif MethodName == "CreateDataStore": - ObjectVArrayID = getVarrayID(ECSNode) - for node in ECSNodeList: - CreateDataStoreOnCommodityNodesWithRetry(node, DataStoreName, ObjectVArrayID) - time.sleep(20 * 60) - sys.exit() - elif MethodName == "InsertVDC": - InsertVDCWithRetry(ECSNode, VDCName) - print("VDCID: %s" %getVDCID(ECSNode, VDCName)) - sys.exit() - elif MethodName == "CreateObjectVpool": - CreateObjectVpoolWithRetry(ECSNode, ObjectVPool, VDCName) - print("Data service vPool ID:%s" %getVpoolID(ECSNode)) - sys.exit() - elif MethodName == "CreateNamespace": - ObjectVPoolID = getVpoolID(ECSNode) - CreateNamespace(ECSNode, Namespace, ObjectVPoolID) - print("Namespace: %s" %getNamespaces(ECSNode)) - sys.exit() - elif MethodName == "CreateUser": - addUser(ECSNode, UserName, Namespace) - sys.exit() - elif MethodName == "CreateSecretKey": - addUserSecretKey(ECSNode, UserName) - getUserSecretKey(ECSNode, UserName) - sys.exit() - elif MethodName == "DeleteUser": - DeleteUser(ECSNode, UserName, Namespace) - sys.exit() - elif MethodName == "getUserSecretKey": - getUserSecretKey(ECSNode, UserName) - sys.exit() - - else: - UploadLicenseWithRetry(ECSNode) - CreateObjectVarrayWithRetry(ECSNode, ObjectVArray) - print("Virtual Array: %s" %getVarrayID(ECSNode)) - ObjectVArrayID = getVarrayID(ECSNode) - - for node in ECSNodeList: - CreateDataStoreOnCommodityNodesWithRetry(node, DataStoreName, ObjectVArrayID) - - RetryDTStatus(ECSNode) - - if not SkipVdcProvision: - InsertVDCWithRetry(ECSNode, VDCName) - print("VDCID: %s" %getVDCID(ECSNode, VDCName)) - CreateObjectVpoolWithRetry(ECSNode, ObjectVPool, VDCName) - print("Data service vPool ID:%s" %getVpoolID(ECSNode)) - ObjectVPoolID = getVpoolID(ECSNode) - CreateNamespaceWithRetry(ECSNode, Namespace, ObjectVPoolID) - print("Namespace: %s" %getNamespaces(ECSNode)) - addUserWithRetry(ECSNode, UserName, Namespace) - addUserSecretKey(ECSNode, UserName) - getUserSecretKey(ECSNode, UserName) - - sys.exit() - - -if __name__ == "__main__": - main(sys.argv[1:]) diff --git a/legacy/ecs-single-node/systemd/README.md b/legacy/ecs-single-node/systemd/README.md deleted file mode 100644 index fa25d37f..00000000 --- a/legacy/ecs-single-node/systemd/README.md +++ /dev/null @@ -1,13 +0,0 @@ -For systems running systemd, you can start and stop the ECS container with the system using this script. To install, run: - -``` -sudo cp docker.ecsstandalone.service /etc/systemd/system/ -sudo systemctl enable docker.ecsstandalone.service -``` - -Then your docker container will restart with the system. Also be sure that docker itself is set to restart with the system: - -``` -sudo systemctl enable docker.service -``` - diff --git a/legacy/ecs-single-node/systemd/docker.ecsstandalone.service b/legacy/ecs-single-node/systemd/docker.ecsstandalone.service deleted file mode 100644 index ed1003bf..00000000 --- a/legacy/ecs-single-node/systemd/docker.ecsstandalone.service +++ /dev/null @@ -1,13 +0,0 @@ -[Unit] -Description=ECS Standalone Container -Requires=docker.service -After=docker.service - -[Service] -Restart=always -ExecStart=/usr/bin/docker start -a ecsstandalone -ExecStop=/usr/bin/docker stop -t 60 ecsstandalone - -[Install] -WantedBy=standalone-user.target - diff --git a/legacy/ecs-single-node/vagrant-install.sh b/legacy/ecs-single-node/vagrant-install.sh deleted file mode 100644 index 2b81f270..00000000 --- a/legacy/ecs-single-node/vagrant-install.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -sudo python /ecs/step1_ecs_singlenode_install.py --disks sdc - -RESULT=$? -if [ $RESULT -eq 0 ]; then - sudo python /ecs/step2_update_container.py -fi - -if [ $RESULT == 0 ]; then - echo "Waiting 1 minutes for ECS to start" - sleep 60 - sudo python /ecs/step3_object_provisioning.py --ECSNodes=$(hostname -i | tr '\n' ' ') --Namespace=ns1 --ObjectVArray=ova1 --ObjectVPool=ovp1 --UserName=emccode --DataStoreName=ds1 --VDCName=vdc1 --MethodName= -fi From bcf63991db05e9f14a368b76f0330c049ee207c9 Mon Sep 17 00:00:00 2001 From: Travis Wichert Date: Tue, 20 Jun 2017 10:04:04 -0400 Subject: [PATCH 3/7] ECS-CommunityEdition-275 Re-add CentOS 7.2 support (#276) --- bootstrap_plugins/centos72.plugin.sh | 208 ++++++++++++++++++++++++++ bootstrap_plugins/centos73.plugin.sh | 1 + bootstrap_plugins/os-router.plugin.sh | 6 +- 3 files changed, 212 insertions(+), 3 deletions(-) create mode 100644 bootstrap_plugins/centos72.plugin.sh diff --git a/bootstrap_plugins/centos72.plugin.sh b/bootstrap_plugins/centos72.plugin.sh new file mode 100644 index 00000000..320b38bf --- /dev/null +++ b/bootstrap_plugins/centos72.plugin.sh @@ -0,0 +1,208 @@ +#@IgnoreInspection BashAddShebang + +# Copyright (c) 2015 EMC Corporation +# All Rights Reserved +# +# This software contains the intellectual property of EMC Corporation +# or is licensed to EMC Corporation from third parties. Use of this +# software and the intellectual property contained therein is expressly +# limited to the terms and conditions of the License Agreement under which +# it is provided by or on behalf of EMC. + +# OS Support library for CentOS 7.3 + +os_supported=true + +# Docker binary +docker_binary='/bin/docker' + +# packages to clean up during preflight +list_preflight_packages="git nfs-client" +#nfs-tools" + +# Do any OS-specific tasks that must be done prior to bootstrap +do_preflight() { + rm_repo_pkg "$list_preflight_packages" +} + +# packages to install before others +#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() { + in_repo_pkg "$list_prefix_packages" + if ! docker version; then + curl -fsSL https://get.docker.com/ | sudo sh + fi + sudo systemctl enable docker + sudo systemctl start docker + sudo usermod -aG docker $(whoami) +} + +# packages to install +# 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 +} + +# packages to install after others +# list_suffix_packages='vim htop iotop iftop jq rsync pigz gdisk aria2' +list_suffix_packages='htop jq pigz gdisk aria2 firewalld' + +# script to run for installing suffix_packages +in_suffix_packages() { + in_repo_pkg "$list_suffix_packages" + + # Install Rocker + curl -fsSL ${rocker_artifact_url} \ + | sudo tar -xzC /usr/local/bin && sudo chmod +x /usr/local/bin/rocker +} + +# packages to install if a VM +list_vm_packages='dkms qemu-guest-agent open-vm-tools' + +# command to run for installing vm_packages +in_vm_packages() { + in_repo_pkg "$list_vm_packages" + # return 0 +} + +# command to install one or more os package manager package +in_repo_pkg() { + while ! sudo yum -y install $*; do + sleep 5 + done +} + +rm_repo_pkg() { + sudo yum -y autoremove $* +} + +# command to update all packages in the os package manager +up_repo_pkg_all() { + sudo yum -y update +} + +# command to rebuild the os package manager's database +up_repo_db() { + while ! sudo yum -y makecache; do + sleep 10 + # retry + done +} + +# command to set os package manager proxy +set_repo_proxy_conf() { + sudo sed -i -e '/^proxy=/d' /etc/yum.conf + echo "proxy=${http_proxy}" \ + | append /etc/yum.conf +} + +# command to set os package manager to keep its cache +set_repo_keepcache_conf() { + sudo sed -i -e '/^keepcache=/d' /etc/yum.conf + echo "keepcache=1" \ + | append /etc/yum.conf +} + +# idempotent config script to fixup repos to properly use proxycaches +set_repo_cacheable_idempotent() { + sudo sed -i -e 's/^#baseurl=/baseurl=/' /etc/yum.repos.d/* + sudo sed -i -e 's/^mirrorlist=/#mirrorlist=/' /etc/yum.repos.d/* +} + +set_repo_mirror_idempotent() { + # sudo sed -i -e "s#http:///centos#http://${mirror_val}/centos#g" /etc/yum.repos.d/* + sudo sed -i -e "s#http://.*/centos#http://${mirror_val}/centos#g" /etc/yum.repos.d/* +} + +# command to set the proxy for the whole OS +set_os_proxy() { + sudo sed -i -e '/_proxy/d' /etc/environment + echo -n "http_proxy=${http_proxy}\nhttps_proxy=${http_proxy}\nftp_proxy=${http_proxy}\n" \ + | append /etc/environment + if $mirror_flag; then + echo -n "no_proxy=${mirror_val}\n" | append /etc/environment + fi +} + +# command to determine if the OS needs restarting after package updates +get_os_needs_restarting() { + if ! [ -z "$(sudo /usr/bin/needs-restarting)" ]; then + return 0 + else + return 1 + fi +} + +# command to reboot the system +do_reboot() { + sudo reboot +} + +# Command to configure docker's proxy under centos flavored systemd +set_docker_proxy() { + local tmpconf="/etc/systemd/system/docker.service.d/http-proxy.conf" + if ! [ -d "$(dirname $tmpconf)" ]; then + sudo mkdir "$(dirname $tmpconf)" + fi + log "sed error is OK here if the proxy config file does not yet exist." + sudo sed -i -e '/HTTP_PROXY/d' "$tmpconf" + echo "Environment=\"HTTP_PROXY=${http_proxy}\" \"NO_PROXY=localhost,127.0.0.1,$(hostname),$(hostname -f)\"" \ + | append "$tmpconf" + sudo systemctl daemon-reload + sudo systemctl restart docker + sudo systemctl status docker +} + +# command to add mitm cert to docker trust store +set_docker_reg_cert() { + local registry="${1}" + local cert="${2}" + if ! [ -d "/etc/docker/certs.d/${registry}" ]; then + sudo mkdir -p "/etc/docker/certs.d/${registry}" + sudo cp "${cert}" "/etc/docker/certs.d/${registry}/ca.crt" + else + if [ -f "/etc/docker/certs.d/${registry}/ca.crt" ]; then + echo "Reusing existing /etc/docker/certs.d/${registry}/ca.crt" + else + sudo cp "${cert}" "/etc/docker/certs.d/${registry}/ca.crt" + fi + fi + set_mitm_cert "${cert}" + sudo systemctl daemon-reload + sudo systemctl restart docker + sudo systemctl status docker +} + +# command to add mitm cert to local trust store +set_mitm_cert() { + sudo cp "${1}" "/etc/pki/ca-trust/source/anchors/$(basename ${1}).crt" + sudo update-ca-trust extract +} + +do_post_install() { + # Disable postfix since we don't need an MTA + sudo systemctl disable --now postfix +} + +override_dhcp_dns() { + nameserver_list="${1}" + sudo sed -i -e 's/PEERDNS="yes"/PEERDNS="no"/' /etc/sysconfig/network-scripts/ifcfg-* + sudo sed -i -e '/DNS[0-9]=/d' /etc/sysconfig/network-scripts/ifcfg-* + sudo sed -i -e '/nameserver/d' /etc/resolv.conf + nsnumber=1 + for nameserver in $(echo ${nameserver_list} | tr ',' ' '); do + echo "nameserver ${nameserver}" | append /etc/resolv.conf + for script in /etc/sysconfig/network-scripts/ifcfg-*; do + echo "DNS${nsnumber}=${nameserver}" | append "${script}" + done + nsnumber=$((nsnumber++)) + done +} diff --git a/bootstrap_plugins/centos73.plugin.sh b/bootstrap_plugins/centos73.plugin.sh index 48528ed4..172779a4 100755 --- a/bootstrap_plugins/centos73.plugin.sh +++ b/bootstrap_plugins/centos73.plugin.sh @@ -18,6 +18,7 @@ docker_binary='/bin/docker' # packages to clean up during preflight list_preflight_packages="git" +#nfs-tools" # Do any OS-specific tasks that must be done prior to bootstrap do_preflight() { diff --git a/bootstrap_plugins/os-router.plugin.sh b/bootstrap_plugins/os-router.plugin.sh index 91703b55..6ae5a2b6 100755 --- a/bootstrap_plugins/os-router.plugin.sh +++ b/bootstrap_plugins/os-router.plugin.sh @@ -58,9 +58,9 @@ route_os() { case "${os}" in -# centos\ linux\ release\ 7.2*) -# source ${plugins}/centos72.plugin.sh -# ;; + centos\ linux\ release\ 7.2*) + source ${plugins}/centos72.plugin.sh + ;; centos\ linux\ release\ 7.3*) source ${plugins}/centos73.plugin.sh From a613ad11cf94b96dc7f561f78c7f1a75d090dcde Mon Sep 17 00:00:00 2001 From: Travis Wichert Date: Tue, 20 Jun 2017 10:04:36 -0400 Subject: [PATCH 4/7] Fix a backwards compatibility issue with multi-vdc API ping (#274) * Fix endpoint list bug in non-multi-vdc ping * add logging --- ui/ecsconfig.py | 34 ++++++++++++++++++++++++----- ui/tui/ecsconf.py | 54 +++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 81 insertions(+), 7 deletions(-) diff --git a/ui/ecsconfig.py b/ui/ecsconfig.py index fe414b4d..fb135d09 100755 --- a/ui/ecsconfig.py +++ b/ui/ecsconfig.py @@ -10,7 +10,8 @@ # it is provided by or on behalf of EMC. """ -adsf +This script configures various ECS structures according to the +deployment map in deploy.yml. """ import logging @@ -21,7 +22,7 @@ import click import tui import tui.tools -from tui.tools import o, die +from tui.tools import o, die, logobj import time import simplejson from sarge import Capture, run, shell_format, capture_both, get_both @@ -40,6 +41,14 @@ # Helpers """ +DEBUG = True + + +def debug(msg): + if DEBUG: + o(msg) + + """ # Config """ @@ -69,6 +78,8 @@ def api_set_endpoint(self, api_endpoint): """ Sets the API endpoint to use. default is random endpoint """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) + logobj(api_endpoint) self.api_endpoint = api_endpoint def api_set_timeout(self, timeout): @@ -76,14 +87,17 @@ def api_set_timeout(self, timeout): Sets the API timeout to seconds :param timeout: seconds """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) + logobj(timeout) self.api_timeout = timeout def _api_get_client(self): """ Returns an instance of ecsclient.client.Client """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) url = "{0}://{1}:{2}".format(API_PROTOCOL, self.api_endpoint, API_PORT) - + logobj(url) return Client('3', username=self.ecs.get_root_user(), password=self.ecs.get_root_pass(), @@ -96,6 +110,7 @@ def api_reset(self): """ Resets the APIAdminClient instance """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) try: self.api_client.authentication.logout() except Exception: @@ -115,6 +130,7 @@ def diag_dt_get(self): unknown_dt_num unready_dt_num """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) dt_diag_client = tui.ECSDiag(self.api_endpoint) return dt_diag_client.get_dt_status() @@ -122,6 +138,7 @@ def diag_dt_ready(self, footprint='small'): """ Returns True of no dt unready and dt unknown, False otherwise """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) dt_data = self.diag_dt_get() if dt_data['unknown_dt_num'] > 0 \ or dt_data['total_dt_num'] < self.ecs.get_dt_total(footprint) \ @@ -135,6 +152,7 @@ def diag_dt_status_text(self, dt_data=None): Get a status string :return: dt status string """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) dt_string = None if dt_data is None: @@ -159,6 +177,7 @@ def wait_for_dt_ready(self): """ Loops until DT are ready or else timeout """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) tries = DIAGNOSTIC_RETRIES timeout = time.time() + DIAGNOSTIC_TIMEOUT while tries >= 0: @@ -172,6 +191,7 @@ def wait_for_dt_ready(self): return False def api_task_get_status(self, task_id): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) pass def get_vdc_id_by_name(self, vdc_name): @@ -180,6 +200,7 @@ def get_vdc_id_by_name(self, vdc_name): :param vdc_name: name of the deploy.yml VDC :return: VDC ID """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.api_client.vdc.get(name=vdc_name)['id'] def get_vdc_secret_by_name(self, vdc_name): @@ -188,6 +209,7 @@ def get_vdc_secret_by_name(self, vdc_name): :param vdc_name: name of the deploy.yml VDC :return: VDC Secret Key """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) self.api_set_endpoint(self.ecs.get_vdc_endpoint(vdc_name)) self.api_reset() return self.api_client.vdc.get_local_secret_key()['key'] @@ -313,8 +335,10 @@ def do_ping(): for vdc in vdc_list: o('\t{}: {}'.format(vdc, conf.ecs.get_vdc_endpoint(vdc))) endpoint_list = [conf.ecs.get_vdc_endpoint(vdc) for vdc in vdc_list] + logobj(endpoint_list) else: - endpoint_list = conf.ecs.get_vdc_endpoint(conf.ecs.get_vdc_primary()) + endpoint_list = [conf.ecs.get_vdc_endpoint(conf.ecs.get_vdc_primary())] + logobj(endpoint_list) for endpoint in endpoint_list: conf.api_set_endpoint(endpoint) @@ -549,7 +573,7 @@ def create(self, name, description, node_id, storage_pool_id): def add_one(name): vdc_name = conf.ecs.get_sp_vdc(name) - o('Creating Storage Pool {}/{}'.format(vdc_name, name)) + o('Creating Storage Pool: {}/{}'.format(vdc_name, name)) # Set the correct endpoint for this VDC/SP combo conf.api_set_endpoint(conf.ecs.get_vdc_endpoint(vdc_name)) diff --git a/ui/tui/ecsconf.py b/ui/tui/ecsconf.py index 68fb4ca2..ec972a23 100644 --- a/ui/tui/ecsconf.py +++ b/ui/tui/ecsconf.py @@ -9,10 +9,12 @@ # it is provided by or on behalf of EMC. import os +import sys import string import random import logging from defaults import * +from tools import logobj logging.basicConfig(filename=ui_log, level=logging.DEBUG) logging.debug('-' * 40 + os.path.abspath(__file__) + '-' * 40) @@ -169,6 +171,8 @@ DESC: DESC_DEFAULT } +logobj(DEFAULTS) + class ECSConf(object): """ @@ -176,7 +180,7 @@ class ECSConf(object): """ def __init__(self, deploymap): - + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) self.deploy = deploymap @staticmethod @@ -192,6 +196,10 @@ def get_attr(self, map_type, key=None, name=None): """ Access common patterns within the ECSConf object """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) + logobj(map_type) + logobj(key) + logobj(name) try: # If only map_type provided, return the data at map_type in the yaml tree if key is None and name is None: @@ -218,7 +226,7 @@ def get_ansible_facts(self): Returns a dict of Ansible facts :return: dict of facts """ - + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) facts = {} facts.update(self.get_defaults(ANSIBLE)) @@ -241,6 +249,7 @@ def get_fun_facts(self): Returns a dict of important general facts :return: dict of facts """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) fun_facts = {} for key in FUN_FACTS: @@ -253,24 +262,28 @@ def get_names(self, map_type, key=NAME): """ Returns a list of name keys from the given map_type """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_attr(map_type, key) def get_members(self, map_type, name, key=MEMBERS): """ Returns a list of items from the members key of the given map_type and name """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_attr(map_type, key, name) def get_root_user(self): """ Returns the configured root user for the ECS deployemnt """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_node_defaults()[ROOT_USER] def get_root_pass(self): """ Returns the configured root password for the ECS deployment """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_node_defaults()[ROOT_PASS] @staticmethod @@ -282,6 +295,7 @@ def gen_secret(length=20, charset=None): :param charset: Set of characters from which to choose randomly :returns: Random string """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) if charset is None: charset = '{}{}{}'.format(string.ascii_uppercase, string.ascii_lowercase, string.digits) return ''.join(random.SystemRandom().choice(charset) for _ in range(length)) @@ -290,6 +304,7 @@ def get_defaults(self, map_type): """ Returns a dict of default options for the map type """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) result = {} result.update(DEFAULTS[map_type]) map_type_d = map_type[:-1] + _D @@ -305,6 +320,7 @@ def get_node_pool(self, node): :param node: ansible_hostname of the node :returns: pool name or None """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) for sp in self.get_sp_names(): if node in self.get_sp_members(sp): return sp @@ -316,6 +332,7 @@ def get_node_vdc(self, node): :param node: ansible_hostname of the node :return: vdc name or None """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) pool = self.get_node_pool(node) for vdc in self.get_vdc_names(): if pool in self.get_vdc_members(vdc): @@ -330,6 +347,7 @@ def get_node_defaults(self): # opts = {} # if NODE_DEFAULTS in self.deploy.facts: # opts.update(self.deploy.facts[NODE_DEFAULTS].toDict()) + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_defaults(NODE) def get_node_options(self, node): @@ -338,6 +356,7 @@ def get_node_options(self, node): :param node: ansible_hostname of the node :returns: dict of node options or blank dict """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) opts = {} opts.update(self.get_node_defaults()) @@ -360,6 +379,7 @@ def list_all_nodes(self): Returns a list of all nodes of any type in deploy.yml :return: """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) nodes = [self.deploy.facts[INSTALL_NODE]] nodes += self.list_all_sp_nodes() return nodes @@ -368,6 +388,7 @@ def list_all_sp_nodes(self): """ Returns a list of all SP nodes known about in deploy.yml """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) nodes = [] for sp in self.get_sp_names(): nodes.extend(self.get_sp_members(sp)) @@ -377,6 +398,7 @@ def get_any_endpoint(self): """ Returns a random node from the list of all known nodes """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return random.SystemRandom().choice(self.list_all_sp_nodes()) def get_sp_vdc(self, sp): @@ -385,6 +407,7 @@ def get_sp_vdc(self, sp): :param sp: storage pool name :return: vdc name or None """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) for vdc in self.get_vdc_names(): if sp in self.get_vdc_members(vdc): return vdc @@ -396,6 +419,7 @@ def get_sp_names(self): Returns a list of names of storage pools in deploy.yml :returns: List of storage pool names """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_names(SP) def get_sp_members(self, pool_name): @@ -404,6 +428,7 @@ def get_sp_members(self, pool_name): :param pool_name: Name of the pool to list membership :returns: List of nodes in the pool """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_members(SP, pool_name) def get_sp_options(self, pool_name): @@ -412,6 +437,7 @@ def get_sp_options(self, pool_name): :param pool_name: Name of the pool :return: dict of pool options """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) opts = self.get_defaults(SP) sp_opts = self.get_attr(SP, OPTIONS, pool_name).toDict() if sp_opts is not None: @@ -423,6 +449,7 @@ def get_sp_ecs_options(self, pool_name): Returns options only pertaining to the storage pool configuration within ECS :param pool_name: Name of the pool to report options on """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return {x: y for x, y in self.get_sp_options(pool_name).items() if x in DEFAULTS[SP].keys()} def sp_ecs_options(self, pool_name): @@ -430,6 +457,7 @@ def sp_ecs_options(self, pool_name): Returns options only pertaining to the storage pool configuration within ECS :param pool_name: Name of the pool to report options on """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return {x: y for x, y in self.get_sp_options(pool_name).items() if x in DEFAULTS[SP].keys()} # Virtual Data Centers @@ -437,12 +465,14 @@ def get_vdc_names(self): """ Returns a list of names of all configured VDCs in the deployment """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_names(VDC) def get_vdc_members(self, vdc_name): """ Returns a list of the names of all storage pools assigned to the VDC """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_members(VDC, vdc_name) def get_vdc_endpoint(self, vdc_name): @@ -451,6 +481,7 @@ def get_vdc_endpoint(self, vdc_name): :param vdc_name: VDC name string :return: top storage pool of the VDC """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_sp_members(self.get_vdc_members(vdc_name)[0])[0] # def get_vdc_endpoint(self, vdc_name): @@ -467,12 +498,14 @@ def get_vdc_primary(self): Gets the top (first listed) VDC :return: """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_vdc_names()[0] def get_new_vdc_secret(self, vdc_name): """ Returns the configured VDC secret key, or None if no key is defined for the VDC """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_attr(VDC, OPTIONS, vdc_name).secret_key def get_vdc_options(self, vdc_name): @@ -481,6 +514,7 @@ def get_vdc_options(self, vdc_name): :param vdc_name: Name of the vdc :return: dict of vdc options """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) opts = self.get_defaults(VDC) vdc_opts = self.get_attr(VDC, OPTIONS, vdc_name).toDict() if vdc_opts is not None: @@ -492,12 +526,14 @@ def get_rg_names(self): """ Returns a list of names of all replication groups in the configuration """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_names(RG) def get_rg_members(self, rg_name): """ Returns a list of all VDCs for the given replication group name """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_members(RG, rg_name) def get_rg_options(self, rg_name): @@ -506,6 +542,7 @@ def get_rg_options(self, rg_name): :param rg_name: Name of the rg :return: dict of rg options """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) opts = self.get_defaults(RG) rg_opts = self.get_attr(RG, OPTIONS, rg_name) if rg_opts is not None: @@ -514,9 +551,11 @@ def get_rg_options(self, rg_name): # Namespaces def get_ns_names(self): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_names(NS) def get_ns_users(self, ns_name): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) users = self.get_members(NS, ns_name, NAMESPACE_ADMINS)[0] if users is None: users = [NAMESPACE_ADMINS_DEFAULT] @@ -528,6 +567,7 @@ def get_ns_options(self, ns_name): :param rg_name: Name of the rg :return: dict of rg options """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) opts = self.get_defaults(NS) ns_opts = self.get_attr(NS, OPTIONS, ns_name).toDict() if ns_opts is not None: @@ -540,6 +580,7 @@ def get_ns_vpool(self, ns_name): :param ns_name: ns name :return: """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_attr(NS, NAMESPACE_VPOOL, ns_name) def get_ns_dict(self, ns_name): @@ -548,6 +589,7 @@ def get_ns_dict(self, ns_name): :param ns_name: :return: ns_dict """ + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) ns_dict = {} ns_dict.update(self.get_ns_options(ns_name)) ns_dict.update({NAMESPACE_ADMINS: self.get_ns_users(ns_name)}) @@ -555,9 +597,11 @@ def get_ns_dict(self, ns_name): return ns_dict def get_mu_names(self): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_names(MU, USERNAME) def get_mu_options(self, mu_name): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) opts = self.get_defaults(MU) mu_opts = self.get_attr(MU, OPTIONS, mu_name).toDict() if mu_opts is not None: @@ -565,17 +609,21 @@ def get_mu_options(self, mu_name): return opts def get_mu_password(self, mu_name): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_attr(MU, PASSWORD, mu_name) def get_mu_dict(self, mu_name): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) mu_dict = {} mu_dict.update(self.get_mu_options(mu_name)) return mu_dict def get_ou_names(self): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_names(OU, USERNAME) def get_ou_options(self, ou_name): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) opts = self.get_defaults(OU) ou_opts = self.get_attr(OU, OPTIONS, ou_name).toDict() if ou_opts is not None: @@ -583,7 +631,9 @@ def get_ou_options(self, ou_name): return opts def get_ou_namespace(self, ou_name): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_attr(OU, NAMESPACE, ou_name) def get_ou_dict(self, ou_name): + logging.debug(self.__class__.__name__ + ': ' + sys._getframe().f_code.co_name) return self.get_ou_options(ou_name) From bf8b917aee1f8ea549b6c987ac82c50a18de260a Mon Sep 17 00:00:00 2001 From: Travis Wichert Date: Tue, 20 Jun 2017 12:58:10 -0400 Subject: [PATCH 5/7] ECS-CommunityEdition-214 Split deploy playbook into two parts (#273) --- ui/ansible/clicmd_bootstrap.yml | 44 +++++++++++++++++++++++++++++++++ ui/ansible/clicmd_deploy.yml | 40 ------------------------------ ui/ecsdeploy.py | 16 +++++++++--- ui/run.sh | 6 +++-- 4 files changed, 60 insertions(+), 46 deletions(-) create mode 100644 ui/ansible/clicmd_bootstrap.yml diff --git a/ui/ansible/clicmd_bootstrap.yml b/ui/ansible/clicmd_bootstrap.yml new file mode 100644 index 00000000..fae66607 --- /dev/null +++ b/ui/ansible/clicmd_bootstrap.yml @@ -0,0 +1,44 @@ +- name: Common | Ping data nodes before doing anything else + hosts: data_node + gather_facts: false + tasks: + - ping: "{{inventory_hostname}}" + +- name: Installer | Slice nodes into OS groups for package install + hosts: data_node + gather_facts: True + tasks: + - group_by: key=os_{{ ansible_distribution }}_{{ ansible_distribution_major_version }} + +- name: CentOS 7 | Synchronize cache + hosts: os_CentOS_7 + vars: + os_tag: os_CentOS_7 + num_data_nodes: "{{ groups['data_node'] | length }}" + top_data_node: "{{ groups['data_node'][0] }}" + install_node: "{{ groups['install_node'][0] }}" + roles: + - CentOS_7_sync_caches_prep + - common_sync_caches_by_torrent + +- name: CentOS 7 | Install cached packages + hosts: os_CentOS_7 + vars: + os_tag: os_CentOS_7 + num_data_nodes: "{{ groups['data_node'] | length }}" + top_data_node: "{{ groups['data_node'][0] }}" + install_node: "{{ groups['install_node'][0] }}" + roles: + - CentOS_7_baseline_install + +- name: Installer | Disable torrent ffx + hosts: ecs_install + vars: + num_data_nodes: "{{ groups['data_node'] | length }}" + top_data_node: "{{ groups['data_node'][0] }}" + install_node: "{{ groups['install_node'][0] }}" + tasks: + - file: + path: "{{ffx_sem}}" + state: absent + when: not ( num_data_nodes|int == 1 and top_data_node == install_node ) diff --git a/ui/ansible/clicmd_deploy.yml b/ui/ansible/clicmd_deploy.yml index 83494902..5cb3c501 100644 --- a/ui/ansible/clicmd_deploy.yml +++ b/ui/ansible/clicmd_deploy.yml @@ -4,45 +4,6 @@ tasks: - ping: "{{inventory_hostname}}" -- name: Installer | Slice nodes into OS groups for package install - hosts: data_node - gather_facts: True - tasks: - - group_by: key=os_{{ ansible_distribution }}_{{ ansible_distribution_major_version }} - -- name: CentOS 7 | Synchronize cache - hosts: os_CentOS_7 - vars: - os_tag: os_CentOS_7 - num_data_nodes: "{{ groups['data_node'] | length }}" - top_data_node: "{{ groups['data_node'][0] }}" - install_node: "{{ groups['install_node'][0] }}" - roles: - - CentOS_7_sync_caches_prep - - common_sync_caches_by_torrent - -- name: CentOS 7 | Install cached packages - hosts: os_CentOS_7 - vars: - os_tag: os_CentOS_7 - num_data_nodes: "{{ groups['data_node'] | length }}" - top_data_node: "{{ groups['data_node'][0] }}" - install_node: "{{ groups['install_node'][0] }}" - roles: - - CentOS_7_baseline_install - -- name: Installer | Disable torrent ffx - hosts: ecs_install - vars: - num_data_nodes: "{{ groups['data_node'] | length }}" - top_data_node: "{{ groups['data_node'][0] }}" - install_node: "{{ groups['install_node'][0] }}" - tasks: - - file: - path: "{{ffx_sem}}" - state: absent - when: not ( num_data_nodes|int == 1 and top_data_node == install_node ) - - name: Common | Install ECS gather_facts: True hosts: data_node @@ -66,4 +27,3 @@ roles: - CentOS_7_service_policies - diff --git a/ui/ecsdeploy.py b/ui/ecsdeploy.py index 9f02729b..a231e465 100755 --- a/ui/ecsdeploy.py +++ b/ui/ecsdeploy.py @@ -255,19 +255,17 @@ def check(conf): if not play(playbook, conf.config.verbosity): sys.exit(1) - -@ecsdeploy.command('deploy', short_help='Deploy ECS to nodes') +@ecsdeploy.command('bootstrap', short_help='Install required packages on nodes') @pass_conf def deploy(conf): """ Deploys ECS to all data nodes """ - playbook = 'clicmd_deploy' + playbook = 'clicmd_bootstrap' if not play(playbook, conf.config.verbosity): sys.exit(1) - @ecsdeploy.command('reboot', short_help='Reboot data nodes that need it') @pass_conf def reboot(conf): @@ -279,6 +277,16 @@ def reboot(conf): if not play(playbook, conf.config.verbosity): sys.exit(1) +@ecsdeploy.command('deploy', short_help='Deploy ECS to nodes') +@pass_conf +def deploy(conf): + """ + Deploys ECS to all data nodes + """ + + playbook = 'clicmd_deploy' + if not play(playbook, conf.config.verbosity): + sys.exit(1) @ecsdeploy.command('start', short_help='Start the ECS service') @pass_conf diff --git a/ui/run.sh b/ui/run.sh index 9b472799..c7e14ad4 100755 --- a/ui/run.sh +++ b/ui/run.sh @@ -95,17 +95,19 @@ case "$(basename ${0})" in island-step2) #run ecsdeploy load || exit $? run ecsdeploy access check || exit $? - run ecsdeploy deploy || exit $? + run ecsdeploy bootstrap || exit $? run ecsdeploy reboot || exit $? run ping_until_clear + run ecsdeploy deploy || exit $? run ecsdeploy start || exit $? ;; step1) #run ecsdeploy load || exit $? run ecsdeploy access check cache || exit $? - run ecsdeploy deploy || exit $? + run ecsdeploy bootstrap || exit $? run ecsdeploy reboot || exit $? run ping_until_clear + run ecsdeploy deploy || exit $? run ecsdeploy start || exit $? ;; step2|island-step3) From faf675b0cf34bb563f1ba146e3b0c9105b35b3c8 Mon Sep 17 00:00:00 2001 From: Travis Wichert Date: Tue, 20 Jun 2017 13:12:01 -0400 Subject: [PATCH 6/7] Implements #119: Support Docker registry authentication (#279) * ECS-CommunityEdition-119 Support Docker registry authentication * forgot the getopt argument --- bootstrap.sh | 17 +++++++++++++++-- ui/libexec/osutils.sh | 7 +++++++ 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/bootstrap.sh b/bootstrap.sh index 0ec0f67e..cff6025a 100755 --- a/bootstrap.sh +++ b/bootstrap.sh @@ -22,7 +22,7 @@ set -o pipefail # TODO: Add GitHub URLs to help text (bottom) usage() { log "providing usage info" -cat < NOTE: This does nothing unless -r is also given. If an alternate Docker registry was specified with -r and uses a cert that cannot be resolved from the anchors in the local system's trust @@ -120,6 +124,7 @@ proxy_test_val="google.com:80" build_image_flag=false registry_flag=false registry_val='' +dlogin_flag=false regcert_flag=false regcert_val='' vm_flag=false @@ -138,7 +143,7 @@ mirror_flag=false mirror_val='' ### Argue with arguments -while getopts ":zyngqvhc:b:m:o:p:k:t:d:r:" opt; do +while getopts ":zynglqvhc:b:m:o:p:k:t:d:r:" opt; do case $opt in b) export build_image_flag=true @@ -164,6 +169,9 @@ while getopts ":zyngqvhc:b:m:o:p:k:t:d:r:" opt; do export mitm_val="${OPTARG}" ensure_file_exists "${mitm_val}" "HTTPS proxy cert" ;; + l) + export dlogin_flag=true + ;; m) export mirror_flag=true export mirror_val="${OPTARG}" @@ -469,6 +477,11 @@ fi docker_registry ping_sudo +### +v "Check if Docker login needed" +if $dlogin_flag; then + retry_until_ok docker login +fi ### Test Docker install v "Testing docker installation" diff --git a/ui/libexec/osutils.sh b/ui/libexec/osutils.sh index 81443015..0736927a 100755 --- a/ui/libexec/osutils.sh +++ b/ui/libexec/osutils.sh @@ -173,3 +173,10 @@ retry_with_timeout() { ((_attempt++)) done } + +retry_until_ok() { + local _cmd="${*}" + while ! $_cmd; do + o "Command failed, retrying..." + done +} From bc74c49d30acd6ecdba87cedd9823af186a636b8 Mon Sep 17 00:00:00 2001 From: Travis Wichert Date: Tue, 20 Jun 2017 13:22:07 -0400 Subject: [PATCH 7/7] prepare release 2.2.0 (#280) * update readme for 2.2.0 * bump versions * update reference deploy --- README.md | 9 +++------ docs/design/reference.deploy.yml | 5 +---- ui/etc/config.yml | 4 ++-- ui/etc/release.conf | 2 +- 4 files changed, 7 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 361866ee..462a186d 100644 --- a/README.md +++ b/README.md @@ -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.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) +* [dellemc-ecsce-3.0.0.1-install-node-2.2.0-vm0.ova](http://130852476153187606.public.ecstestdrive.com/public/dellemc-ecsce-3.0.0.1-install-node-2.2.0-vm0.ova) +* [dellemc-ecsce-3.0.0.1-install-node-2.2.0-vm0.ova.xz](http://130852476153187606.public.ecstestdrive.com/public/dellemc-ecsce-3.0.0.1-install-node-2.2.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. @@ -95,10 +95,7 @@ Using an Install Node for isolated environments, deploy a multi-node ECS instanc | [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| + # Support diff --git a/docs/design/reference.deploy.yml b/docs/design/reference.deploy.yml index a700e0cd..219e24cf 100644 --- a/docs/design/reference.deploy.yml +++ b/docs/design/reference.deploy.yml @@ -83,10 +83,7 @@ facts: storage_pools: - name: sp1 members: - - 192.168.2.220 - - 192.168.2.221 - - 192.168.2.222 - - 192.168.2.223 + - 192.168.2.200 options: is_protected: false is_cold_storage_enabled: false diff --git a/ui/etc/config.yml b/ui/etc/config.yml index 0544bcef..9981ccec 100644 --- a/ui/etc/config.yml +++ b/ui/etc/config.yml @@ -12,8 +12,8 @@ # http://pyyaml.org/wiki/PyYAMLDocumentation#Aliases --- ui: - name: Install - version: 2.1.0 + name: ECS Community Edition Install Node + version: 2.2.0 host_root_dir: /opt/emc/ecs-install state_file: /opt/state.yml deploy_file: /opt/deploy.yml diff --git a/ui/etc/release.conf b/ui/etc/release.conf index bbc75c31..2cbfdd6c 100644 --- a/ui/etc/release.conf +++ b/ui/etc/release.conf @@ -31,7 +31,7 @@ repo_name='emccorp' image_name='ecs-install' tag='latest' ver_maj='2' -ver_min='1' +ver_min='2' ver_rev='0' ver_tag='r' serial=0

%SngJkXc-3o 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%0DJzm`Vp8Tk~L>JRTd;y`#n2w=6Yv+>+Oi893 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