39
Red Hat Enterprise Virtualization Disaster Recovery John Herr, RHCA Senior Software Engineer, Red Hat Aaron Weitekamp Senior Software Engineer, Red Hat

Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Red Hat Enterprise Virtualization Disaster RecoveryJohn Herr, RHCASenior Software Engineer, Red Hat

Aaron WeitekampSenior Software Engineer, Red Hat

Page 2: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

What is this session about?

Page 3: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

This session is about Disaster Recovery

•An overview of the failover process.

•The methods available to create a failover.

•The Red Hat Enterprise Virtualization 3.3 REST API.

•Automating the failover process.

Page 4: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Presenters

John Herr ([email protected])●Senior Software Engineer, Red Hat

Aaron Weitekamp ([email protected])●Senior Software Engineer, Red Hat

Both work in the Systems Engineering Team at Red Hat. This team identifies high-value solution stacks based on input from Sales, Marketing, and Engineering teams and develops reference architectures for customers.

Page 5: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Failover EnvironmentNo two environments are the same

Page 6: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create
Page 7: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Environment Description

•Required Mirrored Storage

•Red Hat Enterprise Virtualization Manager

•Data Domain

•Optional Mirrored Storage

• ISO Domain

•Export Domain

•Non-Mirrored Storage

•DNS/DHCP server

Page 8: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Failing OverThe Process

Page 9: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Failover Steps

1.Ensure storage domain data is available

2.Ensure name resolution for the RHEV Manager host name

3.Bring up RHEV Manager at second site

4.Add second sites hypervisors to the datacenter

5.Modify the storage configuration

6.Bring up VMs

Page 10: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Preparing

•Move storage domain data

•Mirrored data storage (Ideal Solution)

•Name resolution

Page 11: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Interfaces to Control Failover

Page 12: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Failover Methods

•Web User Interface (partial)

•REST API

•rhevm-shell

•rhevm-sdk-python

•rhevm-sdk-java

•Third Party Applications

Page 13: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Web User Interface (portal)

Page 14: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

RHEVM-Shell

•Wrapper around the REST API calls

•Data is passed and returned in a human readable format

•Uses either UUIDs or Common Names to access resources

•Scriptable

Page 15: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

RHEVM-Shell Setup

$ cat /root/.rhevmshellrc [cli]autoconnect = Trueautopage = True[ovirt-shell]username = admin@internaltimeout = -1extended_prompt = Falseurl = https://rdr-rhevm.sitea.example.org/apiinsecure = Falsefilter = Falsesession_timeout = -1ca_file = /root/ca.crtdont_validate_cert_chain = Falsekey_file = Nonepassword = passwordcert_file = None

Page 16: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

RHEVM-Shell Example

•Interactive use of shell$ rhevm-shell[RHEVM shell (connected)]# add datacenter --name DC-iSCSI --storage_type iscsi --version-major 3 --version-minor 3

•Non-Interactive use of shell$ rhevm-shell <<< "add datacenter --name DC-iSCSI --storage_type iscsi --version-major 3 --version-minor 3 --expect '201-created'"

Page 17: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

RHEVM-Shell Example - Output

id : ecd6d665-9488-40eb-808d-66ad12126c5e

name : DC-iSCSI

status-state : uninitialized

storage_type : iscsi

supported_versions-version-major: 3

supported_versions-version-minor: 3

version-major : 3

version-minor : 3

Page 18: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

REST API

•Calls are made through a web portal as GET, PUT, POST, etc requests.

•Data is passed and returned in XML format

•Uses UUIDs to access resources

•Curl can be used to submit API requests

•Scriptable

Page 19: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

REST API Example$ wget --no-check-certificate https://rdr-rhevm.sitea.example.org:/ca.crt

$ curl --cacert ca.crt --user 'admin@internal:password' \ --header "Accept: application/xml" \ --header "Content-type: application/xml" \ --request "POST" \ --data '<data_center> <name>DC-iSCSI</name> <storage_type>iscsi</storage_type> <version minor="1" major="3"/> </data_center>' \ https://rdr-rhevm.sitea.example.org/api/datacenters

Page 20: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

REST API Example - Output<?xml version="1.0" encoding="UTF-8" standalone="yes"?><data_center href="/api/datacenters/1727e963-bd5c-4e43-99c5-d79fd1635103" id="1727e963-bd5c-4e43-99c5-d79fd1635103"> <name>DC-iSCSI</name> <storage_type>iscsi</storage_type> <version major="3" minor="1"/> <supported_versions> <version major="3" minor="2"/> <version major="3" minor="1"/> <version major="3" minor="3"/> </supported_versions> <status> <state>uninitialized</state> </status></data_center>

Page 21: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

RHEVM software development kits

•rhevm-sdk-python, rhevm-sdk-java

•Libraries for interacting with the REST API

Page 22: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

API Methods

Page 23: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Disaster Recovery APIs

• /api/storageconnections/CONNECTION_UUID ☺

•path, iqn, address, port, user, password

• /api/networks/NETWORK_UUID

•name, description, ip, vlan, stp and display

• /api/hosts

• /api/hosts/HOST_UUID/nics/NIC_UUID• network, ip and boot_protocol

Page 24: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Update iSCSI Storage Connection – rhevm-shell

[RHEVM shell (connected)]# update storageconnection e545772d-0e34-4db6-8e6f-db076ef8a139 --target iqn.2001-05.com.equallogic:0-1cb196-7de60c201-2e19b5f809c5310b-rdr-iscsi-b

id : e545772d-0e34-4db6-8e6f-db076ef8a139

address: 172.31.143.200

port : 3260

target : iqn.2001-05.com.equallogic:0-1cb196-7de60c201-2e19b5f809c5310b-rdr-iscsi-b

type : iscsi•

Page 25: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Update iSCSI Storage Connection – REST API

curl --silent --cacert rhevm.cer \

--user "admin@internal:2bor!2b" \

--header "Accept: application/xml" \

--header "Content-type: application/xml" \

--request "PUT" \

--data "<storage_connection> <target>iqn.2001-05.com.equallogic:0-1cb196-7c160c201-08f9b5f80995310b-rdr-iscsi-a</target> </storage_connection>" \

https://rdr-rhevm.sitea.example.org/api/storageconnections/e545772d-0e34-4db6-8e6f-db076ef8a139

Page 26: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Disaster Recovery Process

Page 27: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Failover Steps

•Bring up RHEV Manager

•Fix networking

•Keep original hostname• Prevents need to recreate certificates

•Add hypervisors to RHEV Manager and approve them

•Modify storage connection using API

•Start the Vms

•Test for functionality

Page 28: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Mirror Data from Primary Site to Backup Site

•This is hopefully already done using mirroring

• If not, the data domain needs restored to the backup site

•Could take a while

Page 29: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Name Resolution

•Create a dns entry for the RHEV Manager

•This entry should resolve the original FQDN to an address on the backup site's network

•Will require zone for original site

Page 30: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

●Bring up the RHEV Manager

•Fix networking

•New IP Address (can be automatically taken care of with DHCP)

•May need to edit /etc/udev/rules.d/70-persistent-net.rules

•Keep original hostname to prevent the need to re-create certificates

Page 31: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Hypervisors

•Add the new hypervisors to RHEV Manager

•Add configure hypervisor nics if needed

•Power on the Vms

•Test the Vms for functionality

Page 32: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

New Backup API Methods

Page 33: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Backup APIs

• /api/vms/VM_UUID/snapshots

• /api/vms/VM_UUID/snapshots/SNAP_UUID/disks

• /api/vms/VM_UUID/disks

Page 34: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

●Backup Process

•Create a snapshot of the VMs disk

•Attach the snapshot onto a backup appliance VM

•Backup the data on the disk

•Detach the snapshot from the appliance

•With the API, all this can be controlled via the appliance VM

Page 35: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Resources

Page 36: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Summit Sessions of Interest

•Configuring a disaster-resilient Red Hat Enterprise Virtualization environment

• Wednesday, 2:30 - 3:30

•Red Hat Enterprise Virtualization: Overview & roadmap• Wednesday, 3:40 – 4:40

•Red Hat Enterprise Virtualization Hypervisor roadmap• Thursday, 9:45 – 10:45

•Red Hat Enterprise Virtualization deep dive• Wednesday, 4:50 – 5:50

Page 37: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Summit Demos

•Symantec

•Tintri

Page 38: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

Reference Architectures

•Red Hat Customer Portal

•Provides tar balls of scripts used in reference architecture if available

•https://access.redhat.com• Support -> Knowledgebase -> Reference Architectures

•Red Hat Resource Library

•No scripts available

•http://www.redhat.com/resourcelibrary/reference-architectures/

Page 39: Red Hat Enterprise Virtualization Disaster Recovery · 2018-02-06 · This session is about Disaster Recovery •An overview of the failover process. •The methods available to create

ThanksPlease complete the session survey