Difference between revisions of "Multicasting"

From FOG Project
Jump to: navigation, search
m (STP/Portfast/RSTP/MSTPt)
m (STP/Portfast/RSTP/MSTPt)
Line 53: Line 53:
  
 
===STP/Portfast/RSTP/MSTPt===
 
===STP/Portfast/RSTP/MSTPt===
{{:IPXE#STP/Portfast/RSTP/FMSTP_To_Enable_or_Disable.3F}}
+
{{:}}
 
[[STP/Portfast/RSTP/FMSTP]]
 
[[STP/Portfast/RSTP/FMSTP]]
  

Revision as of 19:44, 15 January 2015

  • Multicasting in FOG uses UDPcast to send a single image to multiple computers using only slightly more bandwidth than sending the image to a single computer or unicast. Multicasting in FOG may require special switch configuration. A multicast will not begin until all members are ready to begin by default. This can be changed by editing UDPSENDER_MAXWAIT in /opt/fog/service/etc/config.php which is in seconds.

Queuing

  • FOG uses a simple queuing system to prevent its storage servers from being overworked. If you have a single FOG storage node in FOG with a queue size of 10, then this means that if you unicast an image to 30 computers, only the first 10 computers will be imaged. The other 20 computers will be waiting "in queue" for an open slot. What will be seen on the client side is the following:
  • Queue.jpg
  • This queue system allows for the IT staff to start tasks for hundreds or thousands of computers and let FOG manage the clients so the servers don't get overwhelmed with client requests.

Test Multicasting

  1. Environment:
    • FOG server
    • Two or more identical computers
    • Ethernet hub or FastEthernet switch in same VLAN.
  • View Multicast status on server use tty2 or /opt/fog/log/multicast.log
  • Overall image time will be slower than unicast on same hardware and same image because unicast is gunzip(unzip) at client level, multicast in gunzip at server level.
  • If errors persist in test environment post log in forum.

Device Configurations

Troubleshooting

  1. On your server open up terminal and kill any running udpcasts by typing
#* hi
sudo killall udp-sender
  1. now run this command
udp-sender --file /opt/fog/log/multicast.log --ttl 1
  • you should see broadcasting control to: and it should be the highest address of the subnet your fogserver is on
  • the line before that should say your fogserver ipaddress and the interface
  • Now boot up 1 client go to your pxe menu and select debug mode. Do this on the same subnet if possible. Type in:
udp-receiver --mcast-rdv-address yourfogserver
  • On your server you should see that 1 client connected and then you can press any key to start the transfer
  • On your client you should see the contents of your multicast log file scrolling by the screen. You can press ctrl-C to stop it.


Hopefully that worked. Now we need to test 2 clients.

  • Run the command on your server again but this time change the --ttl 1 to --ttl 32
  • You will see that this time your broadcast control is 224.0.0.1 this is the multicast address
  • Boot both clients in debug mode and run the client command on each. Once you see that both clients have connected to the server press any key and see if the log file transfers again to both machines this time. If it does not then chances are something is not setup properly in your router possibly routing tables or multicast settings.


If it does work then good lets try one more step

  • On your server run this:
gunzip -c "/images/anyimagename" | /usr/local/sbin/udp-sender --min-receivers 2 --portbase 9000 --interface yourInterface --half-duplex --ttl 32
  • Now boot up 2 clients in debug mode and enter
udp-receiver --portbase 9000 --mcast-rdv-address fogserverIP | partimage -f3 -b restore /dev/sda stdin

you might need to change /dev/sda to your correct harddrive if it's different use fdisk -l to find out

  • If the clients start imaging then it seems that all of your multicast settings are correct and the problem may lie within fog configuration if it doesn't work then you need to check your router settings

STP/Portfast/RSTP/MSTPt

{{:}} STP/Portfast/RSTP/FMSTP

Please Wait

  • Hang at the "Please Wait" screen:
  • Verify the host name (without dns suffix) is listed in the /etc/hosts file to the actual IP address (not 127.0.0.1)

example: "192.168.0.77 myfogserver"

  • Check the MySQL details in "/opt/fog/service/etc/config.php" are correct.
  • If not, correct them (they should be the same as in /var/www/fog/commons/config.php) and restart the service
$sudo /etc/init.d/FOGMulticastManager restart

Kill Multitasking

  • If you wish to force kill all the multicasting sessions please do BOTH the following


  • Remove any sessions running in the sql database
mysql -u root <-p password> fog
truncate table multicastSessions;
truncate table multicastSessionsAssoc;
exit;
  • Stop any udp senders that may be running on the server
sudo service FOGMulticastManager stop
sudo killall udp-sender
sudo killall udp-sender
sudo killall udp-sender
sudo service FOGMulticastManager start