[ 
https://issues.apache.org/jira/browse/TRAFODION-1839?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eason Zhang reassigned TRAFODION-1839:
--------------------------------------

    Assignee: Eason Zhang

> Trafodion Installer Evolution
> -----------------------------
>
>                 Key: TRAFODION-1839
>                 URL: https://issues.apache.org/jira/browse/TRAFODION-1839
>             Project: Apache Trafodion
>          Issue Type: Improvement
>          Components: documentation, installer
>    Affects Versions: 2.0-incubating
>            Reporter: Gunnar Tapper
>            Assignee: Eason Zhang
>
> Umbrella for evolution of the Trafodion Installer. 
> Overall motivation is:
> * Position Trafodion as a pure Hadoop add-on: the Hadoop environment must
> be installed and fully functional before installing Trafodion. 
> * Use as much of the existing function as possible.
> * Define distinct phases that fit into common IT practices.
> * Enhanced user experience.
> Consideration:
> IT departments often separate responsibilities such as security 
> administration,
> configuration changes, etc. These type of activities need to be planned and
> executed during specific maintenance windows. All acivities are audited in
> order to be compliant with local regulations; for examle, the
> Sarbanes-Oxley Act.
> In contrast, the current behavior of the Trafodion Installer, which
> assumes that it can obtain configuration information, change Hadoop 
> configuration,
> install software packages, set up user IDs, and install/deploy Trafodion in 
> one
> session. 
> The following distinct install phases are defined.
> 1. Environment validation: Ensure that the environment is suited for 
> Trafodion.
> Identify required changes.
> The Trafodion Scanner should be able to fulfill this need. The current Scanner
> Configuration file is out-of-date so it generates false positives such as
> flagging hyper threading, which is now OK.
> NOTE: Need to spend more time on the Scanner. The design and implementation
> looks quite elegant and robust. 
> 2. Configuration builder: Automated Mode (aka expert mode) uses a documented
> configuration file with environmental information to drive the installation.
> Guided Mode prompts the user for information creating a comment-free
> configuration file.
> Change the Guided Mode to be a configuration builder that builds a
> fully-commented configuration file. Enhance Guided Mode to do more
> discovery using the REST APIs/Hadoop configuration files to obtain
> information that the user have to provide today.
> The goal here is to reduce user-supplied information to the
> absolute minimum: Trafodion user password, target install directory,
> tar file, and distribution-manager user and password.
> From past experiences, it's possible to automatically detect what type
> of Hadoop installation is used, URL to distribution manager or location
> of configuration files, and then rely on REST APIs/configuration files
> to discover nodes, current settings, and so forth.
> All prompts are done in a loop to allow for review/approval of the
> input. When completed, the user is shown the overall settings in
> a numbered menu thereby allowing for new edits, if needed. Once approved,
> the commented configuration file is created thereby allowing the
> user to directly edit the file in later upgrades. As today, new
> runs of the Installer reads the configuration file for prompt
> default values.
> It's probably best to implement discovery functions in Python because it
> has good handling of REST APIs, reading XML files, and parsing
> JSON responses.
> 3. Configuration changer: Trafodion requires specific system, HDFS,
> and HBase settings. These should be implemented BEFORE installing
> Trafodion so that the user can a) time the required changes
> b) choose to make the changes using an alternative means
> c) validate that the changes did not break their Hadoop environment.
> Keep today's capability of restarting Hadoop services but don't invoke
> configuration change unless required. (Don't do it blindly like today; 
> restarting
> Hadoop services is a big deal and should be avoided as much as possible.)
> 4. User Setup: Create/validate mode to allow for cases where
> security administrators must perform user creation.
> 5. Package Download: Validate/download mode for required packages.
> 6. Trafodion Install: As today.
> 7. Activation: As today
> trafodion_install adds a set of new arguments to invoke the different
> steps per the list above:
> No argument displays help text
> -a, --automated     Run installer in automated mode. Cannot be combined with 
> -b.
> -c, --config_file   Location of configuration file
> -v, --validate      Validatation mode. Applies to -s and -p.
> -s, --scan          Checks the current Hadoop and system environment for 
> Trafodion usage.
> -b, --build         Guided Mode. Builds --config_file.
> -u, --user          Creates/validates Trafodion user. -v defines validate 
> mode.
> -p, --package       Installs/validates required software packages. -v defines 
> validate mode.
> -i, --install       Installs the Trafodion software.   
> -a, --activate      Starts Trafodion.
> Other changes:
> * Move installer settings to a separate file that's sourced in. Today, most 
> installer files
> defines the settings (in variables) within the file itself.
> * Support sudo alternates (such as pbrun) via edit of installer-settings file.
> * Handle multiple clusters in discovery. Today's code assumes one cluster 
> only when interacting with REST APIs.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to