SLURM with "partial" head node

You're trying to consume the headnode as a compute node. This is perfectly normal on small clusters and even on workstations that have SLURM as a queue system to consume it as an easier way to enqueue jobs or to share the compute power among a group of users that have access to this workstation.

To do this just enable slurmd on the same machine that runs slurmctld. Remember to add the respective node and partition entry on /etc/slurm/slurm.conf with the compute specifications. As example, you should have something like this:

ClusterName=Cloyster
ControlMachine=charizard.cluster.example.com
SlurmUser=slurm
SlurmctldPort=6817
SlurmdPort=6818
AuthType=auth/munge
StateSaveLocation=/var/spool/slurm/ctld
SlurmdSpoolDir=/var/spool/slurm/d
SwitchType=switch/none
MpiDefault=none
SlurmctldPidFile=/var/run/slurmctld.pid
SlurmdPidFile=/var/run/slurmd.pid
ProctrackType=proctrack/pgid
SlurmctldTimeout=300
SlurmdTimeout=300
InactiveLimit=0
MinJobAge=300
KillWait=30
Waittime=0
SchedulerType=sched/backfill
SelectType=select/cons_tres
SelectTypeParameters=CR_Core
SlurmctldDebug=info
SlurmctldLogFile=/var/log/slurmctld.log
SlurmdDebug=info
SlurmdLogFile=/var/log/slurmd.log
JobCompType=jobcomp/none
TaskPlugin=task/affinity
PropagateResourceLimitsExcept=MEMLOCK
AccountingStorageType=accounting_storage/filetxt
Epilog=/etc/slurm/slurm.epilog.clean
SlurmctldParameters=enable_configless

ReturnToService=2
NodeName=charizard Sockets=2 CoresPerSocket=64 ThreadsPerCore=2 State=UNKNOWN
PartitionName=execution Nodes=charizard Default=YES MaxTime=720:00:00 State=UP Oversubscribe=EXCLUSIVE

Observe that NodeName have the hostname of the control machine.