accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ctubbsii <>
Subject [GitHub] accumulo pull request #184: Blog post about simplified scripts in 2.0.0
Date Wed, 16 Nov 2016 20:58:31 GMT
Github user ctubbsii commented on a diff in the pull request:
    --- Diff: _posts/blog/ ---
    @@ -0,0 +1,163 @@
    +title: "Simpler scripts and configuration coming in Accumulo 2.0.0"
    +author: Mike Walch
    +reviewers: Josh Elser, Chistopher Tubbs
    +For the upcoming 2.0.0 release, Accumulo's scripts and configuration were refactored
    +[ACCUMULO-4490]) to make Accumulo easier to use. While Accumulo's documentation (i.e.
the user
    +manual and []) were updated with any changes that were made, this blog post
    +a summary of the changes.
    +### Fewer scripts
    +Before 2.0.0, the `bin/` directory of Accumulo's distribution contained about 20 scripts:
    +$ ls accumulo-1.8.0/bin/
    +accumulo     check-slaves                                    
    +The number of scripts made it difficult to know which scripts to use.  If you added the
`bin/` directory to your 
    +`PATH`, it could add unecessary commands to your PATH or cause commands to be overriden
due generic names
    +(like ''). The number of scripts were reduced using the following methods:
    +* Scripts that are only called by other scripts were moved to a new `libexec/` directory
in the Accumulo distribution
    +* Scripts with similiar functionality were combined
    +* Extra/optional scripts were move to a new `contrib/` directory in the distribution
    +Starting with 2.0.0, Accumulo will only have 3 scripts in its `bin/` directory:
    +$ ls accumulo-2.0.0/bin/
    +accumulo  accumulo-cluster  accumulo-service
    +Below are some notes on this change:
    +* The 'accumulo' script was left alone except for improved usage and the addition of
'create-config' and 'build-native'
    +  commands to replace '' and ''.
    +* The 'accumulo-service' script was created to manage Accumulo processes as services
    +* The 'accumulo-cluster' command was created to manage Accumulo on cluster and replaces
'' and ''.
    +* All optional scripts in `bin/` were moved to `contrib/`:
    +      $ ls accumulo-2.0.0/contrib/
    +  check-tservers
    +### Less configuration
    +Before 2.0.0, Accumulo's `conf/` directory looked like the following (after creating
initial config files
    +using ''):
    +$ ls accumulo-1.8.0/conf/          auditLog.xml            masters 
    +accumulo-metrics.xml     client.conf   generic_logger.xml                   monitor 
    +accumulo.policy.example  examples
    +accumulo-site.xml        gc                       monitor_logger.xml
    +While all of these files have a purpose, many are only used in rare situations. Therefore,
    +'accumulo create-config' (which replaces '') now only generates a
    +set of configuration files needed to run Accumulo.
    +$ cd accumulo-2.0.0
    +$ ./bin/accumulo create-config
    +$ ls conf/  accumulo-site.xml  client.conf  examples
    +The 'accumulo create-config' command does not generate host files (i.e 'tservers', 'monitor',
etc) to run processes locally.
    +These files are only required by the 'accumulo-cluster' command which has a command to
generate them.
    +$ cd accumulo-2.0.0/
    +$ ./bin/accumulo-cluster create-config
    +$ ls conf/  accumulo-site.xml  client.conf  examples  gc  masters  monitor  tracers
    +Any less common configuration files that were not generated above can still be found
in `conf/examples`.
    +### Better usage
    +Before 2.0.0, the 'accumulo' command had a limited usage:
    +$ ./accumulo-1.8.0/bin/accumulo
    +accumulo admin | check-server-config | classpath | create-token | gc | help | info |
init | jar <jar> [<main class>] args |
    +  login-info | master | minicluster | monitor | proxy | rfile-info | shell | tracer |
tserver | version | zookeeper | <accumulo class> args
    +For 2.0.0, all 'accumulo' commands were given a short description and organized into
the groups.
    +$ ./accumulo-2.0.0/bin/accumulo help
    +Usage: accumulo <command> (<argument> ...)
    +Core Commands:
    +  create-config                  Create Accumulo configuration
    +  build-native                   Build Accumulo native libraries
    +  init                           Initializes Accumulo
    --- End diff --
    Descriptions [should use][1] third-person, active voice, indicative mood, while instructions
should use second-person, active voice, imperative mood.

If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at or file a JIRA ticket
with INFRA.

View raw message