Wikimedia Release Engineering Team/Train development environment/2020-06-04

From mediawiki.org

2020-06-04[edit]

As Always[edit]

TODOS[edit]

  • Yes Done TODO: Lars to create image for other to try
  • Yes Done TODO: Jeena to demo packer
  • Yes Done TODO: thcipriani to set next meeting
  • Yes Done TODO: Mukunda investigate cloud-init
  • TODO: Mukunda + Lars to sync up on building a deployment server (puppet, etc.)
  • TODO: Mukunda cloudinit to run puppet on vmdb2 image
  • TODO: Mukunda + Lars
  • TODO: Brennen to test Windows if possible

Notes[edit]

Image from lars[edit]

  • https://files.liw.fi/temp/simple.qcow2.xz
  • thcipriani + jeena able to run on Debian sid + MacOS
  • Brennen + Mukunda to test
  • Brennen to (attempt to) test on a Windows install
  • Should we convert to a VDI image?
    • Collective shrug
  • Nested VM
    • Deploy server + Git server
    • Deploy server could run scap prep successfully
    • Deployment server setup questions

Packer Demo[edit]

  • Used packer to create a virtualbox Debian image
  • Use a boot command and preseed file to run installer
  • Also tried creating image with QEMU, which didn't work, but is basically the same process
  • Command: packer build demo.json
    • builds both QEMU and VBox image in parallel
  • J: Lars uncomfortable with the typing command in terminal
  • M: preseed is the default, right? It's fraught isn't it?
  • Lars: preseed can only answer questions asked by packages; i.e., postfix package only used to work on HP servers
  • J: packer also supports puppet provisioner/ansible/cloudinit provisioner
  • L: we only need 1 image per debian release since we can use puppet
  • J: I think packer is useful for making a bunch of identical VMs for a bunch of different platforms. I'm not sure how useful this is for 1 VM. It should be deterministic at least
  • T: Any support for debootstrap in packer?
    • Unknown/Seemingly no.
  • Discussion of packer vs. vmdb2
    • packer works cross-platform
    • cloud-init is available on basically all Linuxen
    • VMDB2 closer to the metal; packer has features we don't need
    • Decision: Likely proceed with VMDB2, can revisit if needed, using cloud-init / Puppet for most configuration should make the image building step easy enough to swap out.

cloud-init[edit]

https://cloudinit.readthedocs.io/en/latest/topics/modules.html#puppet

  • M: Pretty convinced this is the way to go for configuring VMs
  • B: Digital Ocean provided a text area to provide cloudinit commands