distributed ci and testing for cloudstackin a hybrid community · the cloud specialists distributed...

22
The Cloud Specialists Distributed CI and testing for cloudstack in a hybrid community Daan Hoogland Not senior. Not manager. Other job titles apply. [email protected] +DaanHoogland https://www.slideshare.net/ShapeBlue/cccna17-distributed-ci- and-testing-for-cloudstack-in-a-hybrid-community

Upload: others

Post on 26-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

The Cloud Specialists

DistributedCIandtestingforcloudstack inahybridcommunity

DaanHooglandNotsenior.Notmanager.Otherjobtitlesapply.

[email protected]+DaanHoogland

https://www.slideshare.net/ShapeBlue/cccna17-distributed-ci-and-testing-for-cloudstack-in-a-hybrid-community

Page 2: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

• About• You• Me• Myemployer

• Present – what is there at the moment• Goal – a compatibility matrix• Trillian (the shapeblue integration toolkit)

C o n t e n t s

Page 3: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

A b o u t M e

•••

Page 4: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

A b o u t Yo u

• New Cloudstack user• Infrastructure VAR or producer• Integrator

• Interested in improvement of the platform• Interested in contributing

Quality insurance infrastructureWelltested code

Page 5: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

“ShapeBlue are expert builders of public & private clouds. They are the leading global CloudStack

services company.”

A b o u t S h a p e B l u e

Page 6: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

S h a p e B l u e c u s t o m e r s

Page 7: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

S h a p e B l u e c u s t o m e r s

Page 8: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

S h a p e B l u e c u s t o m e r s

Page 9: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

W h a t ’ s i n i t

• Endgame (goal)• Tools at the moment• Trillian and

Page 10: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

e n d g a m e

• The goal of the community is to create a compatibility matrix of what works in CloudStackand in which environment, which will be easily maintainable and clear to users

• We have a hybrid community in terms of used hard- and software infrastructure. Testing everything is a challenge. (British understatement)

Page 11: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

T h e c o m p a t i b i l i t y m a t r i x

• The compatibility matrix• There must be a way to report

• Compatible• Failing• Unstable• Untested (default)

• It must be reported per• ACS version• Feature• Context (whut?)

Page 12: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

TestrunforPR 42

Environment Hypervisor Networking Extras Results

ShapeBlue 1 vmware advanced

Communityenv1 xen advanced

Cloudops test xen advanced

Interoute pre-production vmware advanced

Shuberg Philis betacloud KVM advanced sdn/nicira

BTtestbed vmware basic

PcXtreme KVM basic

Anamyous coward’senvironment KVM Advanced

Page 13: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

To o l s a t t h e m o m e n t

• Devcloud4• Bubble (kvm, yay)

• Trillian (vmware, but ansible \o/) more later

• Github/Gitbox (needs long and extensive explanation that will require an entirely new series of talks to be held for this and extended audi

• Bots (blueorangutan, cloudmonger)

• Upr (https://github.com/cloudops/upr)

Page 14: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

w h y

• Many, many, MANY permutations of a CloudStack deployment….

• Basic / Advanced• Local / shared / mixed storage• More than 8 common hypervisor types/versions• 4 or 5 Management server OS possiblilities

• That’s 144 combinations only looking the basics.

• Previous attempts at test automation haven’t been able to get coverage or capacity.

Page 15: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

Tr i l l i a n

• Ability to support multiple concurrent environments• No hardcoding to a specific (our) lab/environment• As few separate components as possible• Separation of ‘code’ and ‘configuration’• Scripted command-line use fully supported• Ability to support as many hypervisors as possible• As flexible as possible• Best ‘performance’ possible• Best utilization of hardware resources possible

Page 16: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

• Trillian• Ansible based environment builder

• Multi-tenant (and multiple concurrent environments)• CloudStack builds the Virtual Infrastructure• Hypervisor hosts are CloudStack templates• Supports multiple and mixed hypervisors• Supports Advanced and Basic networks• Open source

Page 17: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

S h a p e b l u e ’ s b o t

• Blue Orangutan• Build-bot

• Automation endpoint to send build jobs to Jenkins for CentOS 6/7 and Debian packages from CloudStack source

• Provides an integrated way to create packages from pull requests in Github.

• Can kick-off Jenkins jobs to build and test environments based on packages which it builds.

Page 18: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

b l u e o r a n g u t a n

• when trilian result finish we use this to build the reports: https://github.com/shapeblue/Trillian/blob/master/Ansible/roles/marvin/files/xunit-reader.py

we build the reports here: https://github.com/shapeblue/Trillian/blob/master/Ansible/roles/marvin/templates/smoketests.sh.j2

• for posting comments, we use github apis keys etc.• that part's in the secret file some-scheme://some/path/to/blueorangutan/bo.py

Page 19: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

c o n c l u s i o n s

• Add upr to bots• Several ways to our ideal• Trillian is there as tool, proper reporting is key• Next we want to orchestrate what test runs whereneed

Orbehaviour likeit

Page 20: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

A v i s i o n

• Winston• Test Orchestrator (Future project)

• Receives ‘offers’ of test type/capacity from remote test labs• Takes request from Blue Orangutan to test packages and

distributes tests to suitable remote labs.• Offers might include:• Use of local storage• Use of basic vs advanced networks• Use of particular hypervisors/versions

Page 21: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

A p a c h e C l o u d s t a c k n e e d s y o u

Page 22: Distributed CI and testing for cloudstackin a hybrid community · The Cloud Specialists Distributed CI and testing for cloudstackin a hybrid community Daan Hoogland Not senior. Not

C l i c k t o e d i t

The Cloud Specialists ShapeBlue.com @ShapeBlue

Guru tell me …?