SlideShare a Scribd company logo
1 of 17
Download to read offline
CentOS, QA and OpenNebula 
Opennebula Conference 2014 
Berlin 
December 2nd to 4th 
Christoph Galuschka 
tigalch@tigalch.org
Who am I 
● Christoph Galuschka, age 37 
● from Innsbruck, Austria 
● working at TIWAG Tiroler Wasserkraft AG (utility company) in the IT 
operations department 
● Using Linux since 1998, CentOS since 2005 
● Part of the CentOS-QA-Team since April 2012 
● Mainly working on release-QA, t_functional git repo for automated testing 
and the testing infrastructure, wiki and forums
CentOS CI 
● created in june 2011 
● an approach to automate QA-release testing 
● create a set of tests to run for each point release QA-cycle 
● use git as a common repository for other users (yes you too) to contribute 
new tests 
● currently contains more then 430 scripts/functional/trademark tests for more 
than 110 packages 
● additionally uses the Linux Test Project 
● upcoming: to test every update before public release
History 
● First setup of CI: lost from memory :) and in a different DC 
● Second setup - move to opennebula 
● started with 4.0, 4.2 later (RPMs from CentOS-Developers) 
● 4.8 since November 2014 
● only “issue” during update: ruby gem 
● ‘/usr/share/one/install_gems’ vs. rpm
Setup I 
● 3 Dell 1950III with 4 cores, 16GB RAM and 2x300GB disks (raid1) each 
● Hypervisor#1 (K6) primarily runs the jenkins VM, the other two Hypervisors 
are solely used for test VMs
Setup II
Setup III 
● OpenNebula is used as the cloud controller 
● The sunstone interface is available on Hypervisor1 
● All VMs instantiated only available on the private network 
● Datastore transport → SSH 
● Hosts → KVM 
● The ci.dev.centos.org site runs as VM in that setup 
● nginx is used to forward http(s) from the public internet to the VM 
● local mirror for all CentOS-releases 
● mimics the setup of mirror.centos.org for all VMs 
● Jenkins is used to handle all running tests/VMs
Jenkins 
● 4 different 
testgroups 
● docker image 
(C6/C7 only), 
t_functional, LTP 
and reimzul 
● run on a daily 
basis 
● Infrastructure is 
hosted by 
GoDaddy
Jenkins II 
● All tests run the current versions of CentOS (C5.11, C6.6, C7.0) 
Docker image 
● pulls and runs 
current C5/6/7 
docker image 
● checks 
installation and 
command 
execution 
inside image 
LTP 
● Linux Test 
Project1 
● comprehensive 
checks of basic 
linux 
functionality 
t_functional 
● functional tests 
of packages 
● also checks ™ 
issues if valid 
● 14 contributors 
● C7 running 
since Nov. 7th 
reimzul 
● called on de-mand 
via IRC 
● used for 
verifiying 
merge 
requests 
1) visit http://ltp.sourceforge.net/
Images used for CI 
● Created by Karanbir Singh and Jaime Melis 
● Creates images for C5 and C6 with generic kickstarts and 
configurations 
● Images are 
custombuilt on 
the fly and are 
downloadable 
afterwards 
● C7 image comes 
from cloud. 
centos.org
KS-Sample for prjrd.net 
install 
url --url=http://repohost.raindrops.centos.org/centos/6/os/x86_64/ 
lang en_US.UTF-8 
keyboard uk 
network --device eth0 --bootproto dhcp 
rootpw --iscrypted $1$ZCDym637$Q8tqR6iCTag8t7a3RA5nI. 
firewall --service=ssh 
authconfig --enableshadow --passalgo=sha512 --enablefingerprint 
selinux --enforcing 
timezone --utc Europe/London 
bootloader --location=mbr --driveorder=sda 
repo --name="CentOS" --baseurl=http://repohost.raindrops.centos.org/centos/6/os/x86_64/ --cost=100 
repo --name="ONE-context" --baseurl=http://repohost.raindrops.centos.org/opennebula/6/x86_64/ --cost=100 
zerombr yes 
clearpart --all --initlabel 
part /boot --fstype ext3 --size=250 
part pv.2 --size=5000 --grow 
volgroup VolGroup00 --pesize=32768 pv.2 
logvol / --fstype ext4 --name=LogVol00 --vgname=VolGroup00 --size=1024 --grow 
logvol swap --fstype swap --name=LogVol01 --vgname=VolGroup00 --size=256 --grow --maxsize=512 
reboot 
%packages 
@Base 
@Core 
opennebula-context 
%end 
%post --log=/root/post.log --nochroot 
...
KS-Sample for prjrd.net 
sed -i "s/^ACTIVE_CONSOLES=/dev/tty[1-6]/ACTIVE_CONSOLES=/dev/tty1/" /mnt/sysimage/etc/sysconfig/init 
sed -i '/HWADDR/d' /mnt/sysimage/etc/sysconfig/network-scripts/ifcfg-eth* 
rm -f /mnt/sysimage/etc/udev/rules.d/70-persistent-net.rules 
for f in /boot/grub/grub.conf; do 
/bin/sed -i "s/^serial.*$//" /mnt/sysimage/${f} 
/bin/sed -i "s/^terminal.*$//" /mnt/sysimage/${f} 
/bin/sed -i "s/console=ttyS0,115200//" /mnt/sysimage/${f} 
done 
rm -rf /mnt/sysimage/etc/rc.d/rc*.d/S*sshd 
cat >> /mnt/sysimage/etc/rc.d/rc.local <<EOF 
/sbin/restorecon -Rv /root/.ssh 
if [ ! -e /var/update_done ] 
then 
yum update -y 
touch /var/update_done 
chkconfig sshd on 
chkconfig auditd on 
reboot 
fi 
EOF 
%end 
● This kickstart creates an image with disabled ssh-server. After boot it pulls 
all updates, enables ssh and reboots once (ensuring current kernel for all 
things to come for this VM).
introducing t_functional 
● Git repo hosting all the functional tests (packages, roles) 
● Using #!/bin/bash (but other scripting languages are possible!) 
● Hosted on gitorious and git.centos.org (for QA) 
● Community driven (yes, you too) 
● Daily results at: http://ci.dev.centos.org 
● https://git.centos.org/summary/sig-core!t_functional.git 
● https://gitorious.org/testautomation/t_functional
Distro and functional tests 
● Is release X.y installable? 
● Through ISO? 
● Through network (nfs/http/ftp) + pxe? 
● Mixed (netinstall.iso + network)? 
● Usb image? 
● UEFI vs Bios? 
● Are all packages in the distro doing what they're supposed to do ? 
● Still working with different sets of packages (php vs php53 for example in 
CentOS 5.x)
t_functional git workflow 
gitorious 
Clone & 
change 
Request 
to 
merge 
Jenkins CI merge 
request 
Fix it No? No? 
gitorious push git.centos.org pull QA-Env
further opennebula usage 
● Two further setups in DCs in London 
● controls four hosts in both cases 
● runs seven.c.o, planet.c.o, some testing-VMs, IPv6 to IPv4 Reverse Proxy, 
some internal stuff 
● www and forum site to come 
● uses 4.8 
● GlusterFS over Infiniband 
● more on that: http://arrfab.net/blog/?p=485
Any Questions? 
Thank you for your time

More Related Content

What's hot

EuroBSDCon 2021 - (auto)Installing BSD Systems
EuroBSDCon 2021 - (auto)Installing BSD SystemsEuroBSDCon 2021 - (auto)Installing BSD Systems
EuroBSDCon 2021 - (auto)Installing BSD Systems
Vinícius Zavam
 
tDiary開発環境!VMWarePlayer編
tDiary開発環境!VMWarePlayer編tDiary開発環境!VMWarePlayer編
tDiary開発環境!VMWarePlayer編
freedomcat
 

What's hot (20)

Qt5 (minimal) on beaglebone, with Yocto
Qt5 (minimal) on beaglebone, with YoctoQt5 (minimal) on beaglebone, with Yocto
Qt5 (minimal) on beaglebone, with Yocto
 
Qubes OS and TPM 2.0
Qubes OS and TPM 2.0Qubes OS and TPM 2.0
Qubes OS and TPM 2.0
 
Qt5 on ti processors
Qt5 on ti processorsQt5 on ti processors
Qt5 on ti processors
 
Yocto usage for Graphics SDK on AM335x
Yocto usage for Graphics SDK on AM335xYocto usage for Graphics SDK on AM335x
Yocto usage for Graphics SDK on AM335x
 
Everything you wanted to know about resin hup
Everything you wanted to know about resin hupEverything you wanted to know about resin hup
Everything you wanted to know about resin hup
 
Fundamental Virtualisasi di openSUSE
Fundamental Virtualisasi di openSUSEFundamental Virtualisasi di openSUSE
Fundamental Virtualisasi di openSUSE
 
Hyperscale SIG update
Hyperscale SIG updateHyperscale SIG update
Hyperscale SIG update
 
Openwrt startup
Openwrt startupOpenwrt startup
Openwrt startup
 
EuroBSDCon 2021 - (auto)Installing BSD Systems
EuroBSDCon 2021 - (auto)Installing BSD SystemsEuroBSDCon 2021 - (auto)Installing BSD Systems
EuroBSDCon 2021 - (auto)Installing BSD Systems
 
BKK16-310 The HiKey AOSP collaborative experience
BKK16-310 The HiKey AOSP collaborative experience BKK16-310 The HiKey AOSP collaborative experience
BKK16-310 The HiKey AOSP collaborative experience
 
Clustering Docker with Docker Swarm on openSUSE
Clustering Docker with Docker Swarm on openSUSEClustering Docker with Docker Swarm on openSUSE
Clustering Docker with Docker Swarm on openSUSE
 
RancherOS - The perfect place to run Docker
RancherOS - The perfect place to run DockerRancherOS - The perfect place to run Docker
RancherOS - The perfect place to run Docker
 
tDiary開発環境!VMWarePlayer編
tDiary開発環境!VMWarePlayer編tDiary開発環境!VMWarePlayer編
tDiary開発環境!VMWarePlayer編
 
Scaling Docker Registry
Scaling Docker RegistryScaling Docker Registry
Scaling Docker Registry
 
Systemd cheatsheet
Systemd cheatsheetSystemd cheatsheet
Systemd cheatsheet
 
Docker italia fatti un container tutto tuo
Docker italia fatti un container tutto tuoDocker italia fatti un container tutto tuo
Docker italia fatti un container tutto tuo
 
Qt5.0.0 eglfs abort issue
Qt5.0.0 eglfs abort issueQt5.0.0 eglfs abort issue
Qt5.0.0 eglfs abort issue
 
About docker in GDG Seoul
About docker in GDG SeoulAbout docker in GDG Seoul
About docker in GDG Seoul
 
Quickly Debug VM Failures in OpenStack
Quickly Debug VM Failures in OpenStackQuickly Debug VM Failures in OpenStack
Quickly Debug VM Failures in OpenStack
 
Docker con osdk_ver1.0
Docker con osdk_ver1.0Docker con osdk_ver1.0
Docker con osdk_ver1.0
 

Viewers also liked

Habitat Team Leader Manual
Habitat Team Leader ManualHabitat Team Leader Manual
Habitat Team Leader Manual
Marnese Jackson
 
Macsfs apologetica ii la nueva era
Macsfs apologetica ii la nueva eraMacsfs apologetica ii la nueva era
Macsfs apologetica ii la nueva era
defiendetufe
 
Efecto Primacía, Efecto de Recencia y Necesidad de cierre cognitivo
Efecto Primacía, Efecto de Recencia y Necesidad de cierre cognitivoEfecto Primacía, Efecto de Recencia y Necesidad de cierre cognitivo
Efecto Primacía, Efecto de Recencia y Necesidad de cierre cognitivo
Yenny Pérez
 
Clinical skills booklet 2
Clinical skills booklet 2Clinical skills booklet 2
Clinical skills booklet 2
NES
 

Viewers also liked (20)

Evisit Mneug B
Evisit Mneug BEvisit Mneug B
Evisit Mneug B
 
La evolucion de los sistemas operativos
La evolucion de los sistemas operativosLa evolucion de los sistemas operativos
La evolucion de los sistemas operativos
 
1 M1 M Ambassadors Deliverables
1 M1 M Ambassadors Deliverables1 M1 M Ambassadors Deliverables
1 M1 M Ambassadors Deliverables
 
Buzz report Oscars 2013
Buzz report Oscars 2013Buzz report Oscars 2013
Buzz report Oscars 2013
 
Geo29 33
Geo29 33Geo29 33
Geo29 33
 
ITCrowd | Brochure
ITCrowd | BrochureITCrowd | Brochure
ITCrowd | Brochure
 
互動”室“實境遊戲
互動”室“實境遊戲互動”室“實境遊戲
互動”室“實境遊戲
 
Soy Culpable de guerra
Soy Culpable de guerraSoy Culpable de guerra
Soy Culpable de guerra
 
Habitat Team Leader Manual
Habitat Team Leader ManualHabitat Team Leader Manual
Habitat Team Leader Manual
 
Macsfs apologetica ii la nueva era
Macsfs apologetica ii la nueva eraMacsfs apologetica ii la nueva era
Macsfs apologetica ii la nueva era
 
UG141 - Week 1 (Course Introduction)
UG141 - Week 1 (Course Introduction)UG141 - Week 1 (Course Introduction)
UG141 - Week 1 (Course Introduction)
 
Efecto Primacía, Efecto de Recencia y Necesidad de cierre cognitivo
Efecto Primacía, Efecto de Recencia y Necesidad de cierre cognitivoEfecto Primacía, Efecto de Recencia y Necesidad de cierre cognitivo
Efecto Primacía, Efecto de Recencia y Necesidad de cierre cognitivo
 
Nubes, plugins y HTML para visores patrimoniales
Nubes, plugins y HTML para visores patrimonialesNubes, plugins y HTML para visores patrimoniales
Nubes, plugins y HTML para visores patrimoniales
 
Clinical skills booklet 2
Clinical skills booklet 2Clinical skills booklet 2
Clinical skills booklet 2
 
Education service delivery presentation
Education service delivery   presentationEducation service delivery   presentation
Education service delivery presentation
 
Tecnicas de especialidad completo
Tecnicas de especialidad completoTecnicas de especialidad completo
Tecnicas de especialidad completo
 
Cvbn
CvbnCvbn
Cvbn
 
Smart data el uso inteligente de los datos
Smart data el uso inteligente de los datosSmart data el uso inteligente de los datos
Smart data el uso inteligente de los datos
 
Lemken EurOpal 6 parts catalog
Lemken EurOpal 6 parts catalogLemken EurOpal 6 parts catalog
Lemken EurOpal 6 parts catalog
 
Ars amandi
Ars amandiArs amandi
Ars amandi
 

Similar to OpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph Galuschka

Introduction to Docker and Containers
Introduction to Docker and ContainersIntroduction to Docker and Containers
Introduction to Docker and Containers
Docker, Inc.
 

Similar to OpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph Galuschka (20)

OpenShift 4 installation
OpenShift 4 installationOpenShift 4 installation
OpenShift 4 installation
 
LinuxKit Deep Dive
LinuxKit Deep DiveLinuxKit Deep Dive
LinuxKit Deep Dive
 
OpenShift_Installation_Deep_Dive_Robert_Bohne.pdf
OpenShift_Installation_Deep_Dive_Robert_Bohne.pdfOpenShift_Installation_Deep_Dive_Robert_Bohne.pdf
OpenShift_Installation_Deep_Dive_Robert_Bohne.pdf
 
Workshop : 45 minutes pour comprendre Docker avec Jérôme Petazzoni
Workshop : 45 minutes pour comprendre Docker avec Jérôme PetazzoniWorkshop : 45 minutes pour comprendre Docker avec Jérôme Petazzoni
Workshop : 45 minutes pour comprendre Docker avec Jérôme Petazzoni
 
Introduction to Docker, December 2014 "Tour de France" Edition
Introduction to Docker, December 2014 "Tour de France" EditionIntroduction to Docker, December 2014 "Tour de France" Edition
Introduction to Docker, December 2014 "Tour de France" Edition
 
Manage your bare-metal infrastructure with a CI/CD-driven approach
Manage your bare-metal infrastructure with a CI/CD-driven approachManage your bare-metal infrastructure with a CI/CD-driven approach
Manage your bare-metal infrastructure with a CI/CD-driven approach
 
The Future of Security and Productivity in Our Newly Remote World
The Future of Security and Productivity in Our Newly Remote WorldThe Future of Security and Productivity in Our Newly Remote World
The Future of Security and Productivity in Our Newly Remote World
 
Docker 0.11 at MaxCDN meetup in Los Angeles
Docker 0.11 at MaxCDN meetup in Los AngelesDocker 0.11 at MaxCDN meetup in Los Angeles
Docker 0.11 at MaxCDN meetup in Los Angeles
 
Puppet Camp Seattle 2014: Docker and Puppet: 1+1=3
Puppet Camp Seattle 2014: Docker and Puppet: 1+1=3 Puppet Camp Seattle 2014: Docker and Puppet: 1+1=3
Puppet Camp Seattle 2014: Docker and Puppet: 1+1=3
 
Real-World Docker: 10 Things We've Learned
Real-World Docker: 10 Things We've Learned  Real-World Docker: 10 Things We've Learned
Real-World Docker: 10 Things We've Learned
 
Introduction to Docker and Containers
Introduction to Docker and ContainersIntroduction to Docker and Containers
Introduction to Docker and Containers
 
Nagios Conference 2014 - Spenser Reinhardt - Detecting Security Breaches With...
Nagios Conference 2014 - Spenser Reinhardt - Detecting Security Breaches With...Nagios Conference 2014 - Spenser Reinhardt - Detecting Security Breaches With...
Nagios Conference 2014 - Spenser Reinhardt - Detecting Security Breaches With...
 
Introduction to Docker at SF Peninsula Software Development Meetup @Guidewire
Introduction to Docker at SF Peninsula Software Development Meetup @GuidewireIntroduction to Docker at SF Peninsula Software Development Meetup @Guidewire
Introduction to Docker at SF Peninsula Software Development Meetup @Guidewire
 
Stateless Hypervisors at Scale
Stateless Hypervisors at ScaleStateless Hypervisors at Scale
Stateless Hypervisors at Scale
 
Linux 开源操作系统发展新趋势
Linux 开源操作系统发展新趋势Linux 开源操作系统发展新趋势
Linux 开源操作系统发展新趋势
 
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...
Docker 1 0 1 0 1: a Docker introduction, actualized for the stable release of...
 
Linux Distribution Automated Testing
 Linux Distribution Automated Testing Linux Distribution Automated Testing
Linux Distribution Automated Testing
 
MoldCamp - multidimentional testing workflow. CIBox.
MoldCamp  - multidimentional testing workflow. CIBox.MoldCamp  - multidimentional testing workflow. CIBox.
MoldCamp - multidimentional testing workflow. CIBox.
 
Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209
 
Fabric8 CI/CD
Fabric8 CI/CDFabric8 CI/CD
Fabric8 CI/CD
 

More from OpenNebula Project

OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
OpenNebula Project
 

More from OpenNebula Project (20)

OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...
OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...
OpenNebulaConf2019 - Welcome and Project Update - Ignacio M. Llorente, Rubén ...
 
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
OpenNebulaConf2019 - Building Virtual Environments for Security Analyses of C...
 
OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...
OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...
OpenNebulaConf2019 - CORD and Edge computing with OpenNebula - Alfonso Aureli...
 
OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...
OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...
OpenNebulaConf2019 - 6 years (+) OpenNebula - Lessons learned - Sebastian Man...
 
OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...
OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...
OpenNebulaConf2019 - Performant and Resilient Storage the Open Source & Linux...
 
OpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAF
OpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAFOpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAF
OpenNebulaConf2019 - Image Backups in OpenNebula - Momčilo Medić - ITAF
 
OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...
OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...
OpenNebulaConf2019 - How We Use GOCA to Manage our OpenNebula Cloud - Jean-Ph...
 
OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...
OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...
OpenNebulaConf2019 - Crytek: A Video gaming Edge Implementation "on the shoul...
 
Replacing vCloud with OpenNebula
Replacing vCloud with OpenNebulaReplacing vCloud with OpenNebula
Replacing vCloud with OpenNebula
 
NTS: What We Do With OpenNebula - and Why We Do It
NTS: What We Do With OpenNebula - and Why We Do ItNTS: What We Do With OpenNebula - and Why We Do It
NTS: What We Do With OpenNebula - and Why We Do It
 
OpenNebula from the Perspective of an ISP
OpenNebula from the Perspective of an ISPOpenNebula from the Perspective of an ISP
OpenNebula from the Perspective of an ISP
 
NTS CAPTAIN / OpenNebula at Julius Blum GmbH
NTS CAPTAIN / OpenNebula at Julius Blum GmbHNTS CAPTAIN / OpenNebula at Julius Blum GmbH
NTS CAPTAIN / OpenNebula at Julius Blum GmbH
 
Performant and Resilient Storage: The Open Source & Linux Way
Performant and Resilient Storage: The Open Source & Linux WayPerformant and Resilient Storage: The Open Source & Linux Way
Performant and Resilient Storage: The Open Source & Linux Way
 
NetApp Hybrid Cloud with OpenNebula
NetApp Hybrid Cloud with OpenNebulaNetApp Hybrid Cloud with OpenNebula
NetApp Hybrid Cloud with OpenNebula
 
NSX with OpenNebula - upcoming 5.10
NSX with OpenNebula - upcoming 5.10NSX with OpenNebula - upcoming 5.10
NSX with OpenNebula - upcoming 5.10
 
Security for Private Cloud Environments
Security for Private Cloud EnvironmentsSecurity for Private Cloud Environments
Security for Private Cloud Environments
 
CheckPoint R80.30 Installation on OpenNebula
CheckPoint R80.30 Installation on OpenNebulaCheckPoint R80.30 Installation on OpenNebula
CheckPoint R80.30 Installation on OpenNebula
 
DE-CIX: CloudConnectivity
DE-CIX: CloudConnectivityDE-CIX: CloudConnectivity
DE-CIX: CloudConnectivity
 
DDC Demo
DDC DemoDDC Demo
DDC Demo
 
Cloud Disaggregation with OpenNebula
Cloud Disaggregation with OpenNebulaCloud Disaggregation with OpenNebula
Cloud Disaggregation with OpenNebula
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

OpenNebulaConf 2014 - CentOS, QA and OpenNebula - Christoph Galuschka

  • 1. CentOS, QA and OpenNebula Opennebula Conference 2014 Berlin December 2nd to 4th Christoph Galuschka tigalch@tigalch.org
  • 2. Who am I ● Christoph Galuschka, age 37 ● from Innsbruck, Austria ● working at TIWAG Tiroler Wasserkraft AG (utility company) in the IT operations department ● Using Linux since 1998, CentOS since 2005 ● Part of the CentOS-QA-Team since April 2012 ● Mainly working on release-QA, t_functional git repo for automated testing and the testing infrastructure, wiki and forums
  • 3. CentOS CI ● created in june 2011 ● an approach to automate QA-release testing ● create a set of tests to run for each point release QA-cycle ● use git as a common repository for other users (yes you too) to contribute new tests ● currently contains more then 430 scripts/functional/trademark tests for more than 110 packages ● additionally uses the Linux Test Project ● upcoming: to test every update before public release
  • 4. History ● First setup of CI: lost from memory :) and in a different DC ● Second setup - move to opennebula ● started with 4.0, 4.2 later (RPMs from CentOS-Developers) ● 4.8 since November 2014 ● only “issue” during update: ruby gem ● ‘/usr/share/one/install_gems’ vs. rpm
  • 5. Setup I ● 3 Dell 1950III with 4 cores, 16GB RAM and 2x300GB disks (raid1) each ● Hypervisor#1 (K6) primarily runs the jenkins VM, the other two Hypervisors are solely used for test VMs
  • 7. Setup III ● OpenNebula is used as the cloud controller ● The sunstone interface is available on Hypervisor1 ● All VMs instantiated only available on the private network ● Datastore transport → SSH ● Hosts → KVM ● The ci.dev.centos.org site runs as VM in that setup ● nginx is used to forward http(s) from the public internet to the VM ● local mirror for all CentOS-releases ● mimics the setup of mirror.centos.org for all VMs ● Jenkins is used to handle all running tests/VMs
  • 8. Jenkins ● 4 different testgroups ● docker image (C6/C7 only), t_functional, LTP and reimzul ● run on a daily basis ● Infrastructure is hosted by GoDaddy
  • 9. Jenkins II ● All tests run the current versions of CentOS (C5.11, C6.6, C7.0) Docker image ● pulls and runs current C5/6/7 docker image ● checks installation and command execution inside image LTP ● Linux Test Project1 ● comprehensive checks of basic linux functionality t_functional ● functional tests of packages ● also checks ™ issues if valid ● 14 contributors ● C7 running since Nov. 7th reimzul ● called on de-mand via IRC ● used for verifiying merge requests 1) visit http://ltp.sourceforge.net/
  • 10. Images used for CI ● Created by Karanbir Singh and Jaime Melis ● Creates images for C5 and C6 with generic kickstarts and configurations ● Images are custombuilt on the fly and are downloadable afterwards ● C7 image comes from cloud. centos.org
  • 11. KS-Sample for prjrd.net install url --url=http://repohost.raindrops.centos.org/centos/6/os/x86_64/ lang en_US.UTF-8 keyboard uk network --device eth0 --bootproto dhcp rootpw --iscrypted $1$ZCDym637$Q8tqR6iCTag8t7a3RA5nI. firewall --service=ssh authconfig --enableshadow --passalgo=sha512 --enablefingerprint selinux --enforcing timezone --utc Europe/London bootloader --location=mbr --driveorder=sda repo --name="CentOS" --baseurl=http://repohost.raindrops.centos.org/centos/6/os/x86_64/ --cost=100 repo --name="ONE-context" --baseurl=http://repohost.raindrops.centos.org/opennebula/6/x86_64/ --cost=100 zerombr yes clearpart --all --initlabel part /boot --fstype ext3 --size=250 part pv.2 --size=5000 --grow volgroup VolGroup00 --pesize=32768 pv.2 logvol / --fstype ext4 --name=LogVol00 --vgname=VolGroup00 --size=1024 --grow logvol swap --fstype swap --name=LogVol01 --vgname=VolGroup00 --size=256 --grow --maxsize=512 reboot %packages @Base @Core opennebula-context %end %post --log=/root/post.log --nochroot ...
  • 12. KS-Sample for prjrd.net sed -i "s/^ACTIVE_CONSOLES=/dev/tty[1-6]/ACTIVE_CONSOLES=/dev/tty1/" /mnt/sysimage/etc/sysconfig/init sed -i '/HWADDR/d' /mnt/sysimage/etc/sysconfig/network-scripts/ifcfg-eth* rm -f /mnt/sysimage/etc/udev/rules.d/70-persistent-net.rules for f in /boot/grub/grub.conf; do /bin/sed -i "s/^serial.*$//" /mnt/sysimage/${f} /bin/sed -i "s/^terminal.*$//" /mnt/sysimage/${f} /bin/sed -i "s/console=ttyS0,115200//" /mnt/sysimage/${f} done rm -rf /mnt/sysimage/etc/rc.d/rc*.d/S*sshd cat >> /mnt/sysimage/etc/rc.d/rc.local <<EOF /sbin/restorecon -Rv /root/.ssh if [ ! -e /var/update_done ] then yum update -y touch /var/update_done chkconfig sshd on chkconfig auditd on reboot fi EOF %end ● This kickstart creates an image with disabled ssh-server. After boot it pulls all updates, enables ssh and reboots once (ensuring current kernel for all things to come for this VM).
  • 13. introducing t_functional ● Git repo hosting all the functional tests (packages, roles) ● Using #!/bin/bash (but other scripting languages are possible!) ● Hosted on gitorious and git.centos.org (for QA) ● Community driven (yes, you too) ● Daily results at: http://ci.dev.centos.org ● https://git.centos.org/summary/sig-core!t_functional.git ● https://gitorious.org/testautomation/t_functional
  • 14. Distro and functional tests ● Is release X.y installable? ● Through ISO? ● Through network (nfs/http/ftp) + pxe? ● Mixed (netinstall.iso + network)? ● Usb image? ● UEFI vs Bios? ● Are all packages in the distro doing what they're supposed to do ? ● Still working with different sets of packages (php vs php53 for example in CentOS 5.x)
  • 15. t_functional git workflow gitorious Clone & change Request to merge Jenkins CI merge request Fix it No? No? gitorious push git.centos.org pull QA-Env
  • 16. further opennebula usage ● Two further setups in DCs in London ● controls four hosts in both cases ● runs seven.c.o, planet.c.o, some testing-VMs, IPv6 to IPv4 Reverse Proxy, some internal stuff ● www and forum site to come ● uses 4.8 ● GlusterFS over Infiniband ● more on that: http://arrfab.net/blog/?p=485
  • 17. Any Questions? Thank you for your time