Update README

This commit is contained in:
2026-02-16 13:00:38 +01:00
parent a88734b316
commit 5ff1b13591

View File

@@ -7,19 +7,19 @@ InfluxDB, LDAP, SLURM), or easily added by manual configuration (MariaDB).
It includes the following containers: It includes the following containers:
|Service full name|docker service name|port| | Service full name | docker service name | port |
| --- | --- | --- | | ----------------- | ------------------- | ---------------- |
|Slurm Controller service|slurmctld|6818| | Slurm Controller | slurmctld | 6818 |
|Slurm Database service|slurmdbd|6817| | Slurm Database | slurmdbd | 6817 |
|Slurm Rest service with JWT authentication|slurmrestd|6820| | Slurm Rest (JWT) | slurmrestd | 6820 |
|Slurm Worker|node01|6818| | Slurm Worker | node01 | 6818 |
|NATS service|nats|4222, 6222, 8222| | NATS service | nats | 4222, 6222, 8222 |
|cc-metric-store service|cc-metric-store|8084| | cc-metric-store | cc-metric-store | 8084 |
|OpenLDAP|openldap|389, 636| | KeyCloak | keycloak | 8080 |
| OpenLDAP | openldap | 389, 636 |
dev
The setup comes with fixture data for a Job archive, cc-metric-store checkpoints, and a LDAP user directory.
The setup comes with fixture data for a Job archive, cc-metric-store
checkpoints, and a LDAP user directory.
## Prerequisites ## Prerequisites
@@ -49,43 +49,44 @@ sudo shutdown -r -t 0
Note: You can install all these dependencies via predefined installation steps Note: You can install all these dependencies via predefined installation steps
in `prerequisite_installation_script.sh`. in `prerequisite_installation_script.sh`.
If you are using different linux flavors, you will have to adapt If you are using different Linux flavors, you will have to adapt
`prerequisite_installation_script.sh` as well as `setupDev.sh`. `prerequisite_installation_script.sh` as well as `setupDev.sh`.
## Setup Procedure ## Setup Procedure
1. Clone `cc-backend` repository in chosen base folder: `$> git clone https://github.com/ClusterCockpit/cc-backend.git` 1. Clone `cc-backend` repository in chosen base folder: `$> git clone https://github.com/ClusterCockpit/cc-backend.git`
2. Run the setup bash file: `$> ./setupDev.sh`: **NOTICE** The script will download files of a total size of 338MB (mostly for the cc-metric-store data). 2. Run the setup bash file: `$> ./setupDev.sh`: **NOTICE** The script will
download files of a total size of 338MB (mostly for the cc-metric-store
data).
3. The setup-script launches the supporting container stack in the background 3. The setup-script launches the supporting container stack in the background
automatically if everything went well. Run automatically if everything went well. Run
```bash
``` bash
./cc-backend/cc-backend -server -dev ./cc-backend/cc-backend -server -dev
``` ```
to start `cc-backend`. to start `cc-backend`.
4. By default, you can access `cc-backend` in your browser at 1. By default, you can access `cc-backend` in your browser at
`http://localhost:8080`. You can shut down the cc-backend server by pressing `http://localhost:8080`. You can shut down the cc-backend server by pressing
`CTRL-C`, remember to also shut down all containers via `$> docker-compose down` `CTRL-C`, remember to also shut down all containers via `$> docker-compose down`
afterwards. afterwards.
5. You can restart the containers with: `$> docker-compose up -d`. 2. You can restart the containers with: `$> docker-compose up -d`.
## Credentials for logging into clustercockpit ## Credentials for logging into clustercockpit
Credentials for the preconfigured demo user are: Credentials for the preconfigured demo user are:
* User: `demo` - User: `demo`
* Password: `demo` - Password: `demo`
Credentials for the preconfigured LDAP user are: Credentials for the preconfigured LDAP user are:
* User: `ldapuser` - User: `ldapuser`
* Password: `ldapuser` - Password: `ldapuser`
You can also login as regular user using any credential in the LDAP user You can also login as regular user using any credential in the LDAP user
directory at `./data/ldap/users.ldif`. directory at `./data/ldap/users.ldif`.
@@ -94,10 +95,12 @@ directory at `./data/ldap/users.ldif`.
When you are done cloning the cc-backend repo and once you execute `setupDev.sh` file, it will copy a preconfigured `config.json` from `misc/config.json` and replace the `cc-backend/config.json`, which will be used by cc-backend, once you start the server. When you are done cloning the cc-backend repo and once you execute `setupDev.sh` file, it will copy a preconfigured `config.json` from `misc/config.json` and replace the `cc-backend/config.json`, which will be used by cc-backend, once you start the server.
The preconfigured config.json attaches to: The preconfigured config.json attaches to:
#### 1. OpenLDAP docker service on port 389
#### 2. cc-metric-store docker service on port 8084
#### 3. cc-slurm-adapter is running on slurmctld docker service.
#### 1. OpenLDAP docker service on port 389
#### 2. cc-metric-store docker service on port 8084
#### 3. cc-slurm-adapter is running on slurmctld docker service
cc-metric-store also has a preconfigured `config.json` in cc-metric-store also has a preconfigured `config.json` in
`cc-metric-store/config.json` which attaches to NATS docker service on port 4222 `cc-metric-store/config.json` which attaches to NATS docker service on port 4222
@@ -153,26 +156,26 @@ cluster i.e. node01.
In order to execute slurm commands, you may need to **`bash`** into the In order to execute slurm commands, you may need to **`bash`** into the
**`slurmctld`** docker service. **`slurmctld`** docker service.
``` bash ```bash
docker exec -it slurmctld bash docker exec -it slurmctld bash
``` ```
Then you may be able to run slurm controller commands. A few examples without Then you may be able to run slurm controller commands. A few examples without
output are: output are:
``` bash ```bash
sinfo sinfo
``` ```
or or
``` bash ```bash
squeue squeue
``` ```
or or
``` bash ```bash
scontrol show nodes scontrol show nodes
``` ```
@@ -190,10 +193,9 @@ custom CURL commands.
## Known Issues ## Known Issues
* `docker-compose` installed on Ubuntu (18.04, 20.04) via `apt-get` can not correctly parse `docker-compose.yml` due to version differences. Install latest version of `docker-compose` from https://docs.docker.com/compose/install/ instead. - `docker-compose` installed on Ubuntu (18.04, 20.04) via `apt-get` can not correctly parse `docker-compose.yml` due to version differences. Install latest version of `docker-compose` from <https://docs.docker.com/compose/install/> instead.
* You need to ensure that no other web server is running on ports 8080 (cc-backend), 8084 (cc-metric-store), 4222 and 8222 (Nats). If one or more ports are already in use, you have to adapt the related config accordingly. - You need to ensure that no other web server is running on ports 8080 (cc-backend), 8084 (cc-metric-store), 4222 and 8222 (Nats). If one or more ports are already in use, you have to adapt the related config accordingly.
* Existing VPN connections sometimes cause problems with docker. If `docker-compose` does not start up correctly, try disabling any active VPN connection. Refer to https://stackoverflow.com/questions/45692255/how-make-openvpn-work-with-docker for further information. - Existing VPN connections sometimes cause problems with docker. If `docker-compose` does not start up correctly, try disabling any active VPN connection. Refer to <https://stackoverflow.com/questions/45692255/how-make-openvpn-work-with-docker> for further information.
## Docker services and restarting the services ## Docker services and restarting the services
@@ -202,14 +204,14 @@ modify it.
Whenever you modify it, please use Whenever you modify it, please use
``` bash ```bash
docker compose down docker compose down
``` ```
in order to shut down all the services in all the VMs (maininstance, in order to shut down all the services in all the VMs (maininstance,
nodeinstance, nodeinstance2) and then start all the services by using nodeinstance, nodeinstance2) and then start all the services by using
``` bash ```bash
docker compose up docker compose up
``` ```