Veritas InfoScale™ 7.4.2 Virtualization Guide - Linux
- Section I. Overview of Veritas InfoScale Solutions used in Linux virtualization
- Overview of supported products and technologies
- Overview of the Veritas InfoScale Products Virtualization Guide
- About Veritas InfoScale Solutions support for Linux virtualization environments
- About Kernel-based Virtual Machine (KVM) technology
- About the RHEV environment
- Virtualization use cases addressed by Veritas InfoScale products
- About virtual-to-virtual (in-guest) clustering and failover
- Overview of supported products and technologies
- Section II. Implementing a basic KVM environment
- Getting started with basic KVM
- Creating and launching a kernel-based virtual machine (KVM) host
- RHEL-based KVM installation and usage
- Setting up a kernel-based virtual machine (KVM) guest
- About setting up KVM with Veritas InfoScale Solutions
- Veritas InfoScale Solutions configuration options for the kernel-based virtual machines environment
- Dynamic Multi-Pathing in the KVM guest virtualized machine
- Dynamic Multi-Pathing in the KVM host
- Storage Foundation in the virtualized guest machine
- Enabling I/O fencing in KVM guests
- Storage Foundation Cluster File System High Availability in the KVM host
- Dynamic Multi-Pathing in the KVM host and guest virtual machine
- Dynamic Multi-Pathing in the KVM host and Storage Foundation HA in the KVM guest virtual machine
- Cluster Server in the KVM host
- Cluster Server in the guest
- Cluster Server in a cluster across virtual machine guests and physical machines
- Installing Veritas InfoScale Solutions in the kernel-based virtual machine environment
- Installing and configuring Cluster Server in a kernel-based virtual machine (KVM) environment
- Configuring KVM resources
- Getting started with basic KVM
- Section III. Implementing a RedHat Enterprise Virtualization environment
- Getting started with Red Hat Enterprise Virtualization (RHEV)
- Creating and launching a RHEV host
- Setting up a virtual machine in the Red Hat Enterprise Virtualization (RHEV) environment
- Veritas InfoScale Solutions configuration options for the RHEV environment
- Dynamic Multi-Pathing in a RHEV guest virtual machine
- Dynamic Multi-Pathing in the RHEV host
- Storage Foundation in the RHEV guest virtual machine
- Storage Foundation Cluster File System High Availability in the RHEV host
- Dynamic Multi-Pathing in the RHEV host and guest virtual machine
- Dynamic Multi-Pathing in the RHEV host and Storage Foundation HA in the RHEV guest virtual machine
- Cluster Server for the RHEV environment
- About setting up RHEV with Veritas InfoScale Solutions
- Installing Veritas InfoScale Solutions in the RHEV environment
- Configuring VCS to manage virtual machines
- Configuring Storage Foundation as backend storage for virtual machines
- About configuring virtual machines to attach Storage Foundation as backend storage in an RHEV environment
- Use cases for virtual machines using Storage Foundation storage
- Workflow to configure storage for virtual machines in an RHEV environment
- Prerequisites in an RHEV environment
- Installing the SF administration utility for RHEV
- Installing and configuring SFCFSHA or SFHA cluster on RHEL-H nodes
- Configuring Storage Foundation as backend storage for virtual machines
- Usage examples from the RHEV administration utility
- Mapping DMP meta-devices
- Resizing devices
- Getting started with Red Hat Enterprise Virtualization (RHEV)
- Section IV. Implementing Linux virtualization use cases
- Application visibility and device discovery
- About storage to application visibility using Veritas InfoScale Operations Manager
- About Kernel-based Virtual Machine (KVM) virtualization discovery in Veritas InfoScale Operations Manager
- About Red Hat Enterprise Virtualization (RHEV) virtualization discovery in Veritas InfoScale Operations Manager
- About Microsoft Hyper-V virtualization discovery
- Virtual machine discovery in Microsoft Hyper-V
- Storage mapping discovery in Microsoft Hyper-V
- Server consolidation
- Physical to virtual migration
- Simplified management
- Application availability using Cluster Server
- About application availability options
- Cluster Server In a KVM Environment Architecture Summary
- VCS in host to provide the Virtual Machine high availability and ApplicationHA in guest to provide application high availability
- Virtual to Virtual clustering and failover
- I/O fencing support for Virtual to Virtual clustering
- Virtual to Physical clustering and failover
- Virtual machine availability
- Virtual machine availability for live migration
- Virtual to virtual clustering in a Red Hat Enterprise Virtualization environment
- Virtual to virtual clustering in a Microsoft Hyper-V environment
- Virtual to virtual clustering in a Oracle Virtual Machine (OVM) environment
- Disaster recovery for virtual machines in the Red Hat Enterprise Virtualization environment
- About disaster recovery for Red Hat Enterprise Virtualization virtual machines
- DR requirements in an RHEV environment
- Disaster recovery of volumes and file systems using Volume Replicator (VVR) and Veritas File Replicator (VFR)
- Configure Storage Foundation components as backend storage
- Configure VVR and VFR in VCS GCO option for replication between DR sites
- Configuring Red Hat Enterprise Virtualization (RHEV) virtual machines for disaster recovery using Cluster Server (VCS)
- Multi-tier business service support
- Managing Docker containers with InfoScale Enterprise
- About managing Docker containers with InfoScale Enterprise product
- About the Cluster Server agents for Docker, Docker Daemon, and Docker Container
- Managing storage capacity for Docker containers
- Offline migration of Docker containers
- Disaster recovery of volumes and file systems in Docker environments
- Limitations while managing Docker containers
- Application visibility and device discovery
- Section V. Reference
- Appendix A. Troubleshooting
- Troubleshooting virtual machine live migration
- Live migration storage connectivity in a Red Hat Enterprise Virtualization (RHEV) environment
- Troubleshooting Red Hat Enterprise Virtualization (RHEV) virtual machine disaster recovery (DR)
- The KVMGuest resource may remain in the online state even if storage connectivity to the host is lost
- VCS initiates a virtual machine failover if a host on which a virtual machine is running loses network connectivity
- Virtual machine start fails due to having the wrong boot order in RHEV environments
- Virtual machine hangs in the wait_for_launch state and fails to start in RHEV environments
- VCS fails to start a virtual machine on a host in another RHEV cluster if the DROpts attribute is not set
- Virtual machine fails to detect attached network cards in RHEV environments
- The KVMGuest agent behavior is undefined if any key of the RHEVMInfo attribute is updated using the -add or -delete options of the hares -modify command
- RHEV environment: If a node on which the VM is running panics or is forcefully shutdown, VCS is unable to start the VM on another node
- Appendix B. Sample configurations
- Appendix C. Where to find more information
- Appendix A. Troubleshooting
Configuring Veritas volume plugin with Docker 1.12 Swarm mode
Veritas volume plugin seamlessly works with Docker Swarm which allows container orchestration.
The following procedure uses
To configure Veritas volume plugin with Docker 1.12 Swarm mode
- Consider a docker swarm cluster of two nodes: docker1 and docker2.
# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS bd3ccjzm4qmo1ntil88r9q0la * docker1 Ready Active Leader d3rbrj0d4goyfckae0wozwwew docker2 Ready Active
- Create a Veritas volume.
# docker volume create -d veritas --name volume1 -o size=500m
- Create a MYSQL service from the swarm manager by providing source volume name.
Use
volume1as the source volume name that was created using the Veritas driver.# docker service create --replicas 1 --name sql1 --mount type=volume,source=volume1,target=/var/lib/mysql,readonly=false -e MYSQL_ROOT_PASSWORD=root123 mysql
# docker service ps sql1
ID NAME IMAGE NODE 6e2dlvx27iwrgrwdcdf43u4d9 sql1.1 mysql docker1 DESIRED STATE CURRENT STATE ERROR Running Running 44 seconds ago
Where, mysql service is scheduled on node docker1.
- Write some persistent data to the mysql database on node docker1.
# docker ps -a
CONTAINER ID IMAGE COMMAND d844dfa66f65 mysql:latest "docker-entrypoint.sh" CREATED STATUS A minute ago Up PORTS NAMES 3306/tcp sql1.1.6e2dlvx27iwrgrwdcdf43u4d9
- [root@docker1] # docker exec -it d844dfa66f65 bash
- root@d844dfa66f65: /# mysql -proot123
mysql> create database swarm_test; Query OK, 1 row affected (0.02 sec) mysql> use swarm_test; Database changed mysql> create table people (name text, age integer); Query OK, 0 rows affected (0.04 sec) mysql> insert into people values ('Person1', 29); Query OK, 1 row affected (0.00 sec) mysql> insert into people values ('Person2', 31); Query OK, 1 row affected (0.01 sec) mysql> select * from people; +---------+------+ | name | age | +---------+------+ | Person1 | 29 | | Person2 | 31 | +----------+------+ 2 rows in set (0.00 sec) - Simulate node failure on docker1. The MySQL service gets re-scheduled on another node by Docker Swarm.
[root@docker1]# docker node update --availability drain docker1
- [root@docker1]# docker service ps sql1
ID NAME IMAGE NODE 8rofbg2td0i7oubzyxpv0kvik sql1.1 mysql docker2 6e2dlvx27iwrgrwdcdf43u4d9 \_ sql1.1 mysql docker1 DESIRED STATE CURRENT STATE ERROR Running Running 47 seconds ago Shutdown Shutdown about a minute ago
The MySQL service gets re-scheduled on node docker2 by Docker Swarm.
- Verify on node docker2 that container with MySQL service is created and verify updated data in the database.
[root@docker2] # docker ps -a
CONTAINER ID IMAGE COMMAND 9fafb70c793b mysql:latest "docker-entrypoint.sh" CREATED STATUS About a minute ago Up PORTS NAMES 3306/tcp sql1.1.8rofbg2td0i7oubzyxpv0kvik
[root@docker2] # docker exec -it 9fafb70c793b bash
root@9fafb70c793b:/# mysql -proot123
mysql> use swarm_test; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> select * from people; +---------+------+ | name | age | +---------+------+ | Person1 | 29 | | Person2 | 31 | +----------+------+ 2 rows in set (0.00 sec)
In this procedure, as InfoScale storage made data volume available on the other node, container migration operation is successful.