PRIMECLUSTER Global Disk Services Configuration and Administration Guide 4.2 (Linux)
Contents PreviousNext

Appendix D Command Reference

D.20 Volume Expansion Using Commands [Itanium]

This section explains the procedural flow for expansion of /, /usr, and /var file systems with the snapshot functions of GDS Snapshot that can be performed while operations are running.

[Procedure]

Assuming the configuration as below, the procedures for expanding /var file system space are explained.

As shown in the following figure, the / file system must be transferred to another volume no matter whether or not it is expanded.




The cylinder sizes of keep disks Root1 and Root3 must match.


System disk mirroring is not a requirement. The configuration without sdb and sdd that are shown in the figure above is also supported. However, in systems that require high availability, it is recommended to use the mirroring configuration as above.

1) Mirroring the system disk


1-1) Stop the running application programs.

In order to ensure mirroring definition, all the running application programs must be stopped. When higher safety is required, create system disk backups.


1-2) Register the system disk to the root class.

# sdxdisk -M -c System -a type=root -d sda=Root1:keep,sdb=Root2:undef


1-3) Connect the system disk to a group.

# sdxdisk -C -c System -g Group1 -d Root1,Root2 -v 1=swap:on,2=usr:on,3=boot:on,4=efi:on, 5=root:on,6=var:on


1-4) Check that mirroring definition is completed.

# sdxroot -M -c System -d Root1


1-5) Reboot the system.

# shutdown -r now


1-6) Check that mirroring is in effect.

Using the mount(8) command and the sdxinfo command, make sure that the system disk has been mirrored properly.


2) Creating proxy volumes

Create proxy volumes for the / file system and the expanded /var file system. At this point, one keep disk only should be connected to the group that will include the proxy volumes. This example shows the procedure for creating proxy volumes in the following configuration.




The disk must have sufficient free disk space following the last block of the proxy volume for the /var file system to be expanded.


2-1) Check the current volume sizes.

# sdxinfo -V -c System
OBJ    NAME    CLASS   GROUP   SKIP JRM 1STBLK   LASTBLK  BLOCKS   STATUS
------ ------- ------- ------- ---- --- -------- -------- -------- --------
volume swap    System  Group1  off  on         0  1049759  1049760 ACTIVE
volume *       System  Group1  *    *    1049760  1071359    21600 PRIVATE
volume *       System  Group1  *    *    1071360  2946239  1874880 FREE
volume usr     System  Group1  off  on   2946240  2965679    19440 ACTIVE
volume boot    System  Group1  off  on   2965680  3096899   131220 ACTIVE
volume efi     System  Group1  off  on   3096900  3228119   131220 ACTIVE
volume root    System  Group1  off  on   3228120  3403079   174960 ACTIVE
volume var     System  Group1  off  on   3403080  3638519   235440 ACTIVE


For the volume sizes, check the BLOCKS field displayed with the sdxinfo -V command. In this example, the root size is 174960 blocks and the var size is 235440 blocks.


2-2) Register the disk with the root class.

# sdxdisk -M -c System -d sdc=Root3:keep,sdd=Root4:undef



When registering multiple keep disks with a class together, as many or more undefined disks must also be registered.


2-3) Connect only one keep disk with a group.

# sdxdisk -C -c System -g Group2 -d Root3


2-4) Create volumes.

The volume sizes should be those shown in step 2-1).

# sdxvolume -M -c System -g Group2 -v root2 -s 174960
# sdxvolume -M -c System -g Group2 -v var2 -s 235440


2-5) Check the created volume sizes.

Make sure that the sizes of the volumes created in step 2-4) match the sizes shown in step 2-1).

# sdxinfo -V -c System
OBJ    NAME    CLASS   GROUP   SKIP JRM 1STBLK   LASTBLK  BLOCKS   STATUS
------ ------- ------- ------- ---- --- -------- -------- -------- --------
volume swap    System  Group1  off  on         0  1049759  1049760 ACTIVE
volume *       System  Group1  *    *    1049760  1071359    21600 PRIVATE
volume *       System  Group1  *    *    1071360  2946239  1874880 FREE
volume usr     System  Group1  off  on   2946240  2965679    19440 ACTIVE
volume boot    System  Group1  off  on   2965680  3096899   131220 ACTIVE
volume efi     System  Group1  off  on   3096900  3228119   131220 ACTIVE
volume root    System  Group1  off  on   3228120  3403079   174960 ACTIVE
volume var     System  Group1  off  on   3403080  3638519   235440 ACTIVE
volume *       System  Group2  *    *          0    21599    21600 PRIVATE
volume root2   System  Group2  off  on     21600   196559   174960 ACTIVE
volume var2    System  Group2  off  on    196560   431999   235440 ACTIVE
volume *       System  Group2  *    *     432000  3376079  2944080 FREE


3) Joining the proxy volumes

Join the created proxy volumes with the volumes for / and /var (master volumes) to copy data in / and /var to the proxy volumes. This example shows the procedure for joining the proxy volumes in the following configuration.



3-1) Join the proxy volumes.

# sdxvolume -F -c System -v root2,var2
# sdxproxy Join -c System -m root -p root2
# sdxproxy Join -c System -m var -p var2


3-2) Check that synchronization copying is completed.

# sdxinfo -S -c System
OBJ    CLASS   GROUP   DISK    VOLUME  STATUS
------ ------- ------- ------- ------- --------
slice  System  Group2  Root1   swap    ACTIVE
slice  System  Group2  Root2   swap    ACTIVE
slice  System  Group1  Root1   usr     ACTIVE
slice  System  Group1  Root2   usr     ACTIVE
slice  System  Group1  Root1   boot    ACTIVE
slice  System  Group1  Root2   boot    ACTIVE
slice  System  Group1  Root1   efi     ACTIVE
slice  System  Group1  Root2   efi     ACTIVE
slice  System  Group1  Root1   root    ACTIVE
slice  System  Group1  Root2   root    ACTIVE
slice  System  Group1  Root1   var     ACTIVE
slice  System  Group1  Root2   var     ACTIVE
slice  System  Group2  Root3   root2   STOP
slice  System  Group2  Root3   var2    COPY


If the synchronization copying is in progress, "COPY" will be displayed in the STATUS field for the proxy volume slice. If "STOP" is displayed, synchronization copying is completed.


4) Parting the proxy volumes

With successful synchronization copying, the master volumes and the proxy volumes become equivalent. By parting those master volumes and proxy volumes, snapshots of the master volumes can be created on the proxy volumes.

4-1) Secure consistency of the file systems.

In order to secure consistency of snapshot file systems, it is necessary to prevent file system update. However, some file systems such as /, /usr, and /var are required for system operation and cannot be cancel the mounting statuses during system operation. There, use the following methods to minimize writing to the system disk and writing not updated on the system disk.

  1. Boot the system in single user mode (optional)

  2. Stop application programs having write access to the system disks (optional)

  3. Execute the sync(1) command to write file system data updated on the memory but not written yet.


Even if a), b), and c) are all put in action, file system update will not be completely prevented. Therefore, snapshot file systems may have inconsistency as in the case with after system panic occurrence.


When a), b), c) are all put in action, the snapshot file systems will be like those after system panic occurrence in single user mode.


When only c) is put in action skipping a) and b), the snapshot file systems will be like those after system panic occurrence during system operation.


In both situations, inconsistency may occur in the file systems, and it is necessary to check and repair consistency as instructed in step 5-1).


4-2) Part the proxy volumes.

# sdxproxy Part -c System -p root2,var2


4-3) When the system was rebooted in single user mode as instructed in step 4-1) a), reboot it in multi-user mode.


4-4) When the application programs were stopped as instructed in step 4-1) b), start them.


5) Configuring the alternative boot environment

Configure the environment to boot from the proxy volumes.

5-1) Check and repair the file systems on the proxy volumes.

The file systems on the proxy volumes may have inconsistency, and it is necessary to check and repair them with the fsck(8) command.

# fsck /dev/sfdsk/System/dsk/root2
# fsck /dev/sfdsk/System/dsk/var2


5-2) Configure the alternative boot environment.

# sdxproxy Root -c System -p root2,var2


With successful alternative boot environment configuration, the following message will be output.

SDX:sdxproxy: INFO: completed definitions of alternative boot environment:
     current-boot-device=Root1 Root2
     alternative-boot-device=Root3


Be sure to take a note of the output boot device names for the current boot environment (current-boot-device values) and those for the alternative boot environment (alternative-boot-device values).


6) Expanding snapshots

6-1) Cancel the master-proxy relationship.

# sdxproxy Break -c System -p root2
# sdxproxy Break -c System -p var2


6-2) Expand the snapshot volume size.

This example shows the procedure for expanding the size of the snapshot volume for /var to 706320 blocks.

# sdxvolume -S -c System -v var2 -s 706320


6-3) Expand the snapshot ext3 file system size.

This example shows the procedure for expanding the size of the snapshot ext3 file system for /var to 706320 blocks.

# resize2fs /dev/sfdsk/System/dsk/var2 706320



For details about the resize2fs command, see the description of resize2fs(8) in the manual.


7) Mirroring snapshots

Add a disk to the group that includes the snapshot volumes to mirror the snapshot volumes.

# sdxdisk -C -c System -g Group2 -d Root4


8) Switching to the alternative boot environment

By switching the environment to the alternative boot environment, replace the /var file system with the expanded volume.

8-1) Boot the system from the alternative boot environment.

Among boot devices shown in the EFI boot manager's boot option selector window, select one from the boot devices for the alternative boot environment indicated by the message in step 5-2).

EFI Boot Manager ver 1.10

Please select a boot option

Root1
Root2
Root3 Select
...

Use and to change option(s). Use Enter to select an option


8-2) Check that the boot was successful.

Using the mount(8) command the sdxinfo command, check that the system was booted normally in the alternative boot environment and that no errors exist in the GDS object statuses. As needed, check also that the file systems for the alternative boot environment are correct and that applications can run properly.


If the system was not booted normally, restore the original boot environment. To restore the original boot environment, among boot devices shown in the EFI boot manager's option selector window, select one from the boot devices for the current boot environment indicated by the massage in step 5-2).

EFI Boot Manager ver 1.10

Please select a boot option

Root1 Select
Root2
Root3
...

Use and to change option(s). Use Enter to select an option


9) Deleting unnecessary volumes

After checking that the system was booted normally in the alternative boot environment, delete the volumes for the / file system and the original /var file system that build the previous boot environment.

# sdxvolume -F -c System -v root,var
# sdxvolume -R -c System -v root
# sdxvolume -R -c System -v var



Contents PreviousNext

All Rights Reserved, Copyright(C) FUJITSU LIMITED 2006