GithubHelp home page GithubHelp logo

isabella232 / rex-flink Goto Github PK

View Code? Open in Web Editor NEW

This project forked from adjust/rex-flink

0.0 0.0 0.0 40 KB

automate Flink tasks with Rex

Home Page: https://github.com/adjust/Rex-Flink

License: Other

Perl 99.42% Perl 6 0.58%

rex-flink's Introduction

NAME

Rex::Flink - automate Flink tasks with Rex

VERSION

version v0.5.0

SYNOPSIS

# Rexfile
use Rex::Flink;

# CLI
$ rex Flink:setup
$ rex Flink:start
$ rex Flink:stop

DESCRIPTION

This module automates Flink tasks with Rex.

Please note this is a work still heavily in progress, the interface might be subject to change before version 1.0.0.

TASKS

Flink:setup

Sets Flink up from binary tarball. The installation directory can be controlled from CMDB via install_path. Default is ~/flink.

Supported options:

--hadoop

Hadoop version (default: 27)

--scala

Scala version (default: 2.11)

--version

Flink version (default: 1.2.0)

Flink:configure

Configures Flink from a file, which is treated as a standard Rex template. The name of the file to be deployed can be controlled from CMDB via config_file. Default is templates/flink-conf.yaml.

Flink:start

Starts a Flink service.

Supported options:

--service

Service name to start (default: jobmanager)

--mode

Execution mode to start the service with (default: local)

Flink:stop

Stops a Flink service.

Supported options:

--service

Service name to stop (default: jobmanager)

Flink:Pipeline:upload

Uploads a compiled pipeline to the remote machine from the local one. By default it uploads into ~/flink/current/pipelines.

Supported options:

--file

Local filename of the pipeline to upload.

Flink:Pipeline:run

Runs a pipeline on the remote machine.

Supported options:

--file

Remote filename of the pipeline to run. Mandatory, without any default value.

--class

Class with the pipeline entry point.

--parallelism

Parallelism for the pipeline.

--options

Any extra options to be passed to the pipeline.

DIAGNOSTICS

  • No pipeline file specified

No pipeline file is specified to run with Flink:Pipeline:run task.

CONFIGURATION AND ENVIRONMENT

This module can use configuration specified under the flink node in the CMDB. Example YAML structure:

flink:
    config_file: templates/flink-conf.yaml
    hadoop: 27
    install_path: ~/flink
    scala: 2.11
    version: 1.2.0

This module does not use any environment variables. See also TESTING.

DEPENDENCIES

This module depends on the modules detailed below.

CPAN modules:

  • Const::Fast

  • Rex

INCOMPATIBILITIES

There are no known incompatibilities with other modules.

BUGS AND LIMITATIONS

There are no known bugs. Make sure they are reported.

TESTING

This module is capable to do testing with the help of the Rex::Test module inside a VM via libvirt.

A URL pointing to a VM image to be used for the testing should be specified via the REX_FLINK_TEST_IMAGE environment variable. For example:

# CLI
$ REX_FLINK_TEST_IMAGE='file:///var/lib/livirt/images/image.qcow2' rex Test:run
$ REX_FLINK_TEST_IMAGE='https://domain.tld/image.qcow2' rex Test:run

AUTHOR

Ferenc Erki <[email protected]>

COPYRIGHT AND LICENSE

This software is copyright (c) 2017 by adjust GmbH.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

rex-flink's People

Contributors

ferki 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.