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

Chef and the Microsoft ecosystem - Engineering ...

Chef and the Microsoft ecosystem - Engineering Update

In this presentation we highlight some of the latest integrations and updates from the world of Chef on the Microsoft platform.

We look specifically at our integrations with Microsoft Azure, Visual Studio Team Services (VSTS) and provide insight into the changes we expect in Chef 14, due in April 2018.

Stuart Preston

February 05, 2018
Tweet

More Decks by Stuart Preston

Other Decks in Technology

Transcript

  1. About Stuart Preston - Microsoft Most Valuable Professional (MVP) -

    Open Source Contributor/Maintainer - Test Kitchen Azure - Chef Provisioning - Chef Extension for Visual Studio Code - Author “Using Chef with Microsoft Azure” - Based in North Yorkshire, UK - @stuartpreston Joined Chef Community Engineering Team July 2017
  2. Agenda • What we delivered in 2017 • Walkthrough a

    few Microsoft integrations • Ask questions as we go!
  3. Awesome Community Stats https://community-slack.chef.io • #azure 77x increase to 77

    members (June 2017-January 2018) • #windows membership grew by >50% to 374 members (June 2017-January 2018) • Microsoft usage of Chef is growing. • Often visited by members of the Engineering team Thank you for all your contributions!
  4. Windows Support in Chef Client • Windows Server 2008, 2008

    R2 and 2012 went out of mainstream support on January 8, 2018 Accordingly: • Chef no longer supports the above platforms as of January 8, 2018 • Chef is only supported on 64 bit Windows as of January 8, 2018 Think about this: • Windows Server 2012 R2 goes out of mainstream support on October 10, 2018 Summary: You probably need to get on the release train!
  5. Chef support for common actions relies on native tools windows_task

    'chef-client' do command 'chef-client' run_level :highest frequency :weekly start_day '12/28/2018' end schtasks.exe /create /TR “chef-client” /RL HIGHEST /SC WEEKLY /SD ’12/28/2018’ $trigger = New-ScheduledTaskAction –Weekly –From “12/28/2012” New-ScheduledTask –TaskName “chef-client” –command “chef-client” –Trigger $trigger SINCE POWERSHELL 2.0!
  6. PowerShell minimum versions https://4sysops.com/archives/powershell-versions-and-their-windows-version/ PowerShell Version Release Date Default Windows

    Versions Available Windows Versions PowerShell 1.0 November 2006 Windows Server 2008 (*) Windows XP SP2 Windows XP SP3 Windows Server 2003 SP1 Windows Server 2003 SP2 Windows Server 2003 R2 Windows Vista Windows Vista SP2 PowerShell 2.0 October 2009 Windows 7 Windows Server 2008 R2 (**) Windows XP SP3 Windows Server 2003 SP2 Windows Vista SP1 Windows Vista SP2 Windows Server 2008 SP1 Windows Server 2008 SP2 PowerShell 3.0 September 2012 Windows 8 Windows Server 2012 Windows 7 SP1 Windows Server 2008 SP2 Windows Server 2008 R2 SP1 PowerShell 4.0 October 2013 Windows 8.1 Windows Server 2012 R2 Windows 7 SP1 Windows Server 2008 R2 SP1 Windows Server 2012 PowerShell 5.0 April 2014 (***) Windows 10 Windows 8.1 Windows Server 2012 R2
  7. Windows support continuum Native PowerShell Future 2003 2008 2012- 2016-

    WMF 5 (PowerShell 5) Project Honolulu PowerShell Core “New LCM” / DSC WMF 4 (PowerShell 4) dsc_script resource dsc_resource resource Native binaries (e.g. schtasks.exe) PowerShell 3.0 PAIN
  8. Direction/Proposal • Now that 2008 is no longer supported and

    PowerShell 5 offers compatibility with PowerShell 4, and Windows Management Framework (WMF) 5.1 is required to support our current implementation of DSC… • Proposal - When Windows 2012 is removed from our support matrix, move to WMF 5.1 being our baseline for as many resources as possible • “Some resources in the core Chef Client will not operate without WMF 5.1” • Chef Client will install WMF 5.1 on any system that allows us to • Move the current PowerShell resources to core Chef • Support Chocolatey and PSGet out of the box • Why not PowerShell 4? PowerShell 5 offers compatibility
  9. Chef Automate on Azure • Single VM containing a Chef

    Server, and Chef Automate (our commercial product) • Use all features for 30 days • OSS Hack: After 30 days, you can continue to use the VM as a Chef Server with all of our open source features enabled.
  10. Test Kitchen Azure • Awesome contributions from the community: •

    Support for sovereign clouds and AzureUSGovernment cloud • Custom OS disk sizes (as long as bigger than the base image!) • Support addition custom-data for Cloud-Init on Linux • Support for custom images • Custom additional disk layout and optional automatic formatting on Windows
  11. Chef integration for Visual Studio Team Services • Visual Studio

    Team Services A hosted Application Lifecycle Management system including Source Control (TFVC or Git) Hosted Build Servers Build/Release Management Work Item Tracking/Backlog Management • “Free” to teams doing Microsoft development or for teams of up to 5 users. • Enact a complete cookbook CI/CD workflow • Wrote our initial VSTS integration for Build conference in 2017 • You don’t have to use all the parts of VSTS… so… • Let’s use VSTS with a cookbook in GitHub, a Linux build agent and an Ubuntu target machine