ReleaseEngineering/PuppetAgain/Base Images: Difference between revisions

From MozillaWiki
Jump to navigation Jump to search
(→‎CentOS 6.2 on Ganeti KVM: let's not do ganeti anymore)
mNo edit summary
Line 13: Line 13:
The same script supports both i386 and x86_64 ISAs; the determining factor is the kernel used to run the installer.
The same script supports both i386 and x86_64 ISAs; the determining factor is the kernel used to run the installer.


= Mac OS X 10.8 (Mountain Lion) =
= Mac OS X 10.8 (12A269) - Mountain Lion =


The current base image is built from installing 10.7 Lion via the recovery boot option (cmd + R) and then upgrading to 10.8 Mountain Lion through the App Store.
The current base image is built from installing 10.7 Lion via the recovery boot option (cmd + R) and then upgrading to 10.8 Mountain Lion through the App Store.
Line 32: Line 32:


* walk through the setup screen and create a default user
* walk through the setup screen and create a default user
** default user should be 'administrator' using the current releng root/admin password
** default user should be 'administrator' using the current releng root/admin kickstart password
* you can skip most of the screens such as apple account registration
* skip all of the apple account registration screens
* At the login screen, use the 'administrator' credentials that were entered earlier
* At the login screen, use the 'administrator' credentials that were entered earlier
* Launch the App store using your apple developer credentials
* Launch the App store using your apple developer credentials
Line 40: Line 40:
** Make sure to sign out of the app store once the download is complete
** Make sure to sign out of the app store once the download is complete
* Once the download is complete, launch the OS X Mountain Lion installer and proceed through the setup process
* Once the download is complete, launch the OS X Mountain Lion installer and proceed through the setup process
* Take another nap
* Once installed, the system will reboot
* Once installed, the system will reboot


Line 59: Line 58:
** Enable:
** Enable:
*** Wake for network access
*** Wake for network access
*** Start up automatically after power failure
* Capture the image for Deploy Studio
* Integrate into the workflows to image 10.8 systems


The system is ready to be captured as an image


* Open System Preferences -> Startup Disk
<b>This will reboot the system into the netboot image with the Deploy Studio runtime where Deploy Studio workflow will handle installing puppetize.sh and org.mozilla.puppetize.plist to be launched on first boot</b>
** select DSR-1074 Network Disk, click Restart
 
*** Confirm restart
= Mac OS X Server 10.7.2 (11C74) - Lion =
* Install OS X 10.7.2 on an r4 or r5 mini
* walk through the setup screen and create a default user
** default user should be 'administrator' using the current releng root/admin kickstart password
* skip all of the apple account registration screens
* At the login screen, use the 'administrator' credentials that were entered earlier
* Open System Preferences -> Sharing
** Enable Screen Sharing and Remote Login
* Open System Preferences -> Enery Saver
** Move Computer sleep slider to Never
** Move Display sleep slider to Never
* Capture the image for Deploy Studio
* Integrate into the workflows to image 10.7.2 systems
 
= Mac OS X 10.6.8 (10K549) - Snow Leopard =


<b>This will reboot the system into the netboot image with the Deploy Studio runtime where Deploy Studio workflow will handle installing puppetize.sh and org.mozilla.puppetize.plist to be launched on first boot</b>
* Install OS X 10.6.4 on an r4 mini from disk.
* walk through the setup screen and create a default user
** default user should be 'administrator' using the current releng root/admin kickstart password
* skip all of the apple account registration screens
* At the login screen, use the 'administrator' credentials that were entered earlier
* Open System Preferences -> Sharing
** Enable Screen Sharing and Remote Login
* Open System Preferences -> Enery Saver
** Move Computer sleep slider to Never
** Move Display sleep slider to Never
* Apply the 10.6.8 update.
* Capture the image for Deploy Studio
* Integrate into the workflows to image 10.8.6 systems

Revision as of 19:44, 9 September 2013

Base images are OS/hardware-specific. In some cases, we can leverage existing installers; in others, we must use snapshots of installed systems. In either case, the idea is to get a minimal system set up to run puppetize.sh, which will take care of getting a certificate and running puppet in a loop until it succeeds.

See Puppetization Process for how a base image becomes a running instance.

CentOS 6.2 with Kickstart

The bulk of a kickstart script is available in setup. Run 'make' to create the script. The top section will need a few site-specific modifications. Most of the action is in the %post section, which:

  • looks for PUPPET_PASS on the kernel command line, and stores it in /root/deploypass
  • installs minimal packages
    • Using a possibly site-specific yum-repo location (under http://repos/repos/)
  • installs puppetize.sh and sets it to run on boot.

The same script supports both i386 and x86_64 ISAs; the determining factor is the kernel used to run the installer.

Mac OS X 10.8 (12A269) - Mountain Lion

The current base image is built from installing 10.7 Lion via the recovery boot option (cmd + R) and then upgrading to 10.8 Mountain Lion through the App Store. You will need to log in to the apple developer site and redeem OS X Mountain Lion under your credentials

  • Using a R5 Mac Mini, boot into OS X Lion Recovery mode
Hold down command + R during the boot process
  • Once in recovery mode; launch the disk utility and remove any software raid configuration
  • Erase all disks. This partitions and formats all disks
  • Close disk utility and launch lion osx recovery from the menu
  • Go get coffee and take a nap
  • Once the recovery is complete, the system will reboot

At this point the system will have a fresh install of 10.7 OS X Lion

  • walk through the setup screen and create a default user
    • default user should be 'administrator' using the current releng root/admin kickstart password
  • skip all of the apple account registration screens
  • At the login screen, use the 'administrator' credentials that were entered earlier
  • Launch the App store using your apple developer credentials
  • Search 'os x mountain lion'
  • Click download under OS X Mountain Lion
    • Make sure to sign out of the app store once the download is complete
  • Once the download is complete, launch the OS X Mountain Lion installer and proceed through the setup process
  • Once installed, the system will reboot

The system is now upgraded and running OS X 10.8 Mountain Lion

  • At the login screen, use the 'administrator' credentials that were entered earlier
  • Open System Preferences -> Sharing
    • Disable:
      • Remote Management
    • Enable:
      • Screen Sharing and Remote Login
  • Open System Preferences -> Enery Saver
    • Move Computer sleep slider to Never
    • Move Disply sleep slider to Never
    • Disable:
      • put hard disks to sleep when possible
      • Allow power button to put computer to sleep
    • Enable:
      • Wake for network access
  • Capture the image for Deploy Studio
  • Integrate into the workflows to image 10.8 systems


This will reboot the system into the netboot image with the Deploy Studio runtime where Deploy Studio workflow will handle installing puppetize.sh and org.mozilla.puppetize.plist to be launched on first boot

Mac OS X Server 10.7.2 (11C74) - Lion

  • Install OS X 10.7.2 on an r4 or r5 mini
  • walk through the setup screen and create a default user
    • default user should be 'administrator' using the current releng root/admin kickstart password
  • skip all of the apple account registration screens
  • At the login screen, use the 'administrator' credentials that were entered earlier
  • Open System Preferences -> Sharing
    • Enable Screen Sharing and Remote Login
  • Open System Preferences -> Enery Saver
    • Move Computer sleep slider to Never
    • Move Display sleep slider to Never
  • Capture the image for Deploy Studio
  • Integrate into the workflows to image 10.7.2 systems

Mac OS X 10.6.8 (10K549) - Snow Leopard

  • Install OS X 10.6.4 on an r4 mini from disk.
  • walk through the setup screen and create a default user
    • default user should be 'administrator' using the current releng root/admin kickstart password
  • skip all of the apple account registration screens
  • At the login screen, use the 'administrator' credentials that were entered earlier
  • Open System Preferences -> Sharing
    • Enable Screen Sharing and Remote Login
  • Open System Preferences -> Enery Saver
    • Move Computer sleep slider to Never
    • Move Display sleep slider to Never
  • Apply the 10.6.8 update.
  • Capture the image for Deploy Studio
  • Integrate into the workflows to image 10.8.6 systems