Skip to content
This repository was archived by the owner on Feb 8, 2024. It is now read-only.

cortx py utils multi node manual provisioning

Selva Nambi edited this page Jul 9, 2021 · 31 revisions

Pre-Requisites

Kafka Server (on all the nodes)

  • Kafka server has been installed at path /opt/kafka. Kafka configuration is complete and it is running. For more details refer Kafka setup. Note that kafka may not be installed on all the nodes in CORTX cluster.

Required python packages (on all the nodes)

Refer required python packages from list 1 and list 2 to get the list of required python packages. (Use the above mentioned requirements files in the same order).
Download these files and use below commands to install these python packages
# sudo pip3 install -r <local-path>/python_requirements.txt
# sudo pip3 install -r <local-path>/python_requirements.ext.txt

Install cortx-py-utils rpm (on all nodes in the CORTX cluster)

Get the rpm.
#yum install -y cortx-py-utils-2.0.0-90_8b3c613.noarch.rpm <== RPM name would be different

Mini Provisioning steps

Post Install (on all nodes)

  • Edit this template and store the filled in value /tmp/utils.post_install.tmpl.3-node
  • Run config command
    /opt/seagate/cortx/utils/bin/utils_setup post_install --config yaml:///tmp/utils.post_install.tmpl.3-node

Config (on all nodes)

  • Edit this template and store the filled in value /tmp/utils.config.tmpl.3-node
  • cortx>software>common>message_bus_type ==> This indicates message bus type. Currently only "kafka" is supported.
  • cortx>software>kafka>servers ==> This key holds an array of values. Each value is of type "server-FQDN":"port". Port is optional.
  • server_node>TMPL_MACHINE_ID ==> This indicates the unique machine ID of the local system.
  • server_node>TMPL_MACHINE_ID>site_id ==> A numeric string value identifies a single data center site.
  • server_node>TMPL_MACHINE_ID>rack_id ==> A numeric string value that identifies a single Rack in a single site.
  • server_node>TMPL_MACHINE_ID>node_id ==> A numeric string value that indicates node ID (UUID)
  • Run config command
    /opt/seagate/cortx/utils/bin/utils_setup config --config yaml:///tmp/utils.config.tmpl.3-node
    NOTE: Config creates /etc/cortx/message_bus.conf and /etc/cortx/cluster.conf

Init (on a single node only)

  • Edit this template and store the filled in value /tmp/utils.init.tmpl.3-node

  • Run init command
    /opt/seagate/cortx/utils/bin/utils_setup init --config yaml:///tmp/utils.init.tmpl.3-node

Test (on a single node only)

  • Edit this template and store the filled in value /tmp/utils.test.tmpl.3-node

  • Run the test command
    /opt/seagate/cortx/utils/bin/utils_setup test --config yaml:///tmp/utils.test.tmpl.3-node

  • In test phase, it validates that message bus is working fine by below actions:

  • create a message_type
  • Send a test message using producer class
  • Get that message using consumer class.
  • If the received message matches with the sent one, return success.

Reset (on a single node only)

  • Edit this template and store the filled in value /tmp/utils.reset.tmpl.3-node

  • Run the reset command
    /opt/seagate/cortx/utils/bin/utils_setup reset --config yaml:///tmp/utils.reset.tmpl.3-node

  • In reset phase:

  • It deletes all created message_types from all clustered nodes

Cleanup (on all the nodes)

  • Edit this template and store the filled in value /tmp/utils.cleanup.tmpl.3-node

  • Run the cleanup command
    /opt/seagate/cortx/utils/bin/utils_setup cleanup --config yaml:///tmp/utils.cleanup.tmpl.3-node

  • In cleanup phase:

  • It deletes the config files created by config phase

Clone this wiki locally