Installing IBM Spectrum Conductor to a local environment and deploying instances to a shared file system

Your environment includes installing the IBM Spectrum Conductor product, and also deploying accompanying instances (instance groups, Anaconda distribution instances, and application instances). With your local installation of IBM Spectrum Conductor, you also deploy instances either to that local environment so that each host in the cluster has its own deployments, or dedicate one shared file system (such as IBM Spectrum Scale) for all the instance deployments so that every host in the cluster share access to these deployments. This topic guides you through the later scenario, including the installation flow and the services and configuration files that you must configure for shared deployment.

Before you begin

  • This topic is applicable to shared deployments of instance groups, Anaconda distribution instances, and application instances. If you deployed any of these instances to a local (not shared) environment previously, remove them before switching the cluster to shared deployment.
  • Ensure that all directories specified as part of the Spark or notebook configuration are on your shared file system.

About this task

For production clusters, log in with root or sudo to root permission. For evaluation clusters you can install as any user, who becomes the cluster administrator. If you install as non root, every execution user that is specified must be the Cluster Administrator.

Procedure

  1. Log in to the host (root or sudo to root permission), and follow the instructions to install IBM Spectrum Conductor locally (Installing to a local environment). Ensure that you set the ELASTIC_HARVEST_LOCATION Elastic Stack environment variable to your shared directory.
    Note:
    1. If you change the ELASTIC_HARVEST_LOCATION location after installing IBM Spectrum Conductor, ensure you modify this value in the elk-shipper and SparkCleanup services, restart these services, and run the egosh service modify command so that the changes take effect.
    2. If you will use a high availability (HA) environment for management hosts, then this ELASTIC_HARVEST_LOCATION shared directory can be set to be inside the HA directory for the cluster. In this case, the IBM Spectrum Conductor installer creates the directory, which will remain after running the egoconfig mghost command you specify when you configure a shared directory for failover (in the step 2, after this local installation).
  2. If you are using an HA environment for the management hosts (noted in step 1), configure HA for your cluster. This includes configuring a shared directory for configuration information and common files that management hosts look up upon failover. See Configuring a shared directory for failover for details.
  3. Configure the ascd service for shared deployment:
    1. From your primary host, open the $EGO_CONFDIR/../../ascd/conf/ascd.conf configuration file for editing.
    2. Set ASCD_SHARED_FS_DEPLOY=ON.
  4. By default, the SparkCleanup service runs on all hosts in the cluster to periodically clean up the environment for the instance groups. However, when you deploy instance groups to a shared file system, it can be redundant to have the SparkCleanup service run on all hosts. You can configure the SparkCleanup service to run only on one host, by completing these steps on your primary host (it is not necessary to configure on other hosts):
    1. Edit the SparkCleanup service profile at $EGO_CONFDIR/../../eservice/esc/conf/services/sparkcleanup_service.xml and set the number of service instances to 1, the consumer to /ManagementServices/EGOManagementServices consumer, and the resource group to ManagementHosts:
      <sc:MaxInstances>1</sc:MaxInstances>
      <ego:ConsumerID>/ManagementServices/EGOManagementServices</ego:ConsumerID>
      <ego:ResourceGroupName>ManagementHosts</ego:ResourceGroupName>
    2. Save the changes to the sparkcleanup_service.xml file.
    3. Configure the SparkCleanup service to use the settings defined in the sparkcleanup_service.xml file:
      egosh service stop SparkCleanup
      egosh service modify SparkCleanup -f $EGO_CONFDIR/../../eservice/esc/conf/services/sparkcleanup_service.xml
      egosh service start SparkCleanup