Difference between revisions of "Raspberry Pi as third node"

From Proxmox VE
Jump to navigation Jump to search
m
Line 6: Line 6:
 
'''NOTE''': Ideally you install the Stretch version of Raspbian now, then you won't need to enable any backport repository. Further please take a look at corosync qdevice: https://www.mankier.com/8/corosync-qdevice it is much less resource hungry and less error prone, as with it the Raspberry Pi acts as quorum tie only, without running (parts of) Proxmox VE cluster stack.
 
'''NOTE''': Ideally you install the Stretch version of Raspbian now, then you won't need to enable any backport repository. Further please take a look at corosync qdevice: https://www.mankier.com/8/corosync-qdevice it is much less resource hungry and less error prone, as with it the Raspberry Pi acts as quorum tie only, without running (parts of) Proxmox VE cluster stack.
  
This short wiki will document how to prepare and configure a Rasberry Pi to use as third node (widness) in a Proxmox cluster. This howto has been tested on a Rasberry Pi v3 but should also work on any other Rasberry Pi version where Raspbian is available. Raspbian version is Jessie.
+
This short wiki will document how to prepare and configure a Rasberry Pi to use as third node (witness) in a Proxmox cluster. This how-to has been tested on a Rasberry Pi v3 but should also work on any other Rasberry Pi version where Raspbian is available. Raspbian version is Jessie.
  
 
#Login as root on your Pi
 
#Login as root on your Pi
Line 25: Line 25:
 
#ssh <ip of pve node 2> systemctl restart corosync
 
#ssh <ip of pve node 2> systemctl restart corosync
 
#systemctl start corosync
 
#systemctl start corosync
#run corosync-quorumtool to check all three nodes are registret as online and that there is quorum:  
+
#run corosync-quorumtool to check all three nodes are registered as online and that there is quorum:  
 
#:<pre>
 
#:<pre>
 
#::corosync-quorumtool | grep Quorate:
 
#::corosync-quorumtool | grep Quorate:
Line 33: Line 33:
 
*pve-manager is missing so don't add to /etc/pve/corosync.conf.
 
*pve-manager is missing so don't add to /etc/pve/corosync.conf.
 
*If new node is added pve-manager will overwrite /etc/corosync/corosync.conf
 
*If new node is added pve-manager will overwrite /etc/corosync/corosync.conf
*I give no guaranty so everything above is at your own risk.
+
*Use this at your own risk.

Revision as of 12:12, 22 January 2019

This is only suited for testing or homelab use. Never use it in a production environment!


NOTE: Ideally you install the Stretch version of Raspbian now, then you won't need to enable any backport repository. Further please take a look at corosync qdevice: https://www.mankier.com/8/corosync-qdevice it is much less resource hungry and less error prone, as with it the Raspberry Pi acts as quorum tie only, without running (parts of) Proxmox VE cluster stack.

This short wiki will document how to prepare and configure a Rasberry Pi to use as third node (witness) in a Proxmox cluster. This how-to has been tested on a Rasberry Pi v3 but should also work on any other Rasberry Pi version where Raspbian is available. Raspbian version is Jessie.

  1. Login as root on your Pi
  2. Install Debian Jessie (Standard system utilities and SSH server)
  3. echo "deb http://ftp.debian.org/debian jessie-backports main contrib" > /etc/apt/sources.list.d/jessie-backports.list
  4. gpg --keyserver pgpkeys.mit.edu --recv-key 7638D0442B90D010 && gpg -a --export 7638D0442B90D010 | apt-key add -
  5. gpg --keyserver pgpkeys.mit.edu --recv-key 8B48AD6246925553 && gpg -a --export 8B48AD6246925553 | apt-key add -
  6. apt-get update
  7. apt-get -t jessie-backports install corosync
  8. sed -i 's/without-password/yes/' /etc/ssh/sshd_config && systemctl restart ssh
  9. scp <ip of pve node>:/etc/corosync/* /etc/corosync
  10. add new node under nodelist in /etc/corosync.conf (copy one of the current and adjust)
    for NODE in <ip of pve node 1> <ip of pve node 2>; do
    scp /etc/corosync/corosync.conf $NODE:/etc/corosync
    done
  11. ssh <ip of pve node 1> systemctl restart corosync
  12. ssh <ip of pve node 2> systemctl restart corosync
  13. systemctl start corosync
  14. run corosync-quorumtool to check all three nodes are registered as online and that there is quorum:
    corosync-quorumtool | grep Quorate:
    Quorate: Yes

WARNING

  • pve-manager is missing so don't add to /etc/pve/corosync.conf.
  • If new node is added pve-manager will overwrite /etc/corosync/corosync.conf
  • Use this at your own risk.