YetiCloud Control Setup#
The YetiCloud control is a single-binary executable that renders the dashboard, runs agentless jobs, and manages the yeti-core agents from a central location.
Installation#
The dashboard can be installed through your system's package manager with the appropriate package, or as a pre-compiled binary. Both are available from YetiCloud.
Package Installation#
To install from a package, simply install the package as you would any other package:
# RHEL / Fedora / CentOS
yum localinstall <path_to_package>
# Ubuntu / Debian
apt install ./<path_to_package>
Manual Installation#
Alternatively you can install the pre-compiled binary manually:
sudo tar -xf <path_to_tar> -C /
If you are using systemd
, be sure to copy the yeti-control.service
file to your systemd
units directory:
cp -f yeti-control.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable yeti-control
systemctl start yeti-control
Configuring the Dashboard#
Dashboard configuration can be accoplished in two ways: a file called yeti-control.yaml
or environment variables. While we strongly encourage you to use a configuration file, there are situations (such as containers) where using environment variables are preferred.
Below is a refernce yeti-control.yaml
showcasing all possible options, their default values, and the equivelent environment variables for each:
# yeti-control.yaml
server:
# use HTTPS for transport; will use HTTP when set to false
https: true
# location of your private and public SSL certs
https_cert: certs/yeticloud.cert
https_key: certs/yeticloud.pem
# bind to 0.0.0.0 or 127.0.0.1
host: 0.0.0.0
# port to run SSL web service
port: 8443
db:
# Redis network protocol or UNIX socket
network: tcp
# Redis address
address: localhost:6379
# Redis DB instance
db: 0
# max tries to connect to Redis until panic
max_retries: 20
# password for Redis database
password: ""
app:
# account_key to access yeticloud
account_key: yeticloud
# enable debugging and tracing
development: false
# enable auto-register for new yeti stacks
register: true
# agent directory to run agentless workloads
agent_dir: /usr/lib/yeticloud/yeti-core
# upload automation plan directory
upload_dir: "./uploads"
metrics:
# run prometheus metrics on a different listening address and port
host: 0.0.0.0
port: 8080
NOTE: Any changes to the yeti-control.yaml
file require a service restart; changes to plan files do not.
Next Steps#
Now that the dashboard is up and running, its time to give it some work to do.