IntroductionPC-BSD Project started as a graphical installerand graphical utilities to make it easy to install anduse a FreeBSD desktopProject did not simply port existing Linux utils dueto differences between Linux and BSD and toprovide one consistent lookEach graphical utility is a QT based front-endbased on a Bourne (sh) back-end, meaning thatthe same functionality can be achieved on aminimalist desktop or even a command-line onlysystem
IntroductionThese utilities proved to also be useful for serverinstallation and administrationThis presentation introduces the following utilitieswhich ease the deployment of servers:TrueOS: a FreeBSD command line server plusthe CLI versions of PC-BSD utils and some extratools designed to ease the learning curve forLinux sysadmins (e.g. bash, sudo, nano, rsync,screen, smartmontools)
Introductionpc-sysinstall: fully scriptable, CLI version of theinstaller, specifically designed for customizedinstallations and automated deploymentsthin client: script to easily create an installationserver for automated installs over PXEWarden: utility for deploying and managingFreeBSD and Linux jails (light-weight, virtualizedoperating systems)
TrueOS FeaturesEasy to install, CLI-only FreeBSD server usinggraphical installer or an automated scriptSupports ZFS configuration during install: mirror,RAIDZ, RAIDZ2, RAIDZ3, datasets, andproperties (e.g. compression, atime, exec,canmount)Installation sets the login user account, optionallyenables SSH, and sets root password (SSH rootlogins are denied by default)
TrueOS FeaturesIf install with ZFS, beadm(1) can be used to takea snapshot of the boot environment beforeperforming an upgradeIf the upgrade fails, simply activate that snapshotto boot into the previous boot environment
Upcoming Features9.2 will include utilities to schedule automatic ZFSscrubs, create and manage ZFS snapshots, andcreate beadm snapshots--these can be performednow using zfs(8) and beadm(1)Once the necessary boot changes have beenmade to FreeBSD, a utility will be created to makeit easy to select from beadm snapshots at systemboot
Automated DeploymentThe backend to the graphical installer is a scriptnamed pc-sysinstall. Its syntax is similar tosysinstall(8), making it easy to convert existingcustom deploymentsAdds directives to layout disks with ZFSExamples can be found in/usr/share/examples/pc-sysinstall/The graphical installer saves its config to/root/pc-sysinstall.cfg, making it easy to customizea complex installation
Automated DeploymentTo automatically rollout a custom configurationover PXE, use the thinclient script to create aninstallation serverThis script installs and configures a DHCP server,TFTP server, and NFS serverA sample installation script can be found in/usr/home/thinclient/installscripts/pc-sysinstall.exampleInstall clients automatically boot into a menu:
Warden FeaturesSince 2000, FreeBSD has provided light-weightOS virtualization using jail(8)Ideally suited for deploying servers who hostnetwork services as services are isolated fromboth the host system and any other jailsWarden makes it easy to deploy and managejails, start/stop services within jails, andinstall/upgrade software within jails
Warden FeaturesWarden supports 3 types of jails:1.1. Ports Jail: used to safely install and useports/packages (software) without affectingunderlying OS and its software2.3.2. Traditional Jail: used to securely deploynetwork services4.5.3. Linux Jail: used to securely deploy Linuxservers (currently Gentoo and Debian Squeeze)
Warden FeaturesIf the hosts filesystem is ZFS, Warden can beused to schedule and manage ZFS snapshots,even for Linux jailsSnapshots can be deployed to another systemJails can be exported (all of its software,configuration, and files) and imported to anotherjail or system
Upcoming WardenFeaturesAbility to create named jails (not just IP)IP addresses and aliases can be changed on theflyTemplates allow you to select any version ofFreeBSD (from 4.1 to HEAD) to deployVnet support provides each jail its own networkingstack, loopback address, IPsec, etc.
Additional ResourcesDocumentation: http://wiki.pcbsd.orgIRC: #pcbsd on FreenodeAutomating the deployment of FreeBSD &PC-BSD systems:http://www.bsdcan.org/2013/schedule/attachments/248_bsdcan2013.pdf
Additional ResourcesThe Warden - FreeBSD and Linux JailManagement:http://www.youtube.com/watch?v=2WEX_W7nH3YImprovements to Jail Management via theWarden:http://bsdmag.org/magazine/1838-jails-firewall-with-pf(page 16-17)
Questions?Contact:firstname.lastname@example.orgURL to Slides:http://slideshare.net/dlavigne/tlf2013
A particular slide catching your eye?
Clipping is a handy way to collect important slides you want to go back to later.