Karabo SCADA Framework - Services
This package provides the service commands required in a Karabo environment.
Please check https://pypi.org/project/Karabo/ for an overview of Karabo's components and ways to install the full system.
Installation
To install run
pip install karabo.services
or use the full or services options when installing the karabo package:
pip install karabo[full]
pip install karabo[services]
This package itself is pure Python but depends on karabo.daemontools which requires compiled code.
You can add the option with_cpp to also install karabo.cpp and the associated services
pip install karabo.services[with_cpp]
List of commands
karabo-activate
Initially activates a Karabo environment by initializing structures into a user defined directory. You will need to execute this command first, before most other commands succeed (you'll get a message that Karabo was not found if you didn't).
Execute
karabo-activate --init-to $PATH --help
to see the options for creating a Karabo environment in PATH.
You can use the the --broker-host and --broker-topic modifiers
to configure the default broker settings Karabo servers added to this environment will use. Run karabo-activate
again (you can omit --init-to now) to reconfigure these settings. The --backbone option will only take effect
when an environment is first created, and will install the Karabo backbone services into this environment.
Starting a Karabo standalone system
If you wish to run Karabo standalone you can do this if you have podman or docker installed on the system.
First, run
karabo-activate --init-to PATH --standalone
Then run
podman-compose -f $PATH/var/containers/compose.yaml up
or (docker-compose ...). This will start containerized version of the services a full
Karabo installation requires:
- A RabbitMQ broker (user: xfel, pw: karabo)
- An Influx database instance for logging (user: infadm, pw: admpwd)
- A Grafana installation with the Influx database as a pre-provisioned source (user: admin, pw: admin)
Note that the Grafana provisioning assumes karabo as the broker topic in use. If you've
used karabo-activate --broker-topic TOPIC you'll need to edit the data source to refer to
a database of TOPIC from inside Grafana.
Additionally, the above setup will use a local sqlite database for projects.
You can switch this to MySQL database by providing the following arguments
to karabo-activate:
--project-db HOST:PORT--project-db-user USER--project-db-pw PASSWORD--project-db-name DATABASE_NAME
Finally, run
$PATH/activate
followed by
karabo-start
ikarabo
The interactive Karabo Python shell. Includes device orchistration and scripting using Karathon.
karabo-start, karabo-stop, karabo-kill
Scripts that start, stop, or kill a Karabo device server managed by karabo.daemontools or all such servers.
karabo-check
Outputs the current status of Karabo services managed by karabo.daemontools
karabo-add-deviceserver, karabo-remove-deviceserver
Adds or removes a Karabo device server to the services managed by karabo.daemontools.
Additional commands.
This package exposes additional (internal) commands as entrypoints which are not further described here.
Metadata
Release files for karabo.services 3.0.16
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| karabo_services-3.0.16.tar.gz | 20.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| karabo_services-3.0.16-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 57.1 kB
Release files / karabo_services-3.0.16.tar.gz
| Download URL | karabo_services-3.0.16.tar.gz |
|---|---|
| Size | 20.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
42557e4a51485d888643769a49207acbde606346a740f150a3fa743a0af5ea13
|
|
BLAKE2b-256 checksum How to use checksums |
879327187faf7561f8f236e334184bfa3dd9246bface5666e562be86c0784333
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|
Release files / karabo_services-3.0.16-py3-none-any.whl
| Download URL | karabo_services-3.0.16-py3-none-any.whl |
|---|---|
| Size | 36.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
cd43a93ba854462c6bf92393cf9f3a73f42437b8e956dc495d5258ad5f233051
|
|
BLAKE2b-256 checksum How to use checksums |
c220b4a1f97cd283bc3d9d601ae44b18d9982713e4e0ece1852107f7cae9dd06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.14
|