micado/eec
724
The MiCADO Execution Engine Client (EEC) for the EMGWAM component in CloudiFacturing, Co-Versatile and DIGITbrain.
Enables the deployment and execution of applications and services using the MiCADO cloud orchestration framework.
The MiCADO EEC implements a RESTful API according to v1.4.0 of the EMGWAM Execution Engine Client API. Please refer to the specification for more detail.
The MiCADO EEC is shipped as a Docker container and makes heavy use of the MiCADO Client Library. It is deployed behind traefik and secured with SSL. Client certificate verification can be optionally enabled.
Minimum specs.
Install Docker and Docker-Compose.
Clone this repository into a directory of your choice
git clone https://github.com/micado-scale/eec project_name_eec
cd project_name_eec
Create the following default directories on the host. You can change these by modifying the
volumes
sections in docker-compose.yml
.
/etc/micado
(Configuration dir for the MiCADO Client Library)/etc/eec
(Configuration dir for the MiCADO EEC)/etc/traefik/dynamic
(Configuration dir for traefik)If you did not use the default directories above, make sure to use the new names in the steps below
Create a credentials file
at /etc/micado/credentials-cloud-api.yml
and fill in your OpenStack or CloudBroker credentials. Sample credentials file are available in the Ansible-micado repository.
/etc/micado/credentials-docker-registry.yml
and fill in your private registry URL and credentials.Copyopenstack_micado_spec.yml
or cloudbroker_micado_spec.yml
to /etc/eec/micado_spec.yaml
and populate it with the relevant cloud IDs
and names that describe your desired MiCADO node on your desired cloud. This should be an instance meeting the
recommended requirements
with an appropriate
firewall configuration.
Copytraefik.toml
to /etc/traefik/traefik.toml
and replace foo@example.com
with a valid email address.
Copyforce-https.toml
to /etc/traefik/dynamic/force-https.toml
Create an empty file in which Traefik can store retrieved HTTPS certificates. Set restrictive rw------- permissions for the created file.
touch /etc/traefik/acme.json
chmod 600 /etc/traefik/acme.json
Editdocker-compose.yml
and replace example.com
with your domain. Also modify the ENV variables MICADO_CLOUD_LAUNCHER and MICADO_SPEC if necessary.
Rundocker-compose up -d
and the deployment is complete.
Provide an EMGWAM administrator with your domain name and details.
docker pull micado/eec