Parallels Cloud Storage Administrator's Guide

Parallels Cloud Storage Administrator's Guide
Copyright © 1999-2012 Parallels IP Holdings GmbH and its affiliates. All rights reserved.
Parallels IP Holdings GmbH. Vordergasse 59 CH8200 Schaffhausen Switzerland Tel: + 41 526320 411 Fax: + 41 52672 2010 www.parallels.com
Copyright © 1999-2012 Parallels IP Holdings GmbH and its affiliates. All rights reserved.
This product is protected by United States and international copyright laws. The product’s underlying technology, patents, and trademarks are listed at http://www.parallels.com/trademarks.
Microsoft, Windows, Windows Server, Windows NT, Windows Vista, and MS-DOS are registered trademarks of Microsoft Corporation. Apple, Mac, the Mac logo, Mac OS, iPad, iPhone, iPod touch, FaceTime HD camera and iSight are trademarks of Apple Inc., registered in the US and other countries. Linux is a registered trademark of Linus Torvalds. All other marks and names mentioned herein may be trademarks of their respective owners.
Contents
Introduction ............................................................................................................... 6
About This Guide ............................................................................................................ 6
About Parallels Cloud Storage ......................................................................................... 6
Parallels Cloud Storage Architecture ................................................................................ 7
Parallels Cloud Storage Configurations ............................................................................ 9
Minimum Configuration .............................................................................................................9
Recommended Configuration ................................................................................................ 11
System Requirements ................................................................................................... 13
Network Requirements .................................................................................................. 15
Setting Up a Parallels Cloud Storage Cluster ........................................................ 17
Setup Process Overview ............................................................................................... 18
Configuring Cluster Discovery ........................................................................................ 19
Using DNS Records .............................................................................................................. 20
Setting Up Avahi .................................................................................................................... 22
Specifying MDS Servers Manually ......................................................................................... 23
Setting Up the First Metadata Server ............................................................................. 24
Stage 1: Preparing for Creating the MDS Server ................................................................... 24
Stage 2: Creating the MDS Server ......................................................................................... 25
Setting Up Chunk Servers ............................................................................................. 26
Stage 1: Preparing for Creating the Chunk Server ................................................................. 27
Stage 2: Creating the Chunk Server ...................................................................................... 28
Setting Up Clients ......................................................................................................... 29
Stage 1: Preparing for Mounting the Cluster .......................................................................... 29
Stage 2: Mounting the Cluster ............................................................................................... 30
Stage 3: Configuring Virtual Machines and Containers .......................................................... 30
Configuring Parallels Cloud Storage Clusters ........................................................ 31
Configuring MDS Servers .............................................................................................. 32
Adding MDS Servers ............................................................................................................. 33
Removing MDS Servers ........................................................................................................ 34
Configuring Chunk Servers ............................................................................................ 35
Contents
Adding New Chunk Servers to Increase Disk Space.............................................................. 35
Removing Chunk Servers ...................................................................................................... 36
Configuring Clients ........................................................................................................ 37
Adding Clients ....................................................................................................................... 37
Updating Clients .................................................................................................................... 37
Removing Clients .................................................................................................................. 37
Managing Cluster Parameters ........................................................................................ 38
Cluster Parameters Overview ................................................................................................ 38
Configuring Replication Parameters ....................................................................................... 39
Configuring Location Parameters .......................................................................................... 41
Accessing Parallels Cloud Storage Clusters via iSCSI ..................................................... 43
Managing Parallels Cloud Storage Licenses ................................................................... 44
Installing a License ................................................................................................................ 44
Updating a License ................................................................................................................ 45
Viewing the License Contents ................................................................................................ 46
Checking the License Status ................................................................................................. 47
Shutting Down Parallels Cloud Storage Clusters ............................................................ 48
Monitoring Parallels Cloud Storage Clusters ......................................................... 49
Monitoring General Cluster Parameters .......................................................................... 50
Monitoring Metadata Servers ......................................................................................... 52
Monitoring Chunk Servers ............................................................................................. 54
Understanding Disk Space Usage ......................................................................................... 56
Exploring Chunk States ......................................................................................................... 59
Monitoring Clients ......................................................................................................... 60
Monitoring Event Logs ................................................................................................... 62
Monitoring the Status of Replication Parameters ............................................................ 65
Managing Cluster Security ...................................................................................... 66
Security Considerations ................................................................................................. 66
Securing Server Communication in Clusters ................................................................... 67
Cluster Discovery Methods ............................................................................................ 69
Parallels Cloud Storage Ports ........................................................................................ 70
Password-Based Authentication .................................................................................... 73
Installations via PXE Servers .......................................................................................... 74
Contents
Maximizing Cluster Performance ............................................................................ 75
Exploring Possible Disk Drive Configurations .................................................................. 76
Carrying Out Performance Benchmarking ...................................................................... 77
Using 1 Gb and 10 Gb Networks ................................................................................... 77
Using SSD Drives .......................................................................................................... 78
Configuring SSD Drives for Write Journaling .......................................................................... 79
Configuring SSD Drives for Data Caching .............................................................................. 81
Appendices .............................................................................................................. 84
Appendix A - Troubleshooting ....................................................................................... 85
Submitting a Problem Report to Technical Support ............................................................... 85
Out of Disk Space ................................................................................................................. 86
Poor Write Performance ........................................................................................................ 86
Poor Disk I/O Performance .................................................................................................... 86
Hardware RAID Controller and Disk Write Caches ................................................................. 87
SSD Drives Ignore Disk Flushes ............................................................................................. 87
Avahi-Daemon Is not Running ............................................................................................... 88
Appendix B - Frequently Asked Questions ..................................................................... 89
General .................................................................................................................................. 89
Scalability and Performance .................................................................................................. 90
Availability .............................................................................................................................. 91
Cluster Operation .................................................................................................................. 92
Glossary ................................................................................................................... 94
Index ........................................................................................................................ 95
Network Requirements ........................................................................................... 15
C
HAPTER
1

Introduction

This chapter provides basic information about the Parallels Cloud Storage solution and this guide.
In This Chapter
About This Guide ................................................................................................... 6
About Parallels Cloud Storage ................................................................................ 6
Parallels Cloud Storage Architecture ....................................................................... 7
Parallels Cloud Storage Configurations ................................................................... 9
System Requirements ............................................................................................ 13

About This Guide

The guide is intended for system administrators interested in deploying Parallels Cloud Storage in their networks.
The document assumes that you have good knowledge of the Linux command-line interface and extensive experience working with local networks.

About Parallels Cloud Storage

Parallels Cloud Storage is a solution allowing you to quickly and easily transform low-cost commodity storage hardware and network equipment into a protected enterprise-level storage, like SAN (Storage Area Network) and NAS (Network Attached Storage).
Parallels Cloud Storage is optimized for storing large amounts of data and provides replication, high-availability, and self-healing features for your data. Using Parallels Cloud Storage, you can safely store and run Parallels virtual machines and Containers, migrate them with zero downtime across physical hosts, provide high availability for your Parallels Cloud Server installations, and much more.
Introduction

Parallels Cloud Storage Architecture

Before starting the deployment process, you should have a clear idea of the Parallels Cloud Storage infrastructure. A typical Parallels Cloud Storage is shown below.
The basic component of Parallels Cloud Storage is a cluster. The cluster is a group of physical computers connected to the same Ethernet network and performing the following roles:
chunk servers
metadata servers
client computers (or clients)
Brief Overview
All data in a Parallels Cloud Storage cluster, including Parallels virtual machine and Container disk images, is stored in the form of fixed-size chunks on chunk servers. The cluster automatically replicates the chunks and distributes them across the available chunk servers to provide high availability of data.
7
Introduction
To keep track of data chunks and their replicas, the cluster stores metadata about them on metadata (MDS) servers. The central MDS server, called the master MDS server, monitors all cluster activity and keeps metadata current.
Clients manipulate data stored in the cluster by sending different types of file requests, such as modifying an existing file or creating a new one.
Chunk Servers
Chunk servers store all the data, including the contents of virtual machines and Containers, in the form of fixed-size chunks and provide access to these chunks. All data chunks are replicated and the replicas are kept on different chunk servers to achieve high availability. If one of the chunk servers goes down, the other chunk servers will continue providing the data chunks that were stored on the failed server.
Metadata Servers
Metadata (MDS) servers store metadata about chunk servers and control how files keeping the contents of virtual machines and Containers are split into chunks and where these chunks are located. MDS servers also ensure that a cluster has enough chunk replicas and store a global log of all important events that happen in the cluster.
To provide high availability of a Parallels Cloud Storage cluster, you need to set up several MDS servers in the cluster. In this case, if one MDS server goes offline, another MDS server will continue keeping control over the cluster.
Note: MDS servers deal with processing metadata only and do not normally participate in any read/write operations related to data chunks.
Clients
Clients are computers with Parallels Cloud Server 6.0 from where you run virtual machines and Containers stored in a Parallels Cloud Storage cluster.
Notes:
1. You can set up any computer in the cluster to perform the role of a metadata server, chunk server, or client. You can also assign two or all three roles to one and the same computer. For example, you can configure a computer to act as a client by installing Parallels Cloud Server 6.0 on it and running virtual machines and Containers from the computer. At the same time, if you want this computer to allocate its local disk space to the cluster, you can set it up as a chunk server.
2. Though Parallels Cloud Storage can be mounted as a file system, it is not a POSIX-compliant file system and lacks some POSIX features like ACL, user and group credentials, hardlinks, and some others.
8
Introduction

Parallels Cloud Storage Configurations

This section provides information on two Parallels Cloud Storage configurations:
Minimum configuration (p. 9). You can create the minimum configuration for evaluating the
Parallels Cloud Storage functionality. This configuration, however, is not recommended for use in production environments.
Recommended configuration (p. 11). You can use the recommended Parallels Cloud Storage
configuration in a production environment "as is" or adopt it to meet your needs.

Minimum Configuration

The minimum hardware configuration for deploying a Parallels Cloud Storage cluster is given below:
Server Role Number of Servers
Metadata Server
Chunk Server
Client
Total number of servers
1 (can be shared with chunk servers and clients)
1 (can be shared with metadata servers and clients)
1 (can be shared with chunk and metadata servers)
with sharing roles: 1 without sharing roles: 3
Graphically, the minimum configuration can be represented as follows:
9
Introduction
For a Parallels Cloud Storage cluster to function, it must have at least one MDS server, one chunk server, and one client. The minimum configuration has two main limitations:
1 The cluster has one metadata server, which presents a single point of failure. If the metadata
server fails, the entire Parallels Cloud Storage cluster will become non-operational.
2 The cluster has one chunk server that can store only one chunk replica. If the chunk server fails,
the cluster will suspend all operations with chunks until a new chunk server is added to the cluster.
10
Introduction

Recommended Configuration

The table below lists two of the recommended configurations for deploying Parallels Cloud Storage clusters.
Metadata Server Chunk Server Total Number of Servers
3
(can be shared with chunk servers and clients)
5 (can be shared with metadata servers and clients)
Clients
3-9
(can be shared with chunk servers and clients)
10 or more (can be shared with chunk servers and clients)
1 or more
You can include any number of clients in the cluster. For example, if you have 5 servers with Parallels Cloud Server, you can configure them all to act as clients.
You can share servers acting as clients with chunk and metadata servers. For example, you can have 5 physical servers and configure each of them to simultaneously act as an MDS server, a chunk server, and a client.
3 or more (depending on the number of clients and chunk severs and whether they share roles)
5 or more (depending on the number of clients and chunk severs and whether they share roles)
A recommended configuration should ensure that your cluster can continue operating even if one or more MDS and chunk servers fail. For example, the figure below shows a configuration with 3 MDS servers, 5 chunk servers, and 3 clients. 3 physical servers share the server roles while two physical servers act as chunk servers only.
11
Introduction
If you deploy this configuration, you will be able to survive the loss of:
1 MDS server. In a setup with 3 MDS servers, the majority of MDS servers are achieved when
at least 2 of 3 servers are online, so your cluster will continue operating if 1 MDS server goes offline.
2 chunk servers. A setup with 5 chunk servers assumes that you set the chunk replication
parameter to 3 replicas per each data chunk. Initially, this parameter is set to 1 replica, which is sufficient to evaluate the Parallels Cloud Storage functionality using one server only. In production, however, to provide high availability for your data, you need to configure each data chunk to have at least three replicas. This requires at least three chunk servers to be set up in the cluster. By configuring 5 chunk servers, you ensure that the cluster will still be operational even if 2 chunk servers fail.
For information on configuring the chunk replication parameter, see Configuring Replication Parameters (p. 39).
12
Introduction

System Requirements

Before setting up a Parallels Cloud Storage cluster, make sure you have all the necessary equipment at hand. You are also recommended to:
Read Exploring Possible Disk Drive Configurations (p. 76) to ensure that your RAID
configuration is optimized for best performance.
Consult Using SSD Drives (p. 78) to learn how you can increase the cluster performance by
configuring SSD drivers for write journaling and data caching.
Check Troubleshooting (p. 85) for common hardware issues and misconfigurations that may
affect your cluster performance and lead to data inconsistency and corruption.
Metadata Servers
A metadata server must meet the following requirements:
Software: Parallels Cloud Server 6.0
• RAM: 2 GB per each 512 TB of storage
Disk space: 10 GB or more
• Network:
• 1 or more Ethernet adapters (1 Gb or faster)
a static IP address for each Ethernet adapter
Chunk Servers
A chunk server must run Parallels Cloud Server 6.0 and have at least one Ethernet adapter (1 Gb or faster) installed. Chunk servers can allocate any amount of available local disk space to a Parallels Cloud Storage cluster and do not require more than 1 GB of RAM.
Clients
A client computer must run Parallels Cloud Server 6.0 and have at least one Ethernet adapter (1 Gb or faster) installed. There are no special requirements to the amount of RAM and disk space that must be available on a client, except for the general recommendations for running the Parallels Cloud Server software.
13
Introduction
Notes:
1. You can set up any computer in the cluster to perform the role of a metadata server, chunk server, or client. You can also assign two or all three roles to one and the same computer. For example, you can configure a computer to act as a client by installing Parallels Cloud Server 6.0 on it and running virtual machines and Containers from the computer. At the same time, if you want this computer to allocate its local disk space to the cluster, you can set it up as a chunk server.
2. For hard disk requirements and the recommended partitioning scheme for servers that run Parallels Cloud Server and participate in clusters, see the Hardware Compatibility section in the Parallels Cloud Server 6.0 Installation Guide.
14
Introduction

Network Requirements

When planning your network, make sure that it
• operates at 1 Gb/s or higher
has non-blocking Ethernet switches
You should use separate networks and Ethernet adapters for user and cluster traffic. This will prevent possible I/O performance degradation in your cluster by external traffic. Besides, if a cluster is accessible from public networks (e.g., from the Internet), it may become the target of Denial-of­Service attacks, and the entire cluster I/O subsystem may get stuck.
The figure below shows a sample network configuration for Parallels Cloud Storage.
15
Introduction
In this network configuration:
BackNet is a private network used solely for interconnection and intercommunication of servers in the cluster and is not available from the public network. All servers in the cluster are connected to this network via one of their network cards.
FrontNet is a public network customers use to access their virtual machines and Containers in the Parallels Cloud Storage cluster.
Note: To learn more about Parallels Cloud Storage networks (in particular, how to bind chunk servers to specific IP addresses), see Securing Server Communication in Clusters (p. 67).
16
Setting Up Clients .................................................................................................. 29
C
HAPTER
2

Setting Up a Parallels Cloud Storage Cluster

This chapter provides information on setting up a Parallels Cloud Storage cluster. It starts with an overview of the Parallels Cloud Storage setup process and then describes each setup step in detail.
In This Chapter
Setup Process Overview ......................................................................................... 18
Configuring Cluster Discovery ................................................................................. 19
Setting Up the First Metadata Server....................................................................... 24
Setting Up Chunk Servers ...................................................................................... 26
Setting Up a Parallels Cloud Storage Cluster

Setup Process Overview

The process of setting up a Parallels Cloud Storage cluster includes these steps:
1 Configuring Parallels Cloud Storage cluster discovery.
In this step, you define the way of detecting a cluster name and resolving the detected name into the IP address of an MDS server. For more on this step, see Configuring Parallels Cloud Storage Discovery (p. 19).
2 Setting up metadata servers.
In this step, you create and configure metadata servers for storing metadata about chunk servers and data chunks. For more on this step, see Setting Up the First Metadata Server (p.
24).
3 Setting up chunk servers.
In this step, you create and configure chunk servers for storing the actual content of virtual machines and Containers in data chunks. For more on this step, see Setting Up Chunk Servers (p. 26).
4 Setting up clients.
In this step, you create and configure clients from where you will access the Parallels Cloud Storage cluster and run virtual machines and Containers. For more on this step, see Setting Up Clients (p. 29).
Note: You can also set up a Parallels Cloud Storage using the Parallels Cloud Server 6.0 installer. It automatically configures your system as a metadata server, chunk server, or client. For detailed information on this, see the Parallels Cloud Server 6.0 Installation Guide.
18
Setting Up a Parallels Cloud Storage Cluster

Configuring Cluster Discovery

Parallels Cloud Storage discovery is the process of:
1 Detecting all available cluster names on the network. Each Parallels Cloud Storage cluster is
identified by a unique name. All cluster tools use this name when performing specific operations on the cluster or monitoring its health and status.
2 Resolving the detected cluster names into the network addresses of MDS servers. MDS servers
are the central components of any cluster, so all cluster tools must be able to discover their IP addresses.
To set up cluster discovery in your network, you can use one of the following techniques:
(recommended) DNS records (p. 20)
Avahi (p. 22)
You can also manually specify the information about metadata servers (p. 23) when setting up or configuring the cluster.
19
Setting Up a Parallels Cloud Storage Cluster

Using DNS Records

The recommended way of configuring cluster discovery is to use special DNS records. The process of setting up this type of cluster discovery includes two steps:
1 Defining DNS TXT records or enabling DNS zone transfers to discover the unique names of
available clusters.
2 Resolving the detected cluster names into the IP addresses of MDS servers using DNS SRV
records.
Discovering Cluster Names
The easiest and most efficient way of discovering the names of clusters in your network is to specify all cluster names in pstorage_clusters TXT records of DNS zone files. The following example provides a sample of valid TXT record formats for Parallels Cloud Storage clusters:
pstorage_clusters 300 IN TXT "cluster1,cluster2" "cluster3,cluster4" pstorage_clusters 300 IN TXT "cluster5" pstorage_clusters 300 IN TXT "cluster6" "cluster7"
Another way of discovering cluster names in your network is to use DNS zone transfers. Once DNS zone transfers are enabled, cluster tools will be able to retrieve all DNS SRV records (see Resolving MDS Addresses below) from DNS zone files and extract cluster names from these records.
After you set up cluster discovery via DNS TXT records or DNS zone transfers, you can run the pstorage discover command on any of the cluster servers to discover the names of all clusters in your network:
# pstorage discover
02-10-12 13:16:46.233 Discovering using DNS TXT records: OK 02-10-12 13:16:46.308 Discovering using DNS zone transfer: FAIL 02-10-12 13:16:47.313 Discovering using Avahi: FAIL pcs1 pcs2 pcs3
The example pstorage output shows that:
Clusters names are discovered via the DNS TXT records.
Three clusters with the names of pcs1, pcs2, and pcs3 are currently set up on the network.
Resolving MDS Addresses
To resolve the detected cluster names into the IP addresses of MDS servers, you use DNS Service (SRV) records. An SRV record pointing to an MDS server must have the following format:
_pstorage._tcp.CLUSTER_NAME
where
_pstorage is a symbolic name reserved for Parallels Cloud Storage.
20
Setting Up a Parallels Cloud Storage Cluster
_tcp denotes the TCP protocol used for communication in the cluster.
CLUSTER_NAME is the name of the Parallels Cloud Storage cluster for which the record is valid.
The following example shows a DNS zone file that contains records for three MDS servers listening on the default port 2510 and configured for the pcs1 cluster:
$TTL 1H @ IN SOA ns rname.invalid. (1995032001 5H 10M 1D 3H) NS @ A 192.168.100.1 s1 A 192.168.100.1 s2 A 192.168.100.2 s3 A 192.168.100.3 ; SERVICE SECTION ; MDS for the 'pcs1' cluster runs on s1.pcs.test and listens on port 2510 _pstorage._tcp.pcs1 SRV 0 1 2510 s1 ; MDS for the 'pcs1' cluster runs on s2.pcs.test and listens on port 2510 _pstorage._tcp.pcs1 SRV 0 1 2510 s2 ; MDS for the 'pcs1' cluster runs on s3.pcs.test and listens on port 2510 _pstorage._tcp.pcs1 SRV 0 1 2510 s3 ; eof
Once you configure DNS SRV records for the pcs1 cluster, you can list them by issuing the following SRV query:
# host -t SRV _pstorage._tcp.pcs1
_pstorage._tcp.pcs1.pcs.test has SRV record 0 1 2510 s1.pcs.test. _pstorage._tcp.pcs1.pcs.test has SRV record 0 1 2510 s2.pcs.test. _pstorage._tcp.pcs1.pcs.test has SRV record 0 1 2510 s3.pcs.test.
21
Setting Up a Parallels Cloud Storage Cluster

Setting Up Avahi

Avahi (a free zeroconf implementation, http://avahi.org) is another method of discovering cluster names and resolving the discovered names into the IP addresses of running MDS servers. This method does not require any special configuration efforts on your part, except for the following:
Making sure that the avahi-daemon service is running on all servers in your cluster. You can use the following command to check that the service is up and running:
# service avahi-daemon status
Ensuring that multicasts are supported and enabled on your network.
To enhance cluster security in a cluster setup with Avahi, you are strongly recommended to allow only the use of network interface cards that belong to the cluster BackNet. To do this, configure the allow-interfaces parameter in the /etc/avahi/avahi-daemon.conf file by setting its value to the names of the allowed network cards. Configure this file on all servers in the cluster.
Warnings:
1. Avahi auto-discovery can be used for testing and evaluating the Parallels Cloud Storage functionality, but this cluster discovery method is not recommended for use in production due to security reasons. Malicious users can potentially perform DoS attacks on the Avahi service even if you use security certificates for authentication in your network.
2. Avahi discovery does not work if services are running in Containers.
3. If you plan to use Avahi auto-discovery, make sure that all servers you plan to include in the cluster have unique hostnames.
22
Setting Up a Parallels Cloud Storage Cluster

Specifying MDS Servers Manually

If you cannot configure the DNS records and Avahi discovery methods in your network, you need to manually specify IP addresses of running MDS servers in the cluster each time you do the following:
Add a new MDS server to a cluster. For details, see Adding and Removing MDS Servers (p.
32).
Add a new chunk server to a cluster. For details, see Setting Up Chunk Servers (p. 26).
Set up a new client for a cluster. For details, see Setting Up Clients (p. 29).
To specify an IP address of an MDS server manually, create the bs.list file in the /etc/pstorage/clusters/Cluster_Name directory (make this directory if it does not exist)
and specify in it the IP address and port to use for connecting to the MDS server. For example:
# echo "10.10.100.101:2510" >> /etc/pstorage/clusters/pcs1/bs.list # echo "10.10.100.102:2510" >> /etc/pstorage/clusters/pcs1/bs.list
This command:
1 Assumes that you are configuring discovery for the pcs1 cluster (thus, the directory name of
/etc/pstorage/clusters/pcs1).
2 Creates the /etc/pstorage/clusters/pcs1/bs.list file on the server.
3 Adds the information on two MDS servers with IP addresses 10.10.100.101 and
10.10.100.102 to the bs.list file.
23
Setting Up a Parallels Cloud Storage Cluster

Setting Up the First Metadata Server

Setting up an MDS server is the first step in creating a Parallels Cloud Storage cluster. You can add more MDS servers later to provide better availability of your cluster, as described in Adding and Removing MDS Servers (p. 32).
The process of setting up the first MDS server (called master MDS server) and, thus, of creating a cluster includes two stages:
1 Preparing for creating the MDS server (p. 24).
2 Creating the MDS server (p. 25).

Stage 1: Preparing for Creating the MDS Server

To prepare for making the MDS server, do the following:
1 Choose a name for the cluster that will uniquely identify it among other clusters in your network.
A name may contain the characters a-z, A-Z, 0-9, dash (-), and underscore (_). The examples used throughout this guide assume that the cluster name is pcs1.
Note: When choosing a name for the cluster, make sure it is unique on your network. Also, do not use names that were once assigned to other clusters in your network, even if these clusters do not exist any more. This will help you avoid possible problems with services from previous cluster setups that might still be running and trying to operate on the new cluster. Though such operations will not succeed, they can make your work as a cluster administrator more difficult.
2 Log in to the computer you want to configure as a metadata server as root or as a user with
root privileges.
3 Download and install the following RPM packages on the computer: pstorage-ctl,
pstorage-libs-shared, and pstorage-metadata-server.
The packages are available in the Parallels Cloud Server remote repository (this repository is automatically configured for your system when you install Parallels Cloud Server) and can be installed with this command:
# yum install pstorage-metadata-server
4 Make sure that cluster discovery is configured in your network. For details, see Configuring
Cluster Discovery (p. 19).
For example, if you are evaluating Parallels Cloud Storage functionality and using Avahi to discover clusters, you need to (1) start the avahi-daemon service, if it is not running on the server, and (2) configure it to start automatically when the MDS server boots:
# service avahi-daemon start # chkconfig avahi-daemon on
After you complete the steps above, you are ready to create the MDS server.
24
Setting Up a Parallels Cloud Storage Cluster

Stage 2: Creating the MDS Server

To create the MDS server, you use the pstorage make-mds command, for example:
# pstorage -c pcs1 make-mds -I -a 10.30.100.101 -r /pstorage/pcs1-mds -p
This command does the following:
1 Asks you for a password to use for password-based authentication in your cluster. Password-
based authentication enhances security, requiring each server to be authenticated before it can be included in the cluster. The password you specify is encrypted and saved into the /etc/pstorage/clusters/pcs1/auth_digest.key file on the MDS server.
2 Creates the Parallels Cloud Storage cluster with the name of pcs1.
3 Creates the metadata server and configures the IP address of 10.10.100.101 for
communication with this server. By default, Parallels Cloud Storage uses ports 2510 and 2511 to communicate with MDS servers. If necessary, you can replace the default ports with your own ones by reserving two unoccupied consecutive ports and specifying the first one after the IP address of your MDS server (e.g., -a 10.30.100.101:4110 if your custom ports are 4110 and 4111).
Replace 10.10.100.101 in the example above with the IP address of your own MDS server. The specified IP address must be (1) static (or in the case of using DHCP, mapped to the MAC address of the MDS server) and (2) chosen from the range of IP addresses on the BackNet network dedicated to your Parallels Cloud Storage cluster. See Network Requirements (p. 15) for details.
4 Creates a journal in the /pstorage/pcs1-mds directory on the MDS server and adds the
information about the pcs1 cluster to it. When choosing a directory for storing the journal, make sure that the partition where the directory is located has at least 10 GB of free disk space.
After you have created the MDS server, start the MDS management service (pstorage-mdsd) and configure it to start automatically when the server boots:
# service pstorage-mdsd start # chkconfig pstorage-mdsd on
For information on including additional MDS servers in a Parallels Cloud Storage cluster, see Adding and Removing MDS Servers (p. 32).
25
Setting Up a Parallels Cloud Storage Cluster

Setting Up Chunk Servers

A chunk server stores actual data of virtual machines and Containers and services requests to it. All data is split into chunks and can be stored in a Parallels Cloud Storage cluster in multiple copies called replicas.
Initially, any cluster is configured to have only one replica per each data chunk, which is sufficient to evaluate the Parallels Cloud Storage functionality using one server only. In production, however, to provide high availability for your data, you need to configure each data chunk to have at least three replicas. This requires at least three chunk servers to be set up in the cluster. You can modify the default replication parameter using the pstorage utility. For details, see Configuring Replication Parameters (p. 39).
The process of setting up a chunk server includes two stages:
1 Preparing for creating the chunk server (p. 27).
2 Creating the chunk server (p. 28).
26
Setting Up a Parallels Cloud Storage Cluster

Stage 1: Preparing for Creating the Chunk Server

To prepare for creating the chunk server, do the following:
1 Log in to the computer you want to act as a chunk server as root or as a user with root
privileges.
2 Download and install the following RPM packages: pstorage-ctl, pstorage-libs-
shared, and pstorage-chunk-server.
These packages are available in the Parallels Cloud Server remote repository (this repository is automatically configured for your system when you install Parallels Cloud Server) and can be installed with this command:
# yum install pstorage-chunk-server
3 Make sure that cluster discovery is configured for the server. For details, see Configuring
Cluster Discovery (p. 19).
For example, if you are evaluating Parallels Cloud Storage functionality and using Avahi to discover clusters, you need to (1) start the avahi-daemon service, if it is not running on the server, and (2) configure it to start automatically when the chunk server boots:
# service avahi-daemon start # chkconfig avahi-daemon on
4 Authenticate the server in the cluster. This step is required only if the server where you are
setting up the chunk server has never been authenticated in the cluster before.
For example, you can skip this step if this is the same server where you set up the first MDS server. Otherwise, run the following command to authenticate the server in the cluster:
# pstorage -c pcs1 auth-node
Please enter password for cluster:
During its execution, the command asks you for the password to validate the server. Type the password you specified when setting up the first MDS server and press Enter. pstorage then compares the provided password with the one stored on the MDS server, and if the passwords match, successfully authenticates the server.
Once the authentication is complete, you can create the chunk server.
27
Setting Up a Parallels Cloud Storage Cluster

Stage 2: Creating the Chunk Server

To create the chunk server, you use the pstorage make-cs command, for example:
# pstorage -c pcs1 make-cs -r /pstorage/pcs1-cs -t 1
This command
1 Makes the /pstorage/pcs1-cs directory on your computer and configures it for storing
data chunks.
2 Configures your computer as a chunk server and joins it to the pcs1 cluster.
3 Assigns the chunk server to storage tier 1. If you omit the -t option, Parallels Cloud Storage
will assign the chunk server to the default storage tier 0.
Storage tiers allow you to keep different kinds of data on different chunk servers. For details, see Configuring Location Parameters (p. 41).
After you have created the chunk server, start the MDS management service (pstorage-csd) and configure it to start automatically when the chunk server boots:
# service pstorage-csd start # chkconfig pstorage-csd on
Once you set up the first chunk server, proceed with creating other chunk servers.
28
Setting Up a Parallels Cloud Storage Cluster

Setting Up Clients

The process of setting up a client includes three stages:
1 Preparing for mounting the Parallels Cloud Storage cluster to the client (p. 29).
2 Mounting the cluster (p. 30).
3 Configuring virtual machines and Containers to be stored in the cluster (p. 30).

Stage 1: Preparing for Mounting the Cluster

To prepare for mounting the Parallels Cloud Storage cluster to the client:
1 Log in to the server you want to act as a client as root or as a user with root privileges.
2 Download and install the pstorage-libs-shared and pstorage-client RPM
packages.
These packages are available in the Parallels Cloud Server remote repository (this repository is automatically configured for your system when you install Parallels Cloud Server) and can be installed with this command:
# yum install pstorage-client
3 Create the directory to mount the Parallels Cloud Storage cluster to, for example:
# mkdir -p /pstorage/pcs1
4 Make sure that cluster discovery is configured in your network. For details, see Configuring
Cluster Discovery (p. 19).
For example, if you are evaluating Parallels Cloud Storage functionality and using Avahi to discover clusters, you need to (1) start the avahi-daemon service, if it is not running on the server, and (2) configure it to start automatically on the client boot:
# service avahi-daemon start # chkconfig avahi-daemon on
5 Authenticate the server in the cluster. This step is required only if the server where you are
setting up the client has never been authenticated in the cluster before.
For example, you can skip this step if this is the same server where you set up the first MDS server or some of the chunk servers. Otherwise, run the following command to authenticate the server in the cluster:
# pstorage -c pcs1 auth-node
Please enter password for cluster:
During its execution, the command asks you for the password to validate the server. Type the password you specified when setting up the first MDS server and press Enter. pstorage then compares the provided password with the one stored on the MDS server, and if the passwords match, successfully authenticates the server.
29
Loading...
+ 67 hidden pages