About: This talk will cover two projects we developed at Aptira. StackBuffet is a CI-as-a-service that builds and tests customised packages. Users provide a code base, which can be a fork of upstream source with required patches, to StackBuffet and StackBuffet does all the building and testing work for the users and generates ready-to-use packages. These packages will then be placed in a package repository, being YUM or APT, which can be used directly by the users. GUTS is a workflow migration engine designed to automatically move workflows and virtual machines between virtualisation/cloud platforms. It can be used to migrate VMs from a traditional virtualisation platform to OpenStack or migrate VMs between two OpenStack clouds.
Speaker Bio: Dr Shunde Zhang – Senior Software Developer, Aptira
Shunde is a senior software developer in Aptira with over 15 years experience in software development, automation and system administration. He has worked with OpenStack since the Diablo cycle and has been involved in projects from OpenStack infrastructure to distributed systems running on top of OpenStack.
OpenStack Australia Day - Sydney 2016
○ Local patches
○ Distros are rigid
○ Local CI too expensive/hard
● Build RPM/DEB packages from your source code
● Test packages
● Built-in repository (YUM or APT)
● Multi-OS support (CentOS and Ubuntu)
○ system lib (/usr/lib)
○ docker image (future)
● Source code
○ Git URL
○ Gitref (tag, branch, commit ID)
● GPG sign
● Release number
○ enable/disable auto-increase
● Build log and history builds
○ Quota applied
○ Default 20 history builds
Build your packages
● Automatic test
○ Launch a VM
○ Install OpenStack using your packages
○ Rally Certification Test (Integration test)
○ Unit test in future version
● Reporting and troubleshooting
○ Install log and test report available on StackBuffet
Test your packages
● Built-in Repository (APT, YUM)
● Delete packages
● Help messages
○ How to configure this repository
Use your packages
● Create/delete repository
○ Quota, default 1 repository
● Your subscription
○ Start date
○ End date
● Contact Info
“A workload migration engine designed to
automatically move workloads and virtual machines
between two virtualization/cloud platforms”
● Migrate VMs off your traditional virtualization platform
● Migrate VMs between two OpenStack clouds
○ in two geographically distributed datacenters
○ during an upgrade
● Migrate VMs between two virtualization platforms/clouds
○ if they are both supported by GUTS
● guts-api service
○ Accepts and responds to end user migration API calls.
○ Enforces some policies and initiates most orchestration activities, such as
starting migration processes.
● guts-scheduler service
○ Takes a migration request from the queue and determines on which
migration service host it runs.
○ Selects a migration node based on conversion space available on
● guts-migration service
○ A workers daemon that creates and manages migration processes of
● Pluggable and distributed architecture.
● Provides virtual machine, storage and network migrations.
● Converts disk image formats based on hypervisor types.
● Installs / uninstalls cloud specific tools like VMWare-Tools
and virtio tools.
● Optimizes migration process by scheduling migration
operation to appropriate migration node.
● Currently Guts supports VMWare, OpenStack as source
hypervisors and OpenStack as destination hypervisor.
● Horizon plugin extension which provides UI for guts
● Quickly bootstrapped with devstack
● More Drivers
○ Google Cloud Platform
● More resource types