Indeed, we can bootstrap the cluster with qdevice all together by using ssh-agent without create any local ssh key on any node. Example as below
adm@tw-1:~> sudo -E crm cluster init -y -N adm@tw-2 --qnetd-hostname adm@tw-4
However, it doesn't work for the "qdevice" stage along. Here is the reproducer:
adm@tw-1:~> sudo -E crm cluster init -y -N adm@tw-2
adm@tw-1:~> sudo -E crm cluster init qdevice --qnetd-hostname adm@tw-4
INFO: Loading "default" profile from /etc/crm/profiles.yml
INFO: Loading "knet-default" profile from /etc/crm/profiles.yml
INFO: Configure Qdevice/Qnetd:
ERROR: cluster.init: No public key file found for adm@tw-2
The workaround is to create the local ssh key
adm@tw-2:~> ssh-keygen -t rsa -N "" -f ~/.ssh/id_rsa