Quickstart¶
This Quickstart guide describe how to install a very basic Tanit configuration to get you up and and running with Tanit very quickly.
Note
You can perform the installation steps in a single machine.
Install Tanit¶
The installation is quick and straightforward.
# Tanit needs a configuration directory, /etc/tanit/conf is the default,
# but you can lay foundation somewhere else if you prefer
# (optional)
export TANIT_CONF_DIR="/etc/tanit/conf"
# install from pypi using pip
pip install tanit
Configuration¶
The master and master service needs a configuration file ‘tanit.conf’ to be created under TANIT_CONF_DIR.
A very basic configuration for a single machine cluster:
[master]
bind_address = 0.0.0.0
worker-service_address = localhost:9091
client-service_address = localhost:9090
thrift_threads = 25
[worker]
bind_address = 0.0.0.0
bind_port = 9093
Note
In the above example both the master and worker configurations are merged within a single file, because the master and worker services will be running in the same machine.
Start the master¶
tanit master
The above wil start the master process attached to the current shell, you can run the process in the background and use nohup to attach it to init, for instance :
nohup tanit master > tanit-master.log 2>&1 &
Start the worker¶
tanit worker
Or you can also run the worker as background process :
nohup tanit worker > tanit-worker.log 2>&1 &
Upon a successful start of the worker service, the master will output the below log lines:
INFO Registering new Worker [ tanit-worker-hostname-9093 ].
INFO Worker [ tanit-worker-hostname-9093 ] registered.
INFO Activating Worker [ tanit-worker-hostname-9093 ]
INFO Transitioning worker from state ALIVE to ACTIVE
INFO Worker [ tanit-worker-hostname-9093 ] Activated
INFO Registering new filesystem [ local:hostname ].
INFO Registered filesystem 'local:hostname'
INFO Filesystem [ local:hostname ] registered.
In the above example ‘hostname’ refer to the hostname of the machine, that you get by running hostname in linux.
List Workers¶
You can use the Tanit command line tool to verify that the worker have been properly registered :
[root@edge /]# tanit workers list
INFO Instantiated configuration from /etc/tanit/conf/tanit.conf.
Worker { id: tanit-worker-hostname-9093, address: hostname, port: 9093}
[root@edge /]#
[root@edge /]# tanit workers status tanit-worker-hostname-9093
INFO Instantiated configuration from /etc/tanit/conf/tanit.conf.
WorkerStats { id: tanit-worker-hostname-9093, state: ACTIVE, last_heartbeat: 01112020160116, running_tasks: 0, pending_tasks: 0, available_cores: 4 }
Register your first Filesystem¶
You can use the tanit command line tool to register filesystems :
tanit filesystems register "{ \"name\": \"s3-test-bucket\", \"type\": \"s3\", \"bucket\" : \"kraken-test\" }"
Run your first Tanit job¶
tanit jobs submit { \"type\": \"COPY\", \"params\": { \"src\": \"s3-test-bucket\", \"dst\": \"local:edge\", \"src_path\": "/some_source_path\", \"dest_path\": "some_destination_path\"} }