You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 11 Next »

Scenarios

We define an homogeneous environment as an environment where the JobScheduler Universal Agents that want to be installed will be installed under the same conditions. The following scenarios only differ between a fresh installation and an update from an already installed Agent.

Scenario 1: Fresh Agent installation where same conditions in each Agent server

Let be the following scenario:

  • One JobScheduler Master is running.
  • N different servers, where ONE JobScheduler Universal Agent instance will be installed (Agent server). 
  • The ports where the JobScheduler Universal Agents will be running are the same ones.
  • The users, which the JobScheduler Universal Agents is running under, are the same ones.
  • There has been no previous JobScheduler Universal Agents installations on these N servers.

Scenario 2: Agent Update where same conditions in each Agent server

Let be the following scenario:

  • One JobScheduler Master is running.
  • N different servers, where ONE JobScheduler Universal Agent instance will be installed. 
  • The ports where the JobScheduler Universal Agents will be running are the same ones.
  • The users, which the JobScheduler Universal Agents is running under, are the same ones.
  • It is NOT a fresh installation, instead it is an UPDATE of the JobScheduler Universal Agents that have been already installed on these servers.

Installation and Configuration Steps

For both scenarios above, the same steps will be carried out:

  1. Download the JobScheduler Universal Agent Batch Installer zip File
  2. Unzip the JobScheduler Universal Agent Batch Installer zip file.

  3. Download the JobScheduler Universal Agent installation file.
  4. Copy the content of the live folder to the live folder of your JobScheduler Master instance
  5. Copy the content of the folder batch_install to any folder (where the JobScheduler has permissions to access)
  6. Copy the JobScheduler Universal Agent installation file to the same folder (mentioned in step 5) and rename the JobScheduler Universal Agent installation file to jobscheduler_unix_universal_agent.tar.gz
  7. Create the installer configuration file (see paragraph below Installer Configuration File
  8. Job AgentBatchInstaller: Adjust the parameter values for the Job AgentBatchInstaller in your JobScheduler Master
  9. Create the YADE settings file (see section below YADE profiles for the file transfer)

Sample Configuration Files

Installer Configuration File

The installer configuration file contains an <installation> element for each JobScheduler Universal Agent instance.

  1. Set the name for the YADE settings file in the installer configuration file with the element <globals><transfer><settings>

A minimal example for the installer configuration file can look like this:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<installations lastRun="2015-11-20 14:11">
    <globals>
        <install_path>/opt</install_path>
        <transfer>
            <settings>c:\tmp\agent_batch\yade_agent_batch_installer_settings.ini</settings>
        </transfer>
        <ssh>
            <auth_method>password</auth_method>
            <port>22</port>
        </ssh>
        <postprocessing>
            <command>echo ${ssh.sudo_password} | sudo -S cp ${install_path}/jobscheduler_agent/bin/jobscheduler_agent_${agent_options.scheduler_http_port}.sh /etc/init.d/jobscheduler_agent_${agent_options.scheduler_http_port}</command>
            <command>echo ${ssh.sudo_password} | sudo -S chkconfig jobscheduler_agent_${agent_options.scheduler_http_port}</command>
        </postprocessing>
    </globals>
    <installation lastRun="2015-11-20 14:11">
        <agent_options>
            <scheduler_user>test</scheduler_user>
            <scheduler_log_dir>/var/log/sos-berlin.com/jobscheduler/agent</scheduler_log_dir>
        </agent_options>
        <ssh>
            <user>test</user>
            <password>xxxx</password>
            <sudo_password>xxxx</sudo_password>
            <host>xxxx</host>
        </ssh>
    </installation>
    <installation lastRun="2015-11-20 14:11">
        <agent_options>
            <scheduler_user>sos</scheduler_user>
            <scheduler_log_dir>/var/log/sos-berlin.com/jobscheduler/agent</scheduler_log_dir>
        </agent_options>
        <ssh>
            <user>sos</user>
            <password>xxxx</password>
            <sudo_password>xxxx</sudo_password>
            <host>xxxx</host>
        </ssh>
    </installation>
</installations>

HINTS: 

  • Note that no port is indicated here, that is, the parameter <scheduler_http_port> is not indicated here (in the section <installations><installation><agent_options>) . That is a very useful configuration in case the ports selected for the different JobScheduler Universal Agent would be all 4445, which is the default value. So for that example, all JobScheduler Universal Agents will be running on the port 4445 (in their Agent server respectively).
  • The commands defined under <command> (in the section <installations><globals><postprocessing><command>) will be executed for all installations defined afterwards in the file. In case you would install the Agents in different UNIX distributions, it is recommended to set them individually for each installation, instead of as a global parameter.

YADE profiles for the file transfer

Each installation makes use of a profile in the YADE settings file. The default profile name is <host>:<port> where

  • <host> will be substituted with the value from the element <installation><agent_option><scheduler_ip_address>
  • <port> will be substituted with the value from the element <installation><agent_option><scheduler_http_port>

Please follow these steps:

  1. Specify the name of the YADE settings file with the <globals><settings> element.
  2. Open the YADE settings file or create a new one.
  3. Assign the XSD Schema http://www.sos-berlin.com/schema/yade/YADE_configuration_v1.0.xsd
  4. Add a <ProtocolFragments> element and nodes for each host that you want to install the JobScheduler Universal Agent for.
  5. Add a <Profile> element and nodes for each host you want install the JobScheduler Universal Agent for.
  6. The default profile_id is <host>:<port>. If you do not use the default then you have to specify the profile name in the installer configuration file.

 <?xml version="1.0" encoding="utf-8"?>
<Configurations xsi:noNamespaceSchemaLocation="http://www.sos-berlin.com/schema/yade/YADE_configuration_v1.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Fragments>
    <ProtocolFragments>
      <SFTPFragment name="SFTP_192.11.0.111:4445">
        <BasicConnection>
          <Hostname><![CDATA[192.11.0.111]]></Hostname>
        </BasicConnection>
        <SSHAuthentication>
          <Account><![CDATA[test]]></Account>
          <AuthenticationMethodPassword>
            <Password><![CDATA[xxxx]]></Password>
          </AuthenticationMethodPassword>
        </SSHAuthentication>
      </SFTPFragment>
      <SFTPFragment name="SFTP_192.11.0.95:4445">
        <BasicConnection>
          <Hostname><![CDATA[192.11.0.95]]></Hostname>
        </BasicConnection>
        <SSHAuthentication>
          <Account><![CDATA[sos]]></Account>
          <AuthenticationMethodPassword>
            <Password><![CDATA[xxxx]]></Password>
          </AuthenticationMethodPassword>
        </SSHAuthentication>
      </SFTPFragment>
    </ProtocolFragments>
  </Fragments>
  <Profiles>
    <Profile profile_id="192.11.0.111:4445">
      <Operation>
        <Copy>
          <CopySource>
            <CopySourceFragmentRef>
              <LocalSource />
            </CopySourceFragmentRef>
            <SourceFileOptions>
              <Selection>
                <FileSpecSelection>
                  <FileSpec><![CDATA[.*\.(sh|gz)$]]></FileSpec>
                  <Directory><![CDATA[C:\tmp\agent_batch]]></Directory>
                </FileSpecSelection>
              </Selection>
            </SourceFileOptions>
          </CopySource>
          <CopyTarget>
            <CopyTargetFragmentRef>
              <SFTPFragmentRef ref="SFTP_192.11.0.111:4445" />
            </CopyTargetFragmentRef>
            <Directory><![CDATA[/home/test/tmp/]]></Directory>
          </CopyTarget>
        </Copy>
      </Operation>
    </Profile>
    <Profile profile_id="192.11.0.95:4445">
      <Operation>
        <Copy>
          <CopySource>
            <CopySourceFragmentRef>
              <LocalSource />
            </CopySourceFragmentRef>
            <SourceFileOptions>
              <Selection>
                <FileSpecSelection>
                  <FileSpec><![CDATA[.*\.(sh|gz)$]]></FileSpec>
                  <Directory><![CDATA[C:\tmp\agent_batch]]></Directory>
                </FileSpecSelection>
              </Selection>
            </SourceFileOptions>
          </CopySource>
          <CopyTarget>
            <CopyTargetFragmentRef>
              <SFTPFragmentRef ref="SFTP_192.11.0.95:4445" />
            </CopyTargetFragmentRef>
            <Directory><![CDATA[/home/sos/tmp/]]></Directory>
          </CopyTarget>
        </Copy>
      </Operation>
    </Profile>
  </Profiles>
</Configurations>
  • No labels