ReleaseEngineering/PuppetAgain/Base Images: Difference between revisions

no edit summary
(→‎CentOS 6.2 on Ganeti KVM: let's not do ganeti anymore)
No edit summary
 
(3 intermediate revisions by 2 users not shown)
Line 3: Line 3:
See [[ReleaseEngineering/PuppetAgain/Puppetization Process|Puppetization Process]] for how a base image becomes a running instance.
See [[ReleaseEngineering/PuppetAgain/Puppetization Process|Puppetization Process]] for how a base image becomes a running instance.


= CentOS 6.2 with Kickstart =
= CentOS 6.x with Kickstart =


The bulk of a kickstart script is available in [http://hg.mozilla.org/build/puppet/file/default/setup/ 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:
The bulk of a kickstart script is available in [http://hg.mozilla.org/build/puppet/file/default/setup/ 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:
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) =
= Ubuntu with Kickstart =
 
Ubuntu is very similar to CentOS.  While it doesn't use Anaconda, it reads a kickstart profile similar to, but not exactly like, that for CentOS.  Beyond those minor differences, it does the same things:
* looks for PUPPET_PASS on the kernel command line, and stores it in /root/deploypass
* installs some repos and minimal packages
* installs [http://hg.mozilla.org/build/puppet/file/default/setup/puppetize.sh 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.9 - Mavericks =
 
Reproducing with VMWare Fusion
 
* Download OS X Mavericks from the app store, but do not install it
* Using disk utility, create a new, 8GB DMG file partitioned as a CD/DVD
* Launch Terminal to show hidden files and relaunch the Finder using this defaults command string:
    defaults write com.apple.Finder AppleShowAllFiles TRUE;\killall Finder;\say Files Revealed
* Go to the /Applications/ folder to locate the “Install OS X 10.9 Developer Preview.app” file
* Right-click and choose “Show Package Contents”, then open “Contents” and open “SharedSupport”
* Double-click to mount “InstallESD.dmg”
* Open the mounted ‘OS X Install ESD’ image, and right-click “BaseSystem.dmg” choosing “Open” to mount the image (BaseSystem.dmg is invisible by default, thus why invisible files must be made visible in the earlier step)
* Go back to Disk Utility, then select “BaseSystem.dmg” from the sidebar and then click the “Restore” tab
* With “Source” set to “BaseSystem.dmg”, set “Destination” to the volume in the empty DMG by dragging the Untitled Volume in the blang DMG, then click “Restore” to begin – confirm that contents of the drive will be erased
* When finished, go to Finder and navigate within the newly created USB drive or dmg image to System > Installation > and delete the file (alias) located here named “Packages” – keep this window open
* Go back to the ‘OS X Install ESD’ mounted drive, and drag & drop the “Packages” folder into the /System/Installation/ directory you just deleted the Packages alias from, let this large folder copy
* Once that Packages folder is finished copying to the drive, unmount everything.
* Set up a new VM to boot from DVD, and point the DVD drive to your new image
* Follow the install steps until it begins installing and reboots.  You may have to shut down, remove the DVD, and re-start.
* Accept the defeault language and keyboard, skip logging with an Apple ID, and agree
* Create a new user named 'Administrator' with the kickstart password
** uncheck "Require password to unlock screen", "Set time zone..", and "Send Diagnostics.."
* Accept the default (Cupertino) timezone
* Don't register the system
* Wait a while, and you'll end up in the Finder
* Open System Preferences -> Sharing
** Enable:
*** Screen Sharing
*** 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 (doesn't seem to be present, at least in Fusion)
** Enable:
*** Wake for network access
* Shut down
* ..and capture
 
Capturing from VMWare Fusion
 
* Shut down the VM
* Duplicate the VM's .vmdk in Finder
* Add a new, existing hard disk to the VM, pointing it at the duplicate
* Boot the VM
* Fire up Disk Utility within the VM
* Click on the second "Mac OS X" hard drive
* File -> New -> Image from "Mac OS X"
 
= 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 91:


* 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 99:
** 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 117:
** 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
= 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


* Open System Preferences -> Startup Disk
= Mac OS X 10.6.8 (10K549) - Snow Leopard =
** select DSR-1074 Network Disk, click Restart
*** Confirm restart


<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
canmove, Confirmed users
1,394

edits