SlideShare ist ein Scribd-Unternehmen logo
1 von 28
Downloaden Sie, um offline zu lesen
Upgrading
from Rovius
CloudPlatform to
Apache CloudStack
Andrija Panic
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
About me,
myself and I
Cloud Architect @ ShapeBlue
virtualization for last 15+ years
Involved with CloudStack since
version 4.0.0-incubating
Apache CloudStack project committer
and PMC member
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
Acronyms used
ACP =
Accelerite CloudPlatform
(Rovius CloudPlatform)
ACS =
Apache CloudStack
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
What am I
going to see
today?
High level overview of the whole
migration process
Some detailed steps
Some gotchas and what to look for
A lot of WHAT and HOW
A walk through a complete upgrade
project ( sample customer)
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
Because such thing does not exist
Why not
step-by-step
guide?
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
Now seriously
Each customer environment is different
Different ACP version
Different target ACS version
Different DB data, different DB schema,
patches, etc.
Different auxiliary components
Cloud Portal Business Manager
LDAP/NATIVE authentication
etc.
Requires judgement calls most of the
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
Challenges
Ensure successful DB upgrade
Ensure minimal DB deviation from a
clean ACS install DB
Proper testing (functional, UAT)
Ensure proper night sleep after the
upgrade
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
Required tools for a successful upgrade
A virtual machine with target ACS mgmt. installed (for sandboxed DB upgrade)
dbForge software:
Data compare & Schema compare tools (www.devart.com)
For functional/UAT testing
Optional: ACP binaries
to spin a new test env, upgrade to target ACS version, run Marvin/smoke tests.
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
7-layer OSI networking model ?
25% insanity - - Oscar Levant
75% sanity
Understanding of ACS upgrade process
Understanding of ACS DB structure and data
MySQL and SQL knowledge
Good judgement skills are critical
Other stimulants
Headache painkillers, coffee, music && in late hours
A bit of luck
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
Are you Ready ?
A brief history of ACP and ACS
Launched in May 2010 as Vmops, rebranded to Cloud.com.
Acquired by Citrix in 2011, donated to the Apache Software Foundation in 2012
Citrix maintained their own commercial fork -
In January 2016 Citrix sold CloudPlatform to Accelerite
Development of Apache CloudStack continue independently in an open-source community.
Version at time of writing:
Apache CloudStack LTS 4.17 released June 2022 (4.16 LTS November 2021)
Accelerite CloudPlatform latest release 4.11, based on Apache Cloudstack version 4.10.
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
Differences between ACP and ACS
While essentially the same product there are some significant differences
ACP 4.11 is based on ACS 4.10
ACP 4.7 based on ACS 4.6 with some tables indexes from ACS 4.8, 4.9 and even 4.10
guest_os guest_os_hypervisor
Feature set mismatch
ACP developed some additional features (for their customers) that are not in the upstream (ACS)
Different implementations of same things in ACP and ACS
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
dbForge schema compare
https://www.devart.com/dbForge/mysql/compare-bundle/
SCHEMA compare
Compare table structures (field lengths, indexes, keys, columns names, etc.)
Take the clean installation ACS schema as the source
Take the ACP schema as the destination (ACP upgraded to ACS)
updating the destination DB to be like the source DB
Thus, important to not swap ACP and ACS DBs
Make manual changes as needed
Export the script
Why SCHEMA changes are important?
ACS CODE expects certain DB schema - as simple as that
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
dbForge schema compare demo
dbForge data compare
https://www.devart.com/dbForge/mysql/compare-bundle/
DATA compare
configuration, roles, role_permission, hypervisor_capabilities, guest_os_hypervisor, guest_os*
Take the clean installation ACS as the source
Take the ACP as the destination (ACP upgraded to ACS)
updating the destination DB to be like the source DB
Thus, important to not swap ACP and ACS DBs
Make manual changes as needed
Export the script
Why DATA changes are important?
ACS CODE expects certain DATA in certain tables - as simple as that
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
dbForge data compare demo
Risks with DB changes
Shortening column length
Is there data that would be truncated
Lowering values inside some columns
hypervisor_capabilities
dbForge tools
hypervisor_capabilities
wrong hypervisor_type hypervisor_version
False differences due to comparing unneeded columns
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
HIGH LEVEL UPGRADE STEPS
High level upgrade steps
(sandboxed) copy-of-production-DB upgrade
Usually requires pre-upgrade database troubleshooting and cleanup
This is done in sandboxed environment (e.g. inside a VM, network-isolated from HV hosts/storage)
Ensure easy rollback in case of failed DB upgrade (e.g. VM snapshots)
Clean up databases schema and data after the upgrade
Required for various reasons
Time consuming, prone to mistakes, rinse and repeat
Test
Functional testing possible only in the test env
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
Production DB upgrade
Management server build (target OS + target ACS version)
Install/configure target mysql version on the same server
Create mysql user* for cloud/cloud_usage database
db.properties
db.cloud.encrypt.secret db.properties
db.cloud.password db.properties
-setup-
vm_template
Perform pre-upgrade database cleanup (once you have the SQL scripts)
Start cloudstack management server, tail f the logs, confirm DB upgrade
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
Production DB upgrade
Ensure doing frequent VM snapshots
)
db.cloud.encrypt.secret db.cloud.password
java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.2.jar
org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI decrypt.sh input=<ENCRYPTED-VALUE>
password=<management-key-value> verbose=true
Management server setup
cloudstack-setup-databases cloud:<cloud db password>@<cloud db host> -i <management server IP
address> -m <mgmt-key> -k <database-encryption-key>
Simulate system VM templates are in place
TLDR/W
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
PRE-UPGRADE database cleanup
Depend on the ACP version, custom patches, and additions of guest OS records
Usually boils down to:
guest_os
Adding/removing keys/indexes/other schema changes
ACP 4.7 has a lot of keys/indexes improvements from ACS 4.8, 4.9 and even 4.10,
but is based on ACS 4.6 version
so that the ACS SQL upgrade scripts can run successfully (from 4.6 and onwards)
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
PRE-UPGRADE database cleanup
guest_os
Records/values started drifting heavily in last few ACP/ACS versions
We need to remove records with IDs that ACS upgrade is trying to inject otherwise,
the upgrade of DB will fail (record with the same ID already exists)
this requires updating references in various other tables
We need to work out on which ACS version is the current ACP version based on
Done by understanding different failures of the DB upgrade
Done by checking the ACS SQL upgrade files
e.g. ACP 4.7 is based on ACS 4.6, ACP 4.11 is based on ACS 4.10
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
POST-UPGRADE database cleanup
Both schema and data cleanup needed
to ensure that ACS will not throw exceptions and various functionalities will not be broken
older ACP data/schema is there
Role permissions records are completely missing
Hypervisor capabilities differ
PrivateGw network_offering
unique_index ssh_keypairs
duplicate records need to manually remove older one of each duplicate key
etc.
CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
Guest_OS
Sample customer project
Thanks!
Q&A ?

Weitere ähnliche Inhalte

Ähnlich wie Upgrading From Rovius CloudPlatform to Apache CloudStack

AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAmazon Web Services
 
UCS „Wrap Up“: Highlights 2017 und Ausblick 2018
UCS „Wrap Up“: Highlights 2017 und Ausblick 2018UCS „Wrap Up“: Highlights 2017 und Ausblick 2018
UCS „Wrap Up“: Highlights 2017 und Ausblick 2018Univention GmbH
 
Migrating from VBA to .NET Desktop Add-Ins
Migrating from VBA to .NET Desktop Add-Ins Migrating from VBA to .NET Desktop Add-Ins
Migrating from VBA to .NET Desktop Add-Ins lbross
 
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)Arrow Consulting & Design
 
Continuous DB migration based on carbon5 framework
Continuous DB migration based on carbon5 frameworkContinuous DB migration based on carbon5 framework
Continuous DB migration based on carbon5 frameworkb0ris_1
 
Борис Трофимов. Continuous Database migration-это просто!
Борис Трофимов. Continuous Database migration-это просто!Борис Трофимов. Continuous Database migration-это просто!
Борис Трофимов. Continuous Database migration-это просто!Volha Banadyseva
 
Dsdt meetup 2017 11-21
Dsdt meetup 2017 11-21Dsdt meetup 2017 11-21
Dsdt meetup 2017 11-21JDA Labs MTL
 
DSDT Meetup Nov 2017
DSDT Meetup Nov 2017DSDT Meetup Nov 2017
DSDT Meetup Nov 2017DSDT_MTL
 
Power BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle CloudPower BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle CloudKellyn Pot'Vin-Gorman
 
Oracle Cloud Infrastructure:2020年6月度サービス・アップデート
Oracle Cloud Infrastructure:2020年6月度サービス・アップデートOracle Cloud Infrastructure:2020年6月度サービス・アップデート
Oracle Cloud Infrastructure:2020年6月度サービス・アップデートオラクルエンジニア通信
 
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...VMware Tanzu
 
Oracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud InfrastructureOracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud InfrastructureSinanPetrusToma
 
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan GoksuSpring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan GoksuVMware Tanzu
 
Docker Java App with MariaDB – Deployment in Less than a Minute
Docker Java App with MariaDB – Deployment in Less than a MinuteDocker Java App with MariaDB – Deployment in Less than a Minute
Docker Java App with MariaDB – Deployment in Less than a Minutedchq
 
Beating The Hyperscalers With A High-performance, Cost-efficient Cloud With A...
Beating The Hyperscalers With A High-performance, Cost-efficient Cloud With A...Beating The Hyperscalers With A High-performance, Cost-efficient Cloud With A...
Beating The Hyperscalers With A High-performance, Cost-efficient Cloud With A...ShapeBlue
 
Modernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudModernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudMicrosoft Tech Community
 
Managing Software from Development to Deployment in the Cloud
Managing Software from Development to Deployment in the CloudManaging Software from Development to Deployment in the Cloud
Managing Software from Development to Deployment in the CloudCloudBees
 
Oracle Cloud PaaS & IaaS:2020年2月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2020年2月度サービス情報アップデートOracle Cloud PaaS & IaaS:2020年2月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2020年2月度サービス情報アップデートオラクルエンジニア通信
 

Ähnlich wie Upgrading From Rovius CloudPlatform to Apache CloudStack (20)

AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
 
UCS „Wrap Up“: Highlights 2017 und Ausblick 2018
UCS „Wrap Up“: Highlights 2017 und Ausblick 2018UCS „Wrap Up“: Highlights 2017 und Ausblick 2018
UCS „Wrap Up“: Highlights 2017 und Ausblick 2018
 
Migrating from VBA to .NET Desktop Add-Ins
Migrating from VBA to .NET Desktop Add-Ins Migrating from VBA to .NET Desktop Add-Ins
Migrating from VBA to .NET Desktop Add-Ins
 
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
Getting Started with ASP.NET Core 1.0 (formerly ASP.NET 5)
 
Mobile
MobileMobile
Mobile
 
Continuous DB migration based on carbon5 framework
Continuous DB migration based on carbon5 frameworkContinuous DB migration based on carbon5 framework
Continuous DB migration based on carbon5 framework
 
Борис Трофимов. Continuous Database migration-это просто!
Борис Трофимов. Continuous Database migration-это просто!Борис Трофимов. Continuous Database migration-это просто!
Борис Трофимов. Continuous Database migration-это просто!
 
Dsdt meetup 2017 11-21
Dsdt meetup 2017 11-21Dsdt meetup 2017 11-21
Dsdt meetup 2017 11-21
 
DSDT Meetup Nov 2017
DSDT Meetup Nov 2017DSDT Meetup Nov 2017
DSDT Meetup Nov 2017
 
Power BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle CloudPower BI with Essbase in the Oracle Cloud
Power BI with Essbase in the Oracle Cloud
 
Oracle Cloud Infrastructure:2020年6月度サービス・アップデート
Oracle Cloud Infrastructure:2020年6月度サービス・アップデートOracle Cloud Infrastructure:2020年6月度サービス・アップデート
Oracle Cloud Infrastructure:2020年6月度サービス・アップデート
 
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
 
Oracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud InfrastructureOracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud Infrastructure
 
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan GoksuSpring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
 
Docker Java App with MariaDB – Deployment in Less than a Minute
Docker Java App with MariaDB – Deployment in Less than a MinuteDocker Java App with MariaDB – Deployment in Less than a Minute
Docker Java App with MariaDB – Deployment in Less than a Minute
 
Beating The Hyperscalers With A High-performance, Cost-efficient Cloud With A...
Beating The Hyperscalers With A High-performance, Cost-efficient Cloud With A...Beating The Hyperscalers With A High-performance, Cost-efficient Cloud With A...
Beating The Hyperscalers With A High-performance, Cost-efficient Cloud With A...
 
Modernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudModernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloud
 
Managing Software from Development to Deployment in the Cloud
Managing Software from Development to Deployment in the CloudManaging Software from Development to Deployment in the Cloud
Managing Software from Development to Deployment in the Cloud
 
Oracle Cloud PaaS & IaaS:2020年2月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2020年2月度サービス情報アップデートOracle Cloud PaaS & IaaS:2020年2月度サービス情報アップデート
Oracle Cloud PaaS & IaaS:2020年2月度サービス情報アップデート
 
SAPonAzureCaseStudyMay2020.pptx
SAPonAzureCaseStudyMay2020.pptxSAPonAzureCaseStudyMay2020.pptx
SAPonAzureCaseStudyMay2020.pptx
 

Mehr von ShapeBlue

CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueCloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueShapeBlue
 
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlueCloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlueShapeBlue
 
Elevating Cloud Infrastructure with Object Storage, DRS, VM Scheduling, and D...
Elevating Cloud Infrastructure with Object Storage, DRS, VM Scheduling, and D...Elevating Cloud Infrastructure with Object Storage, DRS, VM Scheduling, and D...
Elevating Cloud Infrastructure with Object Storage, DRS, VM Scheduling, and D...ShapeBlue
 
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlue
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlueVM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlue
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlueShapeBlue
 
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHubHow We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHubShapeBlue
 
What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...
What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...
What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...ShapeBlue
 
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...ShapeBlue
 
How We Use CloudStack to Provide Managed Hosting - Swen Brüseke - proIO
How We Use CloudStack to Provide Managed Hosting - Swen Brüseke - proIOHow We Use CloudStack to Provide Managed Hosting - Swen Brüseke - proIO
How We Use CloudStack to Provide Managed Hosting - Swen Brüseke - proIOShapeBlue
 
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...ShapeBlue
 
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...ShapeBlue
 
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineShapeBlue
 
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...ShapeBlue
 
Use Existing Assets to Build a Powerful In-house Cloud Solution - Magali Perv...
Use Existing Assets to Build a Powerful In-house Cloud Solution - Magali Perv...Use Existing Assets to Build a Powerful In-house Cloud Solution - Magali Perv...
Use Existing Assets to Build a Powerful In-house Cloud Solution - Magali Perv...ShapeBlue
 
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...ShapeBlue
 
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...ShapeBlue
 
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...ShapeBlue
 
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlueElevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlueShapeBlue
 
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...ShapeBlue
 
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...ShapeBlue
 
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueWhat’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueShapeBlue
 

Mehr von ShapeBlue (20)

CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlueCloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
CloudStack Authentication Methods – Harikrishna Patnala, ShapeBlue
 
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlueCloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
CloudStack Tooling Ecosystem – Kiran Chavala, ShapeBlue
 
Elevating Cloud Infrastructure with Object Storage, DRS, VM Scheduling, and D...
Elevating Cloud Infrastructure with Object Storage, DRS, VM Scheduling, and D...Elevating Cloud Infrastructure with Object Storage, DRS, VM Scheduling, and D...
Elevating Cloud Infrastructure with Object Storage, DRS, VM Scheduling, and D...
 
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlue
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlueVM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlue
VM Migration from VMware to CloudStack and KVM – Suresh Anaparti, ShapeBlue
 
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHubHow We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
How We Grew Up with CloudStack and its Journey – Dilip Singh, DataHub
 
What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...
What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...
What’s New in CloudStack 4.19, Abhishek Kumar, Release Manager Apache CloudSt...
 
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
CloudStack 101: The Best Way to Build Your Private Cloud – Rohit Yadav, VP Ap...
 
How We Use CloudStack to Provide Managed Hosting - Swen Brüseke - proIO
How We Use CloudStack to Provide Managed Hosting - Swen Brüseke - proIOHow We Use CloudStack to Provide Managed Hosting - Swen Brüseke - proIO
How We Use CloudStack to Provide Managed Hosting - Swen Brüseke - proIO
 
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
Enabling DPU Hardware Accelerators in XCP-ng Cloud Platform Environment - And...
 
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
Zero to Cloud Hero: Crafting a Private Cloud from Scratch with XCP-ng, Xen Or...
 
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.OnlineKVM Security Groups Under the Hood - Wido den Hollander - Your.Online
KVM Security Groups Under the Hood - Wido den Hollander - Your.Online
 
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
 
Use Existing Assets to Build a Powerful In-house Cloud Solution - Magali Perv...
Use Existing Assets to Build a Powerful In-house Cloud Solution - Magali Perv...Use Existing Assets to Build a Powerful In-house Cloud Solution - Magali Perv...
Use Existing Assets to Build a Powerful In-house Cloud Solution - Magali Perv...
 
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
 
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
DRaaS using Snapshot copy and destination selection (DRaaS) - Alexandre Matti...
 
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
 
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlueElevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
Elevating Privacy and Security in CloudStack - Boris Stoyanov - ShapeBlue
 
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
 
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
Hypervisor Agnostic DRS in CloudStack - Brief overview & demo - Vishesh Jinda...
 
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueWhat’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
 

Kürzlich hochgeladen

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
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 2024The Digital Insurer
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
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...Miguel Araújo
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Kürzlich hochgeladen (20)

Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
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
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
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...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Upgrading From Rovius CloudPlatform to Apache CloudStack

  • 1. Upgrading from Rovius CloudPlatform to Apache CloudStack Andrija Panic CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 2. About me, myself and I Cloud Architect @ ShapeBlue virtualization for last 15+ years Involved with CloudStack since version 4.0.0-incubating Apache CloudStack project committer and PMC member CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 3. Acronyms used ACP = Accelerite CloudPlatform (Rovius CloudPlatform) ACS = Apache CloudStack CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 4. What am I going to see today? High level overview of the whole migration process Some detailed steps Some gotchas and what to look for A lot of WHAT and HOW A walk through a complete upgrade project ( sample customer) CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 5. Because such thing does not exist Why not step-by-step guide? CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 6. Now seriously Each customer environment is different Different ACP version Different target ACS version Different DB data, different DB schema, patches, etc. Different auxiliary components Cloud Portal Business Manager LDAP/NATIVE authentication etc. Requires judgement calls most of the CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 7. Challenges Ensure successful DB upgrade Ensure minimal DB deviation from a clean ACS install DB Proper testing (functional, UAT) Ensure proper night sleep after the upgrade CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 8. Required tools for a successful upgrade A virtual machine with target ACS mgmt. installed (for sandboxed DB upgrade) dbForge software: Data compare & Schema compare tools (www.devart.com) For functional/UAT testing Optional: ACP binaries to spin a new test env, upgrade to target ACS version, run Marvin/smoke tests. CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 10. 25% insanity - - Oscar Levant 75% sanity Understanding of ACS upgrade process Understanding of ACS DB structure and data MySQL and SQL knowledge Good judgement skills are critical Other stimulants Headache painkillers, coffee, music && in late hours A bit of luck CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 12. A brief history of ACP and ACS Launched in May 2010 as Vmops, rebranded to Cloud.com. Acquired by Citrix in 2011, donated to the Apache Software Foundation in 2012 Citrix maintained their own commercial fork - In January 2016 Citrix sold CloudPlatform to Accelerite Development of Apache CloudStack continue independently in an open-source community. Version at time of writing: Apache CloudStack LTS 4.17 released June 2022 (4.16 LTS November 2021) Accelerite CloudPlatform latest release 4.11, based on Apache Cloudstack version 4.10. CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 13. Differences between ACP and ACS While essentially the same product there are some significant differences ACP 4.11 is based on ACS 4.10 ACP 4.7 based on ACS 4.6 with some tables indexes from ACS 4.8, 4.9 and even 4.10 guest_os guest_os_hypervisor Feature set mismatch ACP developed some additional features (for their customers) that are not in the upstream (ACS) Different implementations of same things in ACP and ACS CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 14. dbForge schema compare https://www.devart.com/dbForge/mysql/compare-bundle/ SCHEMA compare Compare table structures (field lengths, indexes, keys, columns names, etc.) Take the clean installation ACS schema as the source Take the ACP schema as the destination (ACP upgraded to ACS) updating the destination DB to be like the source DB Thus, important to not swap ACP and ACS DBs Make manual changes as needed Export the script Why SCHEMA changes are important? ACS CODE expects certain DB schema - as simple as that CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 16. dbForge data compare https://www.devart.com/dbForge/mysql/compare-bundle/ DATA compare configuration, roles, role_permission, hypervisor_capabilities, guest_os_hypervisor, guest_os* Take the clean installation ACS as the source Take the ACP as the destination (ACP upgraded to ACS) updating the destination DB to be like the source DB Thus, important to not swap ACP and ACS DBs Make manual changes as needed Export the script Why DATA changes are important? ACS CODE expects certain DATA in certain tables - as simple as that CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 18. Risks with DB changes Shortening column length Is there data that would be truncated Lowering values inside some columns hypervisor_capabilities dbForge tools hypervisor_capabilities wrong hypervisor_type hypervisor_version False differences due to comparing unneeded columns CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 20. High level upgrade steps (sandboxed) copy-of-production-DB upgrade Usually requires pre-upgrade database troubleshooting and cleanup This is done in sandboxed environment (e.g. inside a VM, network-isolated from HV hosts/storage) Ensure easy rollback in case of failed DB upgrade (e.g. VM snapshots) Clean up databases schema and data after the upgrade Required for various reasons Time consuming, prone to mistakes, rinse and repeat Test Functional testing possible only in the test env CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 21. Production DB upgrade Management server build (target OS + target ACS version) Install/configure target mysql version on the same server Create mysql user* for cloud/cloud_usage database db.properties db.cloud.encrypt.secret db.properties db.cloud.password db.properties -setup- vm_template Perform pre-upgrade database cleanup (once you have the SQL scripts) Start cloudstack management server, tail f the logs, confirm DB upgrade CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 22. Production DB upgrade Ensure doing frequent VM snapshots ) db.cloud.encrypt.secret db.cloud.password java -classpath /usr/share/cloudstack-common/lib/jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringDecryptionCLI decrypt.sh input=<ENCRYPTED-VALUE> password=<management-key-value> verbose=true Management server setup cloudstack-setup-databases cloud:<cloud db password>@<cloud db host> -i <management server IP address> -m <mgmt-key> -k <database-encryption-key> Simulate system VM templates are in place TLDR/W CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 23. PRE-UPGRADE database cleanup Depend on the ACP version, custom patches, and additions of guest OS records Usually boils down to: guest_os Adding/removing keys/indexes/other schema changes ACP 4.7 has a lot of keys/indexes improvements from ACS 4.8, 4.9 and even 4.10, but is based on ACS 4.6 version so that the ACS SQL upgrade scripts can run successfully (from 4.6 and onwards) CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 24. PRE-UPGRADE database cleanup guest_os Records/values started drifting heavily in last few ACP/ACS versions We need to remove records with IDs that ACS upgrade is trying to inject otherwise, the upgrade of DB will fail (record with the same ID already exists) this requires updating references in various other tables We need to work out on which ACS version is the current ACP version based on Done by understanding different failures of the DB upgrade Done by checking the ACS SQL upgrade files e.g. ACP 4.7 is based on ACS 4.6, ACP 4.11 is based on ACS 4.10 CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria
  • 25. POST-UPGRADE database cleanup Both schema and data cleanup needed to ensure that ACS will not throw exceptions and various functionalities will not be broken older ACP data/schema is there Role permissions records are completely missing Hypervisor capabilities differ PrivateGw network_offering unique_index ssh_keypairs duplicate records need to manually remove older one of each duplicate key etc. CloudStack Collaboration Conference 2022 / #CSCollab2022 / 14-16 Nov 2022 / Sofia, Bulgaria