Documente Academic
Documente Profesional
Documente Cultură
5.0
N18456C
Veritas Storage Foundation
Cross-Platform Data Sharing
Administrator’s Guide
Copyright © 2006 Symantec Corporation. All rights reserved.
Symantec, the Symantec Logo, Veritas and Veritas Storage Foundation are trademarks or
registered trademarks of Symantec Corporation or its affiliates in the U.S. and other
countries. Other names may be trademarks of their respective owners.
The product described in this document is distributed under licenses restricting its use,
copying, distribution, and decompilation/reverse engineering. No part of this document
may be reproduced in any form by any means without prior written authorization of
Symantec Corporation and its licensors, if any.
Symantec Corporation
20330 Stevens Creek Blvd.
Cupertino, CA 95014
www.symantec.com
Third-party legal notices
its copyright holder. All third-party copyrights associated with this product are
L.P.
Technical support
For technical assistance, visit http://support.veritas.com and select phone or
email support. Use the Knowledge Base search feature to access resources such
as TechNotes, product alerts, software downloads, hardware compatibility lists,
and our customer email notification service.
Contents
Notes ..............................................................................................................24
Examples .......................................................................................................24
Licensing ...............................................................................................................25
6 Contents
Moving objects between CDS disk groups and non-CDS disk groups .. 34
Changing the default CDS setting for disk group creation ................... 35
Contents 7
Glossary 63
Index 67
8 Contents
Chapter 1
Overview of CDS
This chapter presents an overview of the Cross-Platform Data Sharing (CDS)
feature of Symantec’s Veritas Storage FoundationTM software:
■ General concepts
■ CDS disk access and format
■ CDS disk groups
General concepts
CDS provides you with a foundation for moving data between different systems
within a heterogeneous environment. The machines may be running HP-UX,
AIX, Linux or the SolarisTM operating system (OS), and they may all have direct
access to physical devices holding data. CDS allows Symantec’s Veritas products
and applications to access data storage independently of the operating system
platform, enabling them to work transparently in heterogeneous environments.
The following levels in the device hierarchy, from disk through file system, must
provide support for CDS to be used:
■ End-user applications — application level
■ Veritas™ File System (VxFS) — file system level
■ Veritas™ Volume Manager (VxVM) — volume level
■ Operating system — device level
CDS is a license-enabled feature that is supported at the disk group level by
VxVM and at the file system level by VxFS.
CDS utilizes a new disk type (auto:cdsdisk). To effect data sharing, VxVM
supports a new disk group attribute (cds) and also supports different OS block
sizes.
10 Overview of CDS
General concepts
Note: Although CDS allows data volumes and their contents to be easily
migrated between heterogeneous systems, it does not enable concurrent access
from different types of platform unless this is supported at all levels that are
required.
Note: You do not need a file system in the stack if the operating system provides
access to raw disks and volumes, and the application can utilize them. In this
way, databases and other applications can have their data components built on
top of raw volumes without having a file system to store their data files.
Disk groups with version numbers less than 110 are not supported for the
Solaris OS on the x64 platform.
Note: Disks with format cdsdisk can only be added to disk groups with version
110 or later.
Note: With other (non-CDS) VxVM disk formats, the private and public regions
are aligned to the platform-specific OS block size.
Overview of CDS 13
CDS disk access and format
Platform block
The Platform Block resides on disk sector 0, and contains data specific to the
operating system for the platforms. It is necessary for proper interaction with
each of those platforms. The platform block allows a disk to perform as if it was
initialized by each of the specific platforms.
VxVM ID block
The VxVM ID block resides on the disk, and indicates the disk is under VxVM
control. It provides dynamic VxVM private region location and other
information.
All VxVM objects in a CDS disk group are aligned and sized so that any system
can access the object using its own representation of an I/O block. The CDS disk
14 Overview of CDS
CDS disk access and format
Note: On Solaris and Linux systems, the process of disk encapsulation places the
slices or partitions on a disk (which may contain data or file systems) under
VxVM control. On AIX and HP-UX systems, LVM volumes may similarly be
converted to VxVM volumes.
Device quotas
Device quotas limit the number of objects in the disk group which create
associated device nodes in the file system. (This is useful for disk groups which
share serially between Linux with a pre-2.6 kernel and other supported
platforms. Prior to the 2.6 kernel, Linux supported only 256 minor devices per
major device.)
You can limit the number of devices that can be created in a given CDS disk
group by setting the device quota (refer to “Setting device quotas for CDS disk
groups” on page 36).
When you create a device, an error is returned if the number of devices would
exceed the device quota. You then either need to increase the quota, or remove
some objects using device numbers, before the device can be created.
See also “Displaying device quotas for CDS disk groups” on page 40 for
instructions on displaying the device quota value.
Overview of CDS 15
Non-CDS disk groups
Alignment values
The disk group block alignment has two values: 1 block or 8k (8 kilobytes).
Alignment value 1
Note: Disk groups with version numbers less than 110 are not supported for the
Solaris OS on the x64 platform.
All disk group versions before version 110 must have an alignment value of 1.
Disk groups have an alignment value of 1 after upgrading from pre-version 110
to version 110 or later.
Encapsulated disks, which require disk cylinder alignment, have an alignment
value of 1.
Non-CDS disk groups version 110 and later can have either a value of 1 block or
8k.
Alignment value 8K
Non-CDS disk groups version 110 and later can have either a value of 1 block or
8k.
All CDS disk groups have an alignment value of 8k.
The alignment for all newly initialized disk groups in VxVM 4.0 or a later release
is 8k. This value (which is used when creating the disk group) cannot be
changed. However, the disk group alignment can be subsequently changed (refer
to “Changing the alignment of a non-CDS disk group” on page 33).
Note: The map layout within a Data Change Object (DCO) volume changed with
the release of VxVM 4.0 to version 20. This can accommodate both FastResync
and DRL maps within the DCO volume. The original version 0 layout for DCO
volumes only accommodates FastResync maps.
18 Overview of CDS
Disk group alignment
Chapter 2
Setting up your system
This chapter describes how to set up your initial CDS system. It includes
information on:
■ Creating CDS disks from uninitialized disks
■ Creating CDS disks from initialized VxVM disks
■ Creating CDS disk groups
■ Converting a non-CDS disk to a CDS disk
■ Converting a non-CDS disk group to a CDS disk group
■ Licensing
■ Defaults files
■ vxdiskadm
Using vxdisksetup
To create a CDS disk, use the vxdisksetup command:
# vxdisksetup -i disk
The format defaults to cdsdisk unless overridden by the /etc/default/
vxdisk file (refer to “Defaults files” on page 25).
Alternatively, you can override the default format by specifying the format
attribute:
# vxdisksetup -i disk format=cdsdisk
Using vxdiskadm
Use the “Add or initialize one or more disks” option. You are
prompted to specify the format.
Caution: On CDS disks, the CDS information occupies the first sector of that
disk, and there is no fdisk partition information. Attempting to create an fdisk
partition (for example, by using the fdisk or format commands) erases the CDS
information, and can cause data corruption..
Note: You cannot create a CDS disk group using the vxdiskadm command as part
of encapsulating, or LVM conversion.
When the vxdiskadm command initializes a disk into an existing CDS disk group,
the disk must have format cdsdisk.
The CDS attribute for the disk group remains unchanged (that is, you are not
given the option to change it).
Note: When initializing a disk, if the target disk group is an existing CDS disk
group, vxdiskadm will only allow the disk to be initialized as a CDS disk. If the
target disk group is a non-CDS disk group, the disk can be initialized as either a
CDS disk or a non-CDS disk.
22 Setting up your system
Converting a non-CDS disk to a CDS disk
Note: The existing DA record needs to have a type of auto in order to be re-
initialized as a CDS disk.
You can use vxcdsconvert to convert CDS disks either singly, or by disk group:
■ Use the disk keyword to specify a single disk for conversion. You might
consider this option, rather than converting the entire disk group, if you do
not want a CDS disk group. For example:
■ Where a disk in the non-CDS disk group has cross-platform exposure,
and you want other VxVM nodes to recognize the disk and not assume
it is available for initialization.
■ LVM on HP-UX and AIX, and Windows VxVM nodes need to recognize
CDS disks, but not attempt to initialize or manage them.
■ The intention is to move the disk into an existing CDS disk group.
■ Use the alldisks keyword to convert all the non-CDS disks in a disk group.
In addition, you can use the -o novolstop option to perform the conversion on-
line (that is, while access to the disk continues). However, this may greatly
increase the amount of time (and work) required for disk conversion as it may
involve evacuating objects from the disk, reinitializing the disk, and relocating
objects back to disk.
Alternatively, stop the application, and perform the conversion off-line. This
requires minimal offline time.
CDS provides the alignment and group keywords for disk group conversion:
■ Use the alignment keyword to specify alignment conversion. In this case,
disks are not converted, and an object relayout is performed on the disk
group. A successful completion results in an 8K-aligned disk group. You
might consider this option, rather than converting the entire disk group, if
you want to reduce the amount of work to be done for a later full conversion
to CDS disk group.
■ Use the group keyword to specify group conversion. This implies alldisk,
and will perform that function prior to object relayout. All the non-CDS
disks in the disk group are converted.
In addition, you can use the -o novolstop option to perform the conversion on-
line (that is, while use of the disk group continues). However, for a group
conversion, this may greatly increase the amount of time (and work) required
for conversion.
Alternatively, stop the application, and perform the conversion off-line. This
requires minimal offline time.
Note the following:
■ The disk group must be in pristine condition. That is:
■ It has no dissociated or disabled objects.
■ No sparse plexes are present.
■ There are no volumes requiring recovery or having pending snapshot
operations.
■ There are no objects in an error state.
■ Stopped (but startable) volumes will be started, for the duration of the
conversion only.
■ Conversion has the following side effects:
24 Setting up your system
Converting a non-CDS disk group to a CDS disk group
Notes
■ A non-CDS disk group will be upgraded (using the vxdg upgrade command).
Also, if the disk group was originally created by the conversion of an LVM
Volume Group (VG), then rolling back to the original LVM VG is not an
option. If you decide to go through with the conversion, the rollback records
for the disk group will be removed, so that an accidental rollback to an LVM
VG cannot be done.
■ If the non-CDS disk group has one or more disks that are not CDS disks,
these disks are converted to CDS disks. If you do not want one or more of
these disks to be converted, you need to move them out of the disk group (for
example, using vxdg move or split) prior to invoking the vxcdsconvert
group command.
■ If the non-CDS disk group does not have a CDS-compatible disk group
alignment, the objects need to go through relayout, so they have a CDS-
compatible alignment.
■ Unless the novolstop option is specified, applications using disks which
require format conversion must be terminated for the duration of the disk
conversion process.
■ Use of the novolstop option for the disk conversion piece may add a large
amount of work, as objects may need to be evacuated and then unrelocated
back.
Examples
■ Check if the disk group mydg and all its disks can be made portable, using the
command:
# vxcdsconvert -g mydg -A group
■ Make the disk group mydg and all its disks portable while its volumes are still
online. You can avoid using the novolstop option during disk conversion by
using the following sequence of commands:
Setting up your system 25
Licensing
■ Stop all applications that are using volumes on the disks requiring
format conversion.
■ Enter the command:
# vxcdsconvert -g mydg alldisks
■ Restart applications.
■ Enter the command:
# vxcdsconvert -g mydg group
■ Make the disk group, anodg, and all its disks, portable while its volumes are
still online, and allow subdisks to be evacuated to disks anodg11 through
anodg14 if required:
# vxcdsconvert -g anodg -o novolstop group \
move_subdisks_ok=yes evac_subdisks_ok=yes \
evac_disk_list=anodg11,anodg12,anodg13,anodg14
Licensing
The ability to create or import a CDS disk group is controlled by a CDS license.
CDS licenses are included as part of the Veritas Storage Foundation license.
You can verify the CDS enabling license by running the vxlicrep command, and
looking for this line in the output:
Cross-platform Data Sharing = Enabled
Defaults files
Several system defaults files in the /etc/default directory are of importance
for specifying the alignment of VxVM objects, the initialization or encapsulation
of VM disks, the conversion of LVM disks, and the conversion of disk groups and
their disks to the CDS-compatible format:
vxassist Specifies default values for the following parameters to the
vxcdsconvert command that have an effect on the alignment
of VxVM objects: dgalign_checking, diskalign, and
nodiskalign. See “Object alignment during volume
creation” on page 32, and the vxassist(1M) manual page for
more information.
vxcdsconvert Specifies default values for the following parameters to the
vxcdsconvert command: evac_disk_list,
evac_subdisks_ok, min_split_size,
26 Setting up your system
Defaults files
min_split_size=64k
move_subdisks_ok=yes
privlen=2048
split_subdisks_ok=move
privlen=2048
privlen=4096
privoffset=0
puboffset=1
In the defaults files, a line that is empty, or that begins with a ‘‘#’’ character in
the first column, is treated as a comment, and is ignored.
Apart from comment lines, all other lines must define attributes and their
values using the format attribute=value. Each line starts in the first column,
and is terminated by the value. No white space is allowed around the = sign.
28 Setting up your system
Defaults files
Chapter 3
Maintaining your system
This chapter describes the administration tasks that can be performed on CDS.
■ Disk tasks
■ Changing the default disk format setting
■ Restoring CDS disk labels
■ Disk group tasks
■ Changing the alignment of a disk group by encapsulation
■ Object alignment during volume creation
■ Changing the alignment of a non-CDS disk group
■ Determining the setting of the CDS attribute
■ Joining disk groups
■ Moving objects between CDS disk groups and non-CDS disk groups
■ Changing the default CDS setting for disk group creation
■ Creating non-CDS disk groups
■ Upgrading an older version non-CDS disk group
■ Replacing a disk in a CDS disk group
■ Setting device quotas for CDS disk groups
■ Setting DRL map size and log size
■ Displaying information
■ Displaying the disk group alignment
■ Displaying volume log map values
■ Listing offset and length information
■ Listing CDS disk groups
■ Listing disks
■ Displaying device quotas for CDS disk groups
30 Maintaining your system
Disk tasks
Disk tasks
The following disk tasks are supported:
■ Changing the default disk format setting
■ Restoring CDS disk labels
Primary labels are at sectors 0, 7, and 16; and a normal flush will not flush
sectors 7 and 16. Also, the private area is not updated as the disk is not in a disk
group. There is no means of finding a “good” private region to flush from. In this
case, it is possible to restore the CDS disk labels from the existing backups on
disk using the flush operation.
If a corruption happened after the labels were read and the disk is still online
and part of a disk group, then a flush operation will also flush the private region.
Caution: Caution and knowledge must be employed because the damage could
involve more than the CDS disk labels. If the damage is constrained to the first
128K (as would be the case if some entity on the fabric - such as a Windows box -
wrote a disk label to a disk which was actually a cdsdisk being used in some
disk group), then the disk flush would fix it.
Use the following command to rewrite the CDS ID information to a specific disk
(this rewrites all labels except sectors 7 and 16):
# vxdisk flush disk_accessname
Use the following command to rewrite all the disks in a CDS disk group (this
rewrites all labels except sectors 7 and 16):
# vxdg flush dg_name
Use the -f option with the vxdisk command to forcibly rewrite the AIX
coexistence label (sector 7), VxVM ID block (sector 16), and HP-UX Coexistence
Labels:
# vxdisk -f flush disk_accessname
This command rewrites all labels if there exists a valid VxVM ID block that
points to a valid private region.
Note: Sectors 7 and 16 are only rewritten if the -f flag is given. The reason for
this is that these sectors lay within the first track of the disk, and Windows
systems use the first track for their own purposes. In the example above where
the disk was taken offline due to label corruption, if it involved sectors 7 or 16,
then -f is required to fix the problem.
32 Maintaining your system
Disk group tasks
■ Moving objects between CDS disk groups and non-CDS disk groups
Note: If you are using the vxencap command to perform the encapsulation, the
alignment is carried out automatically without a confirmation prompt.
Note: For a CDS disk group, alignment can only take a value of 8k. Attempts to
set the alignment of a CDS disk group to 1 fail unless you first change it to a non-
CDS disk group.
To display the current alignment value, use the vxprint command as described
in “Displaying the disk group alignment” on page 38.
The operation to increase the alignment to 8K fails if objects exist in the disk
group that do not conform to the new alignment restrictions. In that case, use
the vxcdsconvert alignment command to change the layout of the objects as
described in “Converting a non-CDS disk group to a CDS disk group” on page 23:
# vxcdsconvert -g diskgroup [-A] [-d defaults_file] \
This command increases the alignment value of a disk group and its objects to
8K, without converting the disks.
The sequence 8K -> 1 -> 8K is possible only using vxdg set as long as the
configuration does not change after the 8K -> 1 transition.
NAME STATE ID
Group: dgTestSol2
dgid: 1063238039.206.vmesc1
import-id: 1024.205
flags: cds
version: 110
...
on
In these examples, the disk group, dgTestSol2, is shown as having the CDS flag
set.
Note: This command is not supported for the Solaris OS on the x64 platform.
Moving objects between CDS disk groups and non-CDS disk groups
Use the vxdg move command to move objects between CDS and non-CDS disk
groups. The alignment of a source non-CDS disk group must be 8K to allow
objects to be moved to a target CDS disk group. If objects are moved from a CDS
disk group to a target non-CDS disk group with an alignment of 1, the alignment
of the target disk group remains unchanged. Refer to the Veritas Volume
Manager Adminstrator’s Guide for examples of using this command.
Note: This command is not supported for the Solaris OS on the x64 platform.
Note: This command is not supported for the Solaris OS on the x64 platform.
Maintaining your system 35
Disk group tasks
Note: For a pre-version 110 DG, since the dg_align value is not stored in the
configuration database, it is set to 1 when the disk group is imported.
Disk groups with version numbers less than 110 are not supported for the
Solaris OS on the x64 platform.
Note: You must always perform a disk group conversion (using the
vxcdsconvert utility) to use the CDS feature.
Use the vxdg command to upgrade the non-CDS pre-version 110 disk group:
# vxdg upgrade dg
Note: After upgrading, the cds attribute is set to off, and the disk group retains
an alignment of 1.
# vxdg -k adddisk
where c1t0d1 is the device name of a Solaris disk that is currently being
reassigned to disk disk1. For other operating systems, use the appropriate
device name format, for example, hdisk# on AIX, and sdx on Linux.
Note: When replacing a disk in a CDS disk group, you cannot use a non-CDS disk
as the replacement.
logmap_len=len-bytes [drlloglen=len]
■ For CDS disk groups, the DRL map and log sizes are set to a minimum of
2*(DG alignment).
Maintaining your system 37
Disk group tasks
■ vxvol
loglen=264k logmap_len=2048
Note: When specifying a loglen attribute, specifying a value less than the
minimum required (twice the disk group alignment value) results in an error
message.
The value of logmap_len is in units of bytes, and the value of loglen is in units
of blocks. logmap_len cannot exceed the number of bytes in the on-disk map.
The number of bytes in the on-disk map can be calculated as follows:
[ROUND_DOWN(loglen/nmaps) - VOLDRL_HEADER_SIZE]
where nmaps is 2 for a private disk group or 33 for a shared disk group,
ROUND_DOWN() represents rounding down to a log map alignment boundary,
and the value of VOLDRL_HEADER_SIZE is 24.
Displaying information
This section describes:
■ Displaying traditional DRL map size and log size
■ Displaying the disk group alignment
■ Displaying volume log map values
■ Listing offset and length information
■ Listing CDS disk groups
■ Listing disks
■ Displaying device quotas for CDS disk groups
(disabled)
This indicates a log map alignment (logmap_align) value of 0, and a log map
length (logmap_len) value of 0.
If the log map is set and enabled, the command and results may be of the form:
# vxprint -lv drlvol
Volume: drlvol
info: len=20480
type: usetype=fsgen
assoc: plexes=drlvol-01,drlvol-02,drlvol-03
maplen=512 (enabled)
apprecov: seqno=0/0
recovery: mode=default
recov_id=0
path=/dev/vx/dsk/dgTestSol/drlvol
guid: {d968de3e-1dd1-11b2-8fc1-080020d223e5}
# vxprint -Gl
Listing disks
Use the vxdisk list command with the -b option to output all offset and length
information in units of 512 bytes. This enables consistent output from different
platforms. Without the -b option, this information is output with a value of
sectors that may differ between platforms.
When vxdisk -b list is used, the output also contains the b suffix, so that the
output can be fed back to vxmake.
The disk format is put in the TYPE column along with the auto type.
info: dgid=1027365608.1064.vmesc6
version: 110
activation: read-write
detach-policy: global
cds=on
The value of max on the devices line indicates the maximum number of
devices. In this example, the maximum number of devices is 32,000.
You can also use the following command to obtain the maximum number of
devices:
# vxprint -g dg1 -GF %maxdev
32000
Note: This command is not supported for the Solaris OS on the x64 platform.
system to look for the storage. Having done this, run either of the following
commands on the target system to have VxVM recognize the storage:
# vxdctl enable
# vxdisk scandisks
■ Do the disks contain partitions or slices? Both Solaris and Linux systems
maintain information about partitions or slices on disks. If you repartition a
disk after the target system was booted, use the appropriate command to
instruct the operating system to rescan the disk’s TOC or partition table. For
example, on a target Linux system, use the following command:
# blockdev --rereadpt
Having done this, run either of the following commands on the target
system to have VxVM recognize the storage:
# vxdctl enable
# vxdisk scandisks
■ Has the format of any of the disks changed since the target system was last
booted? For example, if you use the vxdisksetup -i command to format a
disk for VxVM on one system, the vxdisk list command on the target
system may still show the format as being auto:none. If so, use either of
the following commands on the target system to instruct VxVM to rescan
the format of the disks:
# vxdctl enable
# vxdisk scandisks
Chapter 4
File system considerations
This chapter describes Veritas File System (VxFS) support for cross-platform
data sharing:
■ Considerations about data in the file system
■ File system migration
■ Specifying the migration target
■ Using the fscdsadm command
■ One-time migration of a file system
■ Ongoing migration of a file system
■ Migrating a file system
44 File system considerations
Considerations about data in the file system
[,vxfs_version=vxfs_ver][bits=bits]
os_name=os_name Specifies the name of the target operating system to which the
file system is planned to be migrated. Possible values are HP
UX, AIX, SunOS, or Linux. The os_name field must be
specified if the target is specified.
vxfs_version=vxfs_version Specifies the VxFS release version that is in use at the target.
For example, 4.1 or 5.0.
bits=bits Specifies the kernel bits of the target. bits can have a value of
32 or 64 to indicate whether the target is running a 32-bit
kernel or 64-bit kernel.
While os_name must be specified for all fscdsadm invocations that permit the
target to be specified, all other target specifiers are optional and are available
for the user to fine tune the migration target specification.
46 File system considerations
Specifying the migration target
The CDS commands use the limits information available in the default CDS
limits file, /etc/vx/cdslimitstab. If the values for the optional target
specifiers are not specified, fscdsadm will choose the defaults for the specified
target based on the information available in the limits file that best fits the
specified target, and proceed with the CDS operation. The chosen defaults are
displayed to the user before proceeding with the migration.
To specify the target operating system and use defaults for the remainder
◆ os_name=AIX
Note: The file system migration sections below indicate when each command
should be used.
■ To ensure that there are no file system entities with metadata that exceed
the limits for a set of operating systems, enter:
# fscdsadm -v -t target mount_point
When a file system will be migrated on an ongoing basis between multiple
systems, the types of systems involved in these migrations are maintained in a
target_list file. Knowing what these targets are allows VxFS to determine
file system limits that are appropriate to all of these targets. The file system
limits that are enforced are file size, user ID, and group ID. The target_list
file is manipulated by the fscdsadm command as follows:
■ To add to the list of operating systems between which the file system will be
moved on an ongoing basis, enter:
# fscdsadm -o add -t target mount_point
■ To remove from the list of operating systems between which the file system
will be moved on an ongoing basis, enter:
# fscdsadm -o remove -t target mount_point
For both the add and remove commands, the target must be specified.
See “Specifying the migration target” on page 45.
■ To clear the list of operating systems between which the file system will be
moved, enter:
# fscdsadm -o none mount_point
■ To list the operating systems between which the file system will be moved,
enter:
# fscdsadm -o list mount_point
The limits implied by target_list are by default ignored. After manipulating
the target_list file, use the following commands to have the file system
enforce or ignore these limits.
■ To enforce established CDS limits on a file system, enter:
# fscdsadm -l enforce mount_point
■ To ignore established CDS limits on a file system, enter:
# fscdsadm -l ignore mount_point
48 File system considerations
One-time migration of a file system
■ To validate the file system for the targets in the target_list file, enter:
# fscdsadm -v mount_point
Various CDS statuses are maintained on a per-file system basis, including
the target_list file, the limits implied by the target_list file,
whether the limits are being enforced or ignored, and whether all files are
within the CDS limits for all targets in the target_list file.
■ To display the current CDS status of a file system, enter:
# fscdsadm -s mount_point
6 Make the physical storage and Volume Manager logical storage accessible on
the Linux system by exporting the disk group from the source system and
importing the disk group on the target system after resolving any other
physical storage attachment issues. See “Maintaining your system” on
page 29 for more information.
7 Mount the file system on the target system.
Caution: Prior to VxFS 4.0 and disk layout Version 6, VxFS did not officially
support moving file systems between different platforms, although in many
cases a user may have successfully done so. Do not move file systems between
platforms when using versions of VxFS prior to Version 4, or when using disk
layouts earlier than Version 6. Instead, upgrade to VxFS 4.0 or higher, and disk
layout Version 6 or later. Failure to upgrade before performing cross-platform
movement can result in data loss or data corruption.
Only file systems with Version 6 or later disk layout can be converted. If the
file system has an earlier disk layout version, convert the file system to
2 Perform a full file system back up. Failure to do so could result in data loss or
data corruption under some failure scenarios in which restoring from the
backup is required.
File system considerations 51
Migrating a file system
3 Designate a file system with free space where fscdsconv may create a file
that will contain recovery information for usage in the event of a failed
conversion. Depending on the nature of the file system to be converted, for
example if it is mirrored, you may wish to designate the recovery file to
reside in a file system with the same level of failure tolerance so as to reduce
the number of failure scenarios that would require the use of the backup
created in step 2.
4 Unmount the file system to be converted:
# umount mount_point
5 Use the fscdsconv command to export the file system to the required target:
# fscdsconv -f recovery_file -t target -e special
target specifies the system to which you are migrating the file system.
See “Specifying the migration target” on page 45.
recovery_file is the name of the recovery file to be created by the
fscdsconv command. special is the raw device or volume that contains
the file system to be converted. Include the file system chosen in step 3
when designating the recovery file. For example, if the file system chosen to
contain the recovery file is mounted on /data/fs3, the recovery file could
be specified as /data/fs3/jan04recovery. If there is not enough disk
space on the chosen file system for the recovery file to be created, the
conversion aborts and the file system to be converted is left intact.
Note: The recovery file is not only used for recovery purposes after a failure,
but is also used to perform the conversion. The directory that will contain
the recovery file should not allow non-system administrator users to
remove or replace the file, as this could lead to data loss or security
breaches. The file should be located in a directory that is not subject to
system or local scripts will remove the file after a system reboot, such as
that which occurs with the /tmp and /var/tmp directories on the Solaris
operating system.
The recovery file is almost always a sparse file. The disk utilization of this
file can best be determined by using the following command:
# du -sk filename
The recovery file is used only when the byte order of the file system must be
converted to suit the specified migration target.
If you are converting multiple file systems at the same time, which requires
the use of one recovery file per file system, record the names of the recovery
files and their corresponding file systems being converted in the event that
recovery from failures is required at a later time.
52 File system considerations
Migrating a file system
problems are addressed. There may be other causes of failure that would
require the use of the backup.
Note: Using the disk group maxdev attribute may reduce the likelihood that a
CDS disk group import on Linux with a per-2.6 kernel will exceed the maximum
number of devices.
database may have a hot backup mode that allows you to do this by
temporarily suspending writes to its tables.
3 Refresh the plexes of the snapshot volume using the following command:
# vxsnap -g datadg refresh snapvol source=yes syncing=yes
4 The applications can now be unquiesced. For example, if you temporarily
suspended updates to the volume by a database in step 2, release all the
tables from hot backup mode.
5 Use the vxsnap syncwait command to wait for the synchronization to
complete:
# vxsnap -g datadg syncwait snapvol
6 Check the integrity of the file system, and then mount it on a suitable mount
point:
# fsck -F vxfs /dev/vx/rdsk/datadg/snapvol
7 Confirm whether the file system can be converted to the target operating
system:
# fscdstask validate Linux /mnt
8 Unmount the snapshot:
# umount /mnt
9 Convert the file system to the opposite endian:
# fscdsconv -f /tmp/fs_recov/recov.file /dev/vx/dsk/datadg/\
snapvol
Note: This step is only required if the source and target systems have the
opposite endian configuration.
10 Split the snapshot volume into a new disk group, migdg, and deport that
disk group:
# vxdg split datadg migdg snapvol
Note: It may be necessary to reboot the Linux system so that it can detect
the disks.
12 Use the following commands to recover and restart the snapshot volume:
# vxrecover -g migdg -m snapvol
58 Cross-platform transfer
Data migration example
13 Check the integrity of the file system, and then mount it on a suitable mount
point:
# fsck -t vxfs /dev/vx/dsk/migdg/snapvol
Appendix B
Error codes and error
recovery
329 Cannot join a non-CDS disk group and Change the non-CDS disk group into a
a CDS disk group CDS disk group (or vice versa), then
retry the join operation.
330 Disk group is for a different platform Import the disk group on the correct
platform. It cannot be imported on
this platform.
331 Volume has a log which is not CDS To get a log which is CDS compatible;
compatible you need to stop the volume, if
currently active, then start the
volume. After the volume has been
successfully started, retry setting the
CDS attribute for the disk group.
332 License has expired, or is not Obtain a license from Symantec that
available for CDS enables the usage of CDS disk groups.
60 Error codes and error recovery€
334 Disk group alignment not CDS Change the alignment of the disk
compatible group to 8K and then retry setting the
CDS attribute for the disk group.
335 Subdisk length violates disk group Ensure that sub-disk length value is a
alignment multiple of 8K.
336 Subdisk offset violates disk group Ensure that sub-disk offset value is a
alignment multiple of 8K.
337 Subdisk plex offset violates disk Ensure that sub-disk plex offset value
group alignment is a multiple of 8K.
338 Plex stripe width violates disk group Ensure that plex stripe width value is
alignment a multiple of 8K.
339 Volume or log length violates disk Ensure that volume length value is a
group alignment multiple of 8K.
For volume log length; if you are using
vxassist to create the volume, then
you should set dgalign_checking
to round. This will ensure that the
log length is silently rounded to a
valid value.
340 Last disk media offset violates disk Reassociate the DM record prior to
group alignment upgrading.
Error codes and error recovery 61€
341 Too many device nodes in disk group Increase the number of device nodes
allowed in the disk group, if not
already at the maximum. Otherwise,
you need to remove volumes from the
disk group, possibly by splitting the
disk group.
342 Map length too large for current log Use a smaller map length for the
length DRL/DCM log, or increase the log
length and retry.
343 Volume log map alignment violates Remove the DRL/DCM log, then add it
disk group alignment back after changing the alignment of
the disk group.
345 Disk group contains an old-style RVG Import the disk group on the platform
which cannot be imported on this that created the RVG. To import the
platform disk group on this platform, first
remove the RVG on the creating
platform.
347 User transactions are disabled for the Retry the command as it was
disk group temporarily disallowed by the
vxcdsconvert command executing
at the same time.
to provide CDS. In contrast, a non-CDS disk group (that is, a back-rev disk group or a
current-rev disk group) cannot be used for CDS. A CDS disk group is a current-rev disk
group with the CDS attribute set for the disk group. A CDS disk group can only contain CDS
disks.
CFS
Cluster file system. A VxFS file system mounted on a selected volume in cluster (shared)
mode.
children
Objects that belong to an object group.
cluster
gap
A disk region that does not contain Veritas Volume Manager objects (subdisks).
HP-UX coexistence label
Data on disk which identifies the disk to the HP volume manager (LVM) as being controlled
by VxVM. The contents of this label are identical to the contents of the VxVM ID block.
mirror
A copy of a volume and its data. There can be several mirrors per volume. The terms mirror
node
In the VxVM tree, a node is an element attached to the tree.
object group
A group of objects of the same type. Each object group has a group icon and a group name.
In VxVM, object groups include disk groups, disks, volumes, controllers, free disk pool
disks, uninitialized disks, and file systems.
object tree
A dynamic hierarchical display of Veritas Volume Manager objects and other objects on the
system. Each node in the tree represents a group of objects of the same type.
platform block
Data placed in sector 0, which contains OS-specific data for a variety of platforms that
require its presence for proper interaction with each of those platforms. The platform
block allows a disk to masquerade as if it was initialized by each of the specific platforms.
plex
A copy of a volume and its data. There can be several plexes per volume. The terms mirror
private region
A region of a physical disk used to store private, structured VxVM information. The private
region contains a disk header, a table of contents, and a configuration database. The table
of contents maps the contents of the disk. The disk header contains a disk ID. All data in
public region
A region of a physical disk managed by VxVM that contains available space and is used for
allocating subdisks.
sector size
Sector size is an attribute of a disk drive (or SCSI LUN for an array-type device), which is set
when the drive is formatted. Sectors are the smallest addressable unit of storage on the
drive, and are the units in which the device performs I/O.
subdisk
A set of contiguous disk blocks that form a logical disk segment. Subdisks are associated
with plexes (mirrors) to form volumes.
uninitialized disks
Disks that are not under VxVM control.
66 Glossary€
volume
A virtual disk or entity that is made up of portions of one or more physical disks.
VxFS
Veritas File System.
VxVM
Veritas Volume Manager.
VxVM ID block
Data on disk that indicates the disk is under VxVM control. The VxVM ID Block provides
dynamic VxVM private region location, GUID, and other information.
Index
/etc/vx/darecs file 20
converting non-CDS disks to CDS 21
setting 36
LVM disks 30
disk types 12
disks
M
displaying device quotas 40
minor device numbers 15
displaying 38
offset information 39
setting 36
operating system data 11
DRL logs
creating 37
displaying 38
private region 12
setting 36
public region 12
E R
encapsulation 30
recovery file, cross-platform data sharing 51
replacing disks 35
fscdsadm 47
fscdsconv 50
S
I setting CDS disk group alignment 33
ID block 13
setting DRL log size 36
setting up 19
L
length listing 39
U
licensing 25
upgrading disk groups 35
listing disks 40
displaying 38
displaying 38, 39
setting 36
vxcdsconvert 22
Index 69
vxdctl enable 42
vxdg init 21
vxdg split 41
vxdisk scandisks 42
vxdiskadm 20, 21
vxdisksetup 19
VxVM
devices 10
vxvol 37
70 Index