moving aws workloads to openstack

Download Moving AWS workloads to OpenStack

Post on 20-Jul-2015

622 views

Category:

Software

3 download

Embed Size (px)

TRANSCRIPT

Moving AWS Workloads to OpenStackYou're not trapped, honest.www.mirantis.comCopyright 2015 Mirantis, Inc. All rights reservedWho am I?Nicholas ChaseLong-time programmerAuthor of a bunch of booksHead of technical content at MirantisEditor-in-Chief, OpenStack:Now

Copyright 2015 Mirantis, Inc. All rights reservedSpecial thanks to...Darin SorrentinoCloud Solutions ArchitectDarin@Vion.com

Copyright 2015 Mirantis, Inc. All rights reservedWhat we're going to talk aboutOpenStack for AWS users -- an overviewThe easiest way to move a workloadUsing orchestration toolsGiving your pet a new home (or, Doing it the hard way)Copyright 2015 Mirantis, Inc. All rights reservedOpenStack for AWS usersA quick introductionCopyright 2015 Mirantis, Inc. All rights reservedOpenStack for AWS usersAn open source cloud platformAn open source version of AWS -- sort ofNo one-to-one correspondence for everythingDifferent APICopyright 2015 Mirantis, Inc. All rights reservedOpenStack for AWS usersComponentsEC2 = NovaEC2 container service = Magnum, Kubernetes (via Murano)S3 = SwiftRDS = TroveIdentity and Access Management = KeystoneCloudWatch = CeilometerCloudFormation = HeatCopyright 2015 Mirantis, Inc. All rights reservedOpenStack for AWS usersComponents (con't)SQS = ZaqarSWF = MistralDyamoDB = MagnetoDBVPC = VPN as a Service (in Neutron)AWS management console = HorizonCopyright 2015 Mirantis, Inc. All rights reservedOpenStack for AWS users

Copyright 2015 Mirantis, Inc. All rights reservedThe easiest way to move a workloadCopyright 2015 Mirantis, Inc. All rights reservedThe easiest way to move a workloadDon't move it at all.Copyright 2015 Mirantis, Inc. All rights reservedThe easiest way to move a workloadAspects of a cloud application architectureHorizontally scalableInherently statelessMicroservices-basedFault-tolerantCopyright 2015 Mirantis, Inc. All rights reservedThe easiest way to move a workload[[DIAGRAM SHOWING MOVING FROM ONE CLOUD TO ANOTHER.]]Copyright 2015 Mirantis, Inc. All rights reservedUsing orchestration toolsCopyright 2015 Mirantis, Inc. All rights reservedUsing orchestration toolsOrchestration is...The layer of your application that deals with the cloud itself, as opposed to the actual workloadSharable/versionable as codeOften targeted at hybrid cloud environments

You've got multiple options here.Copyright 2015 Mirantis, Inc. All rights reservedUsing orchestration toolsCloud-specific orchestration tools:AWS -> CloudFormationOpenStack -> Heat (originally based on CloudFormation & retains some backwards compatibility with CloudFormation templates)

Copyright 2015 Mirantis, Inc. All rights reservedUsing orchestration toolsHybrid cloud orchestration tools:StackStormCloudifyEricssonApceraMore every day, it seems...

Copyright 2015 Mirantis, Inc. All rights reservedUsing orchestration toolsStackStormWorkflow engine in OpenStack (Mistral)Open source (https://github.com/StackStorm)

Copyright 2015 Mirantis, Inc. All rights reservedUsing orchestration toolsStackStorm

Copyright 2015 Mirantis, Inc. All rights reservedUsing orchestration toolsCloudify (by Gigaspaces)Workflow engine in OpenStack (Mistral)Open source (https://github.com/StackStorm)

Copyright 2015 Mirantis, Inc. All rights reservedUsing orchestration toolsCloudify

Copyright 2015 Mirantis, Inc. All rights reservedUsing orchestration toolsApcera

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new homeDoing it the hard wayCopyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsThe general procedure Install VirtIO drivers in the AWS VM Prepare the registry on the VMCreate a VMDK image Convert the VMDK to qcow2Upload it to OpenStack

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsOpen the firewall for ICMP

netsh advfirewall firewall add rule name="All ICMP V4" protocol=icmpv4:any,any dir=in action=allow

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsEnable Remote Desktop access (on by default)Allow Remote Desktop access through the firewall

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsInstall VirtIO driversYou have Administrator PrivilegesIn this case, you can install the VirtIO drivers and make the registry changes in the Windows VM while it is running on AWSYou dont have Administrator PrivilegesIf you dont have administrator rights, you will need to leverage something like guestfish to inject the drivers and registry settings into the image after converting it to QCOW2

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsObtain the latest VirtIO drivers:Download the ISO from http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/If you have Administrator privileges:Install Daemon Tools (or some other emulator) to mount the ISOMake sure to install SPTD

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsInstallation with Administrative PrivilegesInstall the drivers according to directions at https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/Virtualization_Deployment_and_Administration_Guide/sect-KVM_Para_virtualized_virtio_Drivers-Installing_the_drivers_on_an_installed_Windows_guest_virtual_machine.htmlDriver type is viostor

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsAdministrative Privileges contdImport the registry configuration Full instructions at https://docs.mirantis.com/openstack/express/latest/pdf/ApplicationOnBoardingGuideMirantisOpenStackExpress.pdfAdd a second Administrators accountAdd userAdd to Administrator's group

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsAttach a new volume to the VM Use the AWS console Download the VMware vCenter Converter from https://my.vmware.com/group/vmware/evalcenter?p=converter

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsUsing the converterDownload the VMware vCenter Converter from https://my.vmware.com/group/vmware/evalcenter?p=converterCreate a new image using the "Powered On Machine" as the sourceChoose VMware Workstation as the product

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsSAVE THE IMAGE TO THE NEWLY ATTACHED VOLUME. DO NOT USE THE SYSTEM DISK.

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsConvert the resulting VMDKCopy the file to a Linux box Install qemu-img Convert the VMDK to a qcow2 image:

qemu-img convert -f vmdk -O qcow2 VM.vmdk VM.qcow2

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsIf you did NOT have Administrator privileges to install VirtIO, you will need to do so now utilizing guestfish:Tell guestfish where to find the qemu-kvm library:

export LIBGUESTFS_QEMU=$(rpm -ql qemu-kvm | grep qemu-kvm$)

Copy the VirtIO files to the linux machine (see the guide for full details)

Copyright 2015 Mirantis, Inc. All rights reservedGiving your pet a new home -- WindowsVirtIO installation (without Administrator Privileges)Create a script to inject the files into the image:

#!/bin/bash guestfish --rw -a $1 -i