Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Scaling Jamf Pro for High Availability

Jamf
October 24, 2018

Scaling Jamf Pro for High Availability

Presentation from JNUC 2018, the world's largest rally of Apple IT administrators.

Session:
Scaling Jamf Pro for High Availability

Presented by:
Andy McKay, Trams Ltd

View all session slides, recordings and more at https://www.jamf.com/events/jamf-nation-user-conference/2018/.

Jamf

October 24, 2018
Tweet

More Decks by Jamf

Other Decks in Technology

Transcript

  1. View Slide

  2. © JAMF Software, LLC
    Andy McKay
    Head of Technical Services
    Trams Ltd

    View Slide

  3. © JAMF Software, LLC
    Scaling Jamf Pro for High Availability
    Presentation agenda:

    Overview

    Fundamentals

    Jamf Pro Clustering

    MySQL Replication & Failover

    Distribution Point Scaling, Replication & Failover

    View Slide

  4. © JAMF Software, LLC
    Overview
    • ~65,000 devices

    • ~8,000 requests/sec

    • 100% uptime

    • 24/7 worldwide access
    What do I know?

    View Slide

  5. © JAMF Software, LLC
    Overview
    • Zero Touch Deployment

    • Self Service

    • Worldwide users

    • High expectations
    Why does availability matter?

    View Slide

  6. © JAMF Software, LLC
    Fundamentals of Jamf Pro
    The database is important

    Everything else is ‘just’ a
    web app

    View Slide

  7. © JAMF Software, LLC
    Fundamentals of High Availability
    • Design for failure

    • Automate as much as possible

    • Automate some more

    • Monitor
    Automate, Automate, Automate!

    View Slide

  8. © JAMF Software, LLC
    Jamf Pro Clustering
    Enable clustering in the
    web interface.

    Designate a master
    node.

    View Slide

  9. © JAMF Software, LLC

    View Slide

  10. © JAMF Software, LLC
    /WEB-INF/xml/datbase.xml
    dbserver

    View Slide

  11. © JAMF Software, LLC

    View Slide

  12. © JAMF Software, LLC
    Jamf Pro Clustering
    • ‘Round Robin’ DNS

    • Layer 3 load balancer
    Load Balancers
    • Layer 4 load balancer

    • Layer 7 load balancer

    View Slide

  13. © JAMF Software, LLC
    Jamf Pro Clustering
    • X-forwarded-for

    • ‘sticky’ sessions

    • JSESSIONID

    • SSL Termination
    Load Balancers

    View Slide

  14. © JAMF Software, LLC

    HTTPS/443
    HTTP/8080
    HTTP/8080

    View Slide

  15. © JAMF Software, LLC
    Jamf Pro Clustering
    Memcached
    • Recommended but not yet required

    • Should be run separately from Tomcat

    • Cache cluster used by all nodes

    View Slide

  16. © JAMF Software, LLC

    /WEB-INF/classes/dal/cache.properties

    /WEB-INF/classes/dal/memcached.properties

    View Slide

  17. © JAMF Software, LLC
    https://www.jamf.com/jamf-nation/articles/428

    View Slide

  18. © JAMF Software, LLC
    Jamf Pro Clustering
    Upgrades
    • Stop Tomcat on all nodes

    • Upgrade Master node

    • Upgrade Slave nodes

    • … or trash and rebuild, it’s ‘just’ the web app

    View Slide

  19. © JAMF Software, LLC
    Jamf Pro Clustering

    View Slide

  20. © JAMF Software, LLC
    MySQL Replication & Failover
    MySQL Clustering is not
    supported

    Master -> Slave
    Replication

    View Slide

  21. © JAMF Software, LLC
    https://github.com/github/orchestrator
    https://dev.mysql.com/doc/refman/5.7/en/replication.html

    View Slide

  22. © JAMF Software, LLC
    Max image dimensions
    Distribution Point Replication &
    Failover
    Jamf Admin (Mac)

    rsync (Mac, Linux)

    Robocopy (Windows)

    View Slide

  23. © JAMF Software, LLC
    Distribution Point Scaling
    File share distribution
    points - randomised
    load sharing

    Cloud distribution
    points - use CDN!

    View Slide

  24. © JAMF Software, LLC
    Questions?

    View Slide

  25. © JAMF Software, LL
    THANK YOU!

    View Slide