We updated our JSS from 8.73 – 9.22 back in January, we thought all was well until we needed to deploy some large packages.
This lead to our network guys not being to happy as Mac clients were downloading a 200MB installer across our MPLS irregardless of the distribution points assigned in our network segments.
Below are more details on the issue, and the fix
What was it?
After a few calls with JAMF support we discovered that the issue was due to the v8-v9 upgrade not updating a MySQL table, below is the how to check if your affected & what to do to fix.
Our JSS is hosting on a 10.9 server, so we need enter the below path to access MySQL. Please change your path accordingly & enter your MySQL root password when prompted.
/usr/local/mysql/bin/mysql -u root
Now select the jamfsoftware DB:
mysql> USE jamfsoftware;
Once selected, run the below command to view the distribution points assigned to your clients:
mysql> select computer_id,default_distribution_point_id from computers where default_distribution_point_id != '';
In JSS v8, the distribution points assigned was kept in the DB in this table. As such the output of the above will look like that below:
The numbers in the default_distribution_point_id field are the distribution points themselves. To find out what number correlates to which distribution point, login to your v9 JSS go to Computer Management > File Share Distribution Points & select a distribution point. In the URL of that page will contain id=xx where xx is the default_distribution_point_id value for that distribution point.
In v9 the JSS uses -1 for anything that is unset, this includes distribution points as they should be dynamically assigned based on IP. So with all being well, on v9 the output to see which distribution points are assigned to your clients should look like the below:
If your clients are using the wrong distribution points & you have updated from v8-v9, then first MAKE SURE YOU HAVE A GOOD & RECENT BACKUP.
Once that’s done, you can run the below to change the tables values to -1 for all default_distribution_point_id so the clients use the correct distribution points based on their network segment.
mysql> update computers set default_distribution_point_id=-1;
After running the above, our clients started using the correct distribution points immediately.
9.31 was released around the time we resolved this, but the defect was still outstanding in that release, I’ll update this post once a release fixes this defect.