Giter VIP home page Giter VIP logo

expat's Introduction

Introduction

Expat is a tool of the Hopsworks ecosystem which is used for upgrading Hopsworks existing installations. Expat is versioned and it follows the same versions as Hopsworks. The migration steps to be executed are defined in resources/expat-site-default.xml under the <version-*> tags. When upgrading an existing Hopsworks cluster, the cluster definition contains the current version and the version to upgrade to. Expat will run all migration steps that fall between the two Hopsworks versions, excluding the current version of course. For example. If the current Hopsworks cluster to be upgraded is running version 0.6.1 and you are upgrading to 1.0.0, steps 070, 010 and 10 will be executed. Bug fix version upgrades are currently not supported, you can track progress of this feature by following HOPSWORKS-814.

Adding your migration step

  1. You need to define a class that implements the MigrateStep interface
  2. Set the class in expat-site-default.xml and in hopsworks-chef expat-site.xml.erb. Be careful to add the ShutdownHook in your class and in the main method in Expat, if needed.
  3. If you want to run a script from the scripts folder, you need to add it in the pom.xml as well.

Build

mvn clean package

Run

Follow the steps of the migrate recipe, the main steps are:

  1. Copy tha expat archive from ./target to the machine where expat is to run
  2. Extract it
  3. Copy the mysql connector from the hopsworks repo to ./lib
  4. Create the etc/expat-site.xml based on the provided template and set the variables. You do not need to set all of them, but you need at least the db credentials and domain. You might also need to set the expat dir (where you are running expat from). For testing, you probably need to grant access to user kthfs. You can do so with GRANT ALL PRIVILEGES ON *.* to '<user>'@'%' identified by '<pass>';

You may need to set the dry_run to true or false when you run expat.

Example

HADOOP_USER_NAME=hdfs HOPSWORKS_EAR_HOME=/srv/hops/domains/domain1/applications/hopsworks-ear~1.4.0-SNAPSHOT bin/expat -a migrate -v 1.4.0

expat's People

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.