Fix issues on Macos Apple Silicon systems

This commit is contained in:
Jan Eitzinger 2025-04-08 09:36:57 +02:00
parent 29ea7ea347
commit 5966ae7d77
4 changed files with 46 additions and 31 deletions

View File

@ -61,8 +61,13 @@ If you are using different linux flavors, you will have to adapt
size of 338MB (mostly for the cc-metric-store data).
3. The setup-script launches the supporting container stack in the background
automatically if everything went well. Run `$> ./cc-backend/cc-backend
-server -dev` to start `cc-backend`.
automatically if everything went well. Run
``` bash
./cc-backend/cc-backend -server -dev
```
to start `cc-backend`.
4. By default, you can access `cc-backend` in your browser at
`http://localhost:8080`. You can shut down the cc-backend server by pressing
@ -153,7 +158,7 @@ cluster i.e. node01.
In order to execute slurm commands, you may need to **`bash`** into the
**`slurmctld`** docker service.
```
``` bash
docker exec -it slurmctld bash
```
@ -228,4 +233,3 @@ Roughly 2700 jobs from the first week of 2021 are loaded with data from InfluxDB
Some views of ClusterCockpit (e.g. the Users view) show the last week or month.
To show some data there you have to set the filter to time periods with jobs
(August 2020 to January 2021).

View File

@ -29,15 +29,6 @@ else
echo "Docker installed."
fi
# check if docker-compose is installed and available
if ! docker-compose --version; then
echo "Docker-compose not installed!"
echo -n "Stopped."
exit
else
echo "Docker-compose installed."
fi
# check if npm is installed and available
if ! npm --version; then
echo "NPM not installed!"

View File

@ -27,6 +27,26 @@ fi
chmod u+x scripts/checkModules.sh
./scripts/checkModules.sh
# check if docker-compose is installed and available
if ! docker-compose --version; then
echo "Docker-compose not installed!"
else
echo "docker-compose available."
export DOCKER_COMPOSE="docker-compose"
fi
if ! docker compose version; then
echo "Docker-compose not installed!"
else
echo "docker compose available."
export DOCKER_COMPOSE="docker compose"
fi
if [[ -z "${DOCKER_COMPOSE}" ]]; then
echo -n "Stopped."
exit
fi
# Creates data directory if it does not exists.
# Contains all the mount points required by all the docker services
# and their static files.
@ -54,8 +74,8 @@ if [ -d data/cc-metric-store-source ]; then
fi
# Just in case user forgot manually shutdown the docker services.
docker-compose down
docker-compose down --remove-orphans
$DOCKER_COMPOSE down
$DOCKER_COMPOSE down --remove-orphans
# This automatically builds the base docker image for slurm.
# All the slurm docker service in docker-compose.yml refer to
@ -65,8 +85,8 @@ make
cd ../..
# Starts all the docker services from docker-compose.yml.
docker-compose build
docker-compose up -d
$DOCKER_COMPOSE build
$DOCKER_COMPOSE up -d
cd cc-backend
if [ ! -d var ]; then

View File

@ -5,7 +5,7 @@ ENV SLURM_VERSION=24.05.3
ENV HTTP_PARSER_VERSION=2.8.0
RUN yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
RUN ARCH=$(uname -m) && yum install -y https://rpmfind.net/linux/almalinux/8.10/PowerTools/x86_64/os/Packages/http-parser-devel-2.8.0-9.el8.$ARCH.rpm
RUN ARCH=$(uname -m) && yum install -y https://rpmfind.net/linux/almalinux/8.10/PowerTools/$ARCH/os/Packages/http-parser-devel-2.8.0-9.el8.$ARCH.rpm
RUN groupadd -g 981 munge \
&& useradd -m -c "MUNGE Uid 'N' Gid Emporium" -d /var/lib/munge -u 981 -g munge -s /sbin/nologin munge \
@ -15,25 +15,25 @@ RUN groupadd -g 981 munge \
&& useradd -m -c "Workflow user" -d /home/worker -u 982 -g worker -s /bin/bash worker
RUN yum install -y munge munge-libs rng-tools \
python3 gcc openssl openssl-devel \
openssh-server openssh-clients dbus-devel \
pam-devel numactl numactl-devel hwloc sudo \
lua readline-devel ncurses-devel man2html \
autoconf automake json-c-devel libjwt-devel \
libibmad libibumad rpm-build perl-ExtUtils-MakeMaker.noarch rpm-build make wget
python3 gcc openssl openssl-devel \
openssh-server openssh-clients dbus-devel \
pam-devel numactl numactl-devel hwloc sudo \
lua readline-devel ncurses-devel man2html \
autoconf automake json-c-devel libjwt-devel \
libibmad libibumad rpm-build perl-ExtUtils-MakeMaker.noarch rpm-build make wget
RUN dnf --enablerepo=powertools install -y munge-devel rrdtool-devel lua-devel hwloc-devel mariadb-server mariadb-devel
RUN mkdir -p /usr/local/slurm-tmp \
&& cd /usr/local/slurm-tmp \
&& wget https://download.schedmd.com/slurm/slurm-${SLURM_VERSION}.tar.bz2 \
&& rpmbuild -ta --with slurmrestd --with jwt slurm-${SLURM_VERSION}.tar.bz2
&& cd /usr/local/slurm-tmp \
&& wget https://download.schedmd.com/slurm/slurm-${SLURM_VERSION}.tar.bz2 \
&& rpmbuild -ta --with slurmrestd --with jwt slurm-${SLURM_VERSION}.tar.bz2
RUN ARCH=$(uname -m) \
&& yum -y --nogpgcheck localinstall \
/root/rpmbuild/RPMS/$ARCH/slurm-${SLURM_VERSION}*.$ARCH.rpm \
/root/rpmbuild/RPMS/$ARCH/slurm-perlapi-${SLURM_VERSION}*.$ARCH.rpm \
/root/rpmbuild/RPMS/$ARCH/slurm-slurmctld-${SLURM_VERSION}*.$ARCH.rpm
&& yum -y --nogpgcheck localinstall \
/root/rpmbuild/RPMS/$ARCH/slurm-${SLURM_VERSION}*.$ARCH.rpm \
/root/rpmbuild/RPMS/$ARCH/slurm-perlapi-${SLURM_VERSION}*.$ARCH.rpm \
/root/rpmbuild/RPMS/$ARCH/slurm-slurmctld-${SLURM_VERSION}*.$ARCH.rpm
VOLUME ["/home", "/.secret"]
# 22: SSH