Manual File System Expansion Pre-4.7.2

 

 

Expanding file system via CLI when GUI expansion fails


 

There is an issue expanding a file system pre-4.7 if stripe groups have been removed but not deleted, i.e. downed manually in the FS.cfgx. Attempting to expand the file system via the GUI will fail with an error stating that the ordinal is out of bounds. To expand the file system using new stripe groups you must expand it manually. This is related to PTR 36626 and is fixed in 4.7.2

 

Step 1

Label new LUNs using GUI or CLI

 

Step 2

Stop the file system via the GUI. Changes made via CLI must have the FSM down.

 

Step 3

Modify the File System configuration file. Examples follow.

________________________________________________________________________

ORIGINAL FILE SYSTEM CONFIG FILE (/usr/cvfs/config/archives.cfgx)

With downed stripe highlighted. This is the group that caused this example to fail.

-------------------------------------------------------------------------------------------------------------------

<?xml version="1.0" encoding="UTF-8"?>

<snfs:configDoc xmlns:snfs="http://www.quantum.com/snfs">

  <snfs:config configVersion="8" name="archives" fsBlockSize="65536" journalSize="67108864">

    <snfs:globals>

      <snfs:abmFreeLimit>false</snfs:abmFreeLimit>

      <snfs:allocationStrategy msgId="allocationStrategy">round</snfs:allocationStrategy>

      <snfs:haFsType>HaUnmanaged</snfs:haFsType>

      <snfs:bufferCacheSize msgId="bufferCacheSize">33554432</snfs:bufferCacheSize>

      <snfs:cvRootDir>/</snfs:cvRootDir>

      <snfs:storageManager msgId="storageManager">false</snfs:storageManager>

      <snfs:dataMigrationThreadPoolSize msgId="dataMigrationThreadPoolSize">128</snfs:dataMigrationThreadPoolSize>

      <snfs:debug msgId="debug">00000000</snfs:debug>

      <snfs:dirWarp msgId="dirWarp">true</snfs:dirWarp>

      <snfs:extentCountThreshold msgId="extentCountThreshold">49152</snfs:extentCountThreshold>

      <snfs:enableSpotlight>false</snfs:enableSpotlight>

      <snfs:enforceAcls msgId="enforceAcls">false</snfs:enforceAcls>

      <snfs:fileLocks msgId="fileLocks">false</snfs:fileLocks>

      <snfs:fileLockResyncTimeOut msgId="fileLockResyncTimeOut">20</snfs:fileLockResyncTimeOut>

      <snfs:forcePerfectFit msgId="forcePerfectFit">false</snfs:forcePerfectFit>

      <snfs:fsCapacityThreshold msgId="fsCapacityThreshold">0</snfs:fsCapacityThreshold>

      <snfs:globalSuperUser msgId="globalSuperUser">true</snfs:globalSuperUser>

      <snfs:inodeCacheSize msgId="inodeCacheSize">32768</snfs:inodeCacheSize>

      <snfs:inodeExpandMin msgId="inodeExpandMin">0</snfs:inodeExpandMin>

      <snfs:inodeExpandInc msgId="inodeExpandInc">0</snfs:inodeExpandInc>

      <snfs:inodeExpandMax msgId="inodeExpandMax">0</snfs:inodeExpandMax>

      <snfs:inodeDeleteMax msgId="inodeDeleteMax">0</snfs:inodeDeleteMax>

      <snfs:inodeStripeWidth msgId="inodeStripeWidth">0</snfs:inodeStripeWidth>

      <snfs:maxConnections msgId="maxConnections">32</snfs:maxConnections>

      <snfs:maxLogSize msgId="maxLogSize">4194304</snfs:maxLogSize>

      <snfs:maxLogs msgId="maxLogs">4</snfs:maxLogs>

      <snfs:namedStreams msgId="namedStreams">false</snfs:namedStreams>

      <snfs:remoteNotification>false</snfs:remoteNotification>

      <snfs:reservedSpace msgId="reservedSpace">true</snfs:reservedSpace>

      <snfs:fsmRealTime msgId="fsmRealTime">false</snfs:fsmRealTime>

      <snfs:fsmMemLocked msgId="fsmMemLocked">false</snfs:fsmMemLocked>

      <snfs:snPolicy>false</snfs:snPolicy>

      <snfs:opHangLimitSecs msgId="opHangLimitSecs">180</snfs:opHangLimitSecs>

      <snfs:perfectFitSize msgId="perfectFitSize">131072</snfs:perfectFitSize>

      <snfs:quotas msgId="quotas">false</snfs:quotas>

      <snfs:quotaHistoryDays>7</snfs:quotaHistoryDays>

      <snfs:restoreJournal msgId="restoreJournal">false</snfs:restoreJournal>

      <snfs:restoreJournalDir msgId="restoreJournalDir"/>

      <snfs:restoreJournalMaxHours msgId="restoreJournalMaxHours">0</snfs:restoreJournalMaxHours>

      <snfs:restoreJournalMaxMb msgId="restoreJournalMaxMb">0</snfs:restoreJournalMaxMb>

      <snfs:stripeAlignSize msgId="stripeAlignSize">-1</snfs:stripeAlignSize>

      <snfs:trimOnClose msgId="trimOnClose">0</snfs:trimOnClose>

      <snfs:threadPoolSize msgId="threadPoolSize">32</snfs:threadPoolSize>

      <snfs:unixDirectoryCreationModeOnWindows msgId="unixDirectoryCreationModeOnWindows">755</snfs:unixDirectoryCreationModeOnWindows>

      <snfs:unixIdFabricationOnWindows msgId="unixIdFabricationOnWindows">false</snfs:unixIdFabricationOnWindows>

      <snfs:unixFileCreationModeOnWindows msgId="unixFileCreationModeOnWindows">644</snfs:unixFileCreationModeOnWindows>

      <snfs:unixNobodyUidOnWindows msgId="unixNobodyUidOnWindows">60001</snfs:unixNobodyUidOnWindows>

      <snfs:unixNobodyGidOnWindows msgId="unixNobodyGidOnWindows">60001</snfs:unixNobodyGidOnWindows>

      <snfs:windowsSecurity msgId="windowsSecurity">true</snfs:windowsSecurity>

      <snfs:eventFiles>true</snfs:eventFiles>

      <snfs:eventFileDir/>

      <snfs:allocSessionReservationSize>0</snfs:allocSessionReservationSize>

    </snfs:globals>

    <snfs:diskTypes>

      <snfs:diskType typeName="GENERIC_1953142815" sectors="1953142815" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_23439933435" sectors="23439933435" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_23437917660" sectors="23437917660" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_23418540511" sectors="23418540511" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_54693289335" sectors="54693289335" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_35127819231" sectors="35127819231" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_5854621279" sectors="5854621279" sectorSize="512"/>

</snfs:diskTypes>

    <snfs:stripeGroups>

      <snfs:stripeGroup index="0" name="sg0" status="up" stripeBreadth="131072" read="true" write="true" metadata="true" journal="true" userdata="false" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesmeta" diskType="GENERIC_1953142815" ordinal="0"/>

      </snfs:stripeGroup>

      <snfs:stripeGroup index="1" name="sg1" status="up" stripeBreadth="131072" read="true" write="true" metadata="false" journal="false" userdata="true" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesdata01" diskType="GENERIC_23418540511" ordinal="1"/>

      </snfs:stripeGroup>

      <snfs:stripeGroup index="2" name="sg2" status="down" stripeBreadth="131072" read="true" write="false" metadata="false" journal="false" userdata="true" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesdata02" diskType="GENERIC_23439933435" ordinal="2"/>

        <snfs:disk index="1" diskLabel="archivesdata03" diskType="GENERIC_23437917660" ordinal="3"/>

      </snfs:stripeGroup>    ++This is the stripe group that is not actually present anymore.

      <snfs:stripeGroup index="3" name="sg3" status="up" stripeBreadth="131072" read="true" write="true" metadata="false" journal="false" userdata="true" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesdata04" diskType="GENERIC_54693289335" ordinal="4"/>

      </snfs:stripeGroup>

      <snfs:stripeGroup index="4" name="sg4" status="up" stripeBreadth="131072" read="true" write="true" metadata="false" journal="false" userdata="true" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesdata06" diskType="GENERIC_54693289335" ordinal="5"/>

        <snfs:disk index="1" diskLabel="archivesdata05" diskType="GENERIC_54693289335" ordinal="6"/>

      </snfs:stripeGroup>

      <snfs:stripeGroup index="5" name="sg5" status="up" stripeBreadth="131072" read="true" write="true" metadata="false" journal="false" userdata="true" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesdata07" diskType="GENERIC_35127819231" ordinal="7"/>

      </snfs:stripeGroup>

      </snfs:stripeGroup>

    </snfs:stripeGroups>

  </snfs:config>

</snfs:configDoc>

 

FINAL FILE SYSTEM CONFIG FILE (/usr/cvfs/config/archives.cfgx)

With new stripe highlighted.

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

 

<?xml version="1.0" encoding="UTF-8"?>

<snfs:configDoc xmlns:snfs="http://www.quantum.com/snfs">

  <snfs:config configVersion="8" name="archives" fsBlockSize="65536" journalSize="67108864">

    <snfs:globals>

      <snfs:abmFreeLimit>false</snfs:abmFreeLimit>

      <snfs:allocationStrategy msgId="allocationStrategy">round</snfs:allocationStrategy>

      <snfs:haFsType>HaUnmanaged</snfs:haFsType>

      <snfs:bufferCacheSize msgId="bufferCacheSize">33554432</snfs:bufferCacheSize>

      <snfs:cvRootDir>/</snfs:cvRootDir>

      <snfs:storageManager msgId="storageManager">false</snfs:storageManager>

      <snfs:dataMigrationThreadPoolSize msgId="dataMigrationThreadPoolSize">128</snfs:dataMigrationThreadPoolSize>

      <snfs:debug msgId="debug">00000000</snfs:debug>

      <snfs:dirWarp msgId="dirWarp">true</snfs:dirWarp>

      <snfs:extentCountThreshold msgId="extentCountThreshold">49152</snfs:extentCountThreshold>

      <snfs:enableSpotlight>false</snfs:enableSpotlight>

      <snfs:enforceAcls msgId="enforceAcls">false</snfs:enforceAcls>

      <snfs:fileLocks msgId="fileLocks">false</snfs:fileLocks>

      <snfs:fileLockResyncTimeOut msgId="fileLockResyncTimeOut">20</snfs:fileLockResyncTimeOut>

      <snfs:forcePerfectFit msgId="forcePerfectFit">false</snfs:forcePerfectFit>

      <snfs:fsCapacityThreshold msgId="fsCapacityThreshold">0</snfs:fsCapacityThreshold>

      <snfs:globalSuperUser msgId="globalSuperUser">true</snfs:globalSuperUser>

      <snfs:inodeCacheSize msgId="inodeCacheSize">32768</snfs:inodeCacheSize>

      <snfs:inodeExpandMin msgId="inodeExpandMin">0</snfs:inodeExpandMin>

      <snfs:inodeExpandInc msgId="inodeExpandInc">0</snfs:inodeExpandInc>

      <snfs:inodeExpandMax msgId="inodeExpandMax">0</snfs:inodeExpandMax>

      <snfs:inodeDeleteMax msgId="inodeDeleteMax">0</snfs:inodeDeleteMax>

      <snfs:inodeStripeWidth msgId="inodeStripeWidth">0</snfs:inodeStripeWidth>

      <snfs:maxConnections msgId="maxConnections">32</snfs:maxConnections>

      <snfs:maxLogSize msgId="maxLogSize">4194304</snfs:maxLogSize>

      <snfs:maxLogs msgId="maxLogs">4</snfs:maxLogs>

      <snfs:namedStreams msgId="namedStreams">false</snfs:namedStreams>

      <snfs:remoteNotification>false</snfs:remoteNotification>

      <snfs:reservedSpace msgId="reservedSpace">true</snfs:reservedSpace>

      <snfs:fsmRealTime msgId="fsmRealTime">false</snfs:fsmRealTime>

      <snfs:fsmMemLocked msgId="fsmMemLocked">false</snfs:fsmMemLocked>

      <snfs:snPolicy>false</snfs:snPolicy>

      <snfs:opHangLimitSecs msgId="opHangLimitSecs">180</snfs:opHangLimitSecs>

      <snfs:perfectFitSize msgId="perfectFitSize">131072</snfs:perfectFitSize>

      <snfs:quotas msgId="quotas">false</snfs:quotas>

      <snfs:quotaHistoryDays>7</snfs:quotaHistoryDays>

      <snfs:restoreJournal msgId="restoreJournal">false</snfs:restoreJournal>

      <snfs:restoreJournalDir msgId="restoreJournalDir"/>

      <snfs:restoreJournalMaxHours msgId="restoreJournalMaxHours">0</snfs:restoreJournalMaxHours>

      <snfs:restoreJournalMaxMb msgId="restoreJournalMaxMb">0</snfs:restoreJournalMaxMb>

      <snfs:stripeAlignSize msgId="stripeAlignSize">-1</snfs:stripeAlignSize>

      <snfs:trimOnClose msgId="trimOnClose">0</snfs:trimOnClose>

      <snfs:threadPoolSize msgId="threadPoolSize">32</snfs:threadPoolSize>

      <snfs:unixDirectoryCreationModeOnWindows msgId="unixDirectoryCreationModeOnWindows">755</snfs:unixDirectoryCreationModeOnWindows>

      <snfs:unixIdFabricationOnWindows msgId="unixIdFabricationOnWindows">false</snfs:unixIdFabricationOnWindows>

      <snfs:unixFileCreationModeOnWindows msgId="unixFileCreationModeOnWindows">644</snfs:unixFileCreationModeOnWindows>

      <snfs:unixNobodyUidOnWindows msgId="unixNobodyUidOnWindows">60001</snfs:unixNobodyUidOnWindows>

      <snfs:unixNobodyGidOnWindows msgId="unixNobodyGidOnWindows">60001</snfs:unixNobodyGidOnWindows>

      <snfs:windowsSecurity msgId="windowsSecurity">true</snfs:windowsSecurity>

      <snfs:eventFiles>true</snfs:eventFiles>

      <snfs:eventFileDir/>

      <snfs:allocSessionReservationSize>0</snfs:allocSessionReservationSize>

    </snfs:globals>

    <snfs:diskTypes>

      <snfs:diskType typeName="GENERIC_1953142815" sectors="1953142815" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_23439933435" sectors="23439933435" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_23437917660" sectors="23437917660" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_23418540511" sectors="23418540511" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_54693289335" sectors="54693289335" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_35127819231" sectors="35127819231" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_5854621279" sectors="5854621279" sectorSize="512"/>

      <snfs:diskType typeName="GENERIC_46836029407" sectors="46836029407" sectorSize="512"/>

</snfs:diskTypes>

    <snfs:stripeGroups>

      <snfs:stripeGroup index="0" name="sg0" status="up" stripeBreadth="131072" read="true" write="true" metadata="true" journal="true" userdata="false" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesmeta" diskType="GENERIC_1953142815" ordinal="0"/>

      </snfs:stripeGroup>

      <snfs:stripeGroup index="1" name="sg1" status="up" stripeBreadth="131072" read="true" write="true" metadata="false" journal="false" userdata="true" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesdata01" diskType="GENERIC_23418540511" ordinal="1"/>

      </snfs:stripeGroup>

             <snfs:stripeGroup index="2" name="sg2" status="down" stripeBreadth="131072" read="true" write="false" metadata="false" journal="false" userdata="true" realTimeIOs="0"   realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

              <snfs:disk index="0" diskLabel="archivesdata02" diskType="GENERIC_23439933435" ordinal="2"/>

              <snfs:disk index="1" diskLabel="archivesdata03" diskType="GENERIC_23437917660" ordinal="3"/>

              </snfs:stripeGroup> 

      <snfs:stripeGroup index="3" name="sg3" status="up" stripeBreadth="131072" read="true" write="true" metadata="false" journal="false" userdata="true" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesdata04" diskType="GENERIC_54693289335" ordinal="4"/>

      </snfs:stripeGroup>

      <snfs:stripeGroup index="4" name="sg4" status="up" stripeBreadth="131072" read="true" write="true" metadata="false" journal="false" userdata="true" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesdata06" diskType="GENERIC_54693289335" ordinal="5"/>

        <snfs:disk index="1" diskLabel="archivesdata05" diskType="GENERIC_54693289335" ordinal="6"/>

      </snfs:stripeGroup>

      <snfs:stripeGroup index="5" name="sg5" status="up" stripeBreadth="131072" read="true" write="true" metadata="false" journal="false" userdata="true" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesdata07" diskType="GENERIC_35127819231" ordinal="7"/>

      </snfs:stripeGroup>

      <snfs:stripeGroup index="6" name="sg6" status="up" stripeBreadth="131072" read="true" write="true" metadata="false" journal="false" userdata="true" realTimeIOs="0" realTimeIOsReserve="0" realTimeMB="0" realTimeMBReserve="0" realTimeTokenTimeout="0" multipathMethod="rotate">

        <snfs:disk index="0" diskLabel="archivesdata08" diskType="GENERIC_46836029407" ordinal="8"/>

        <snfs:disk index="1" diskLabel="archivesdata09" diskType="GENERIC_46836029407" ordinal="9"/>

        <snfs:disk index="2" diskLabel="archivesdata10" diskType="GENERIC_46836029407" ordinal="10"/>

        <snfs:disk index="3" diskLabel="archivesdata11" diskType="GENERIC_46836029407" ordinal="11"/>

      </snfs:stripeGroup>

    </snfs:stripeGroups>

  </snfs:config>

</snfs:configDoc>

________________________________________________________________________________________

 

Step 4

After these changes are made cvupdatefs needs to be run.

 

 

[root@sanmeta5 ~]# cvupdatefs archives

Checked Build disabled - default.

 

*Warning*: Stripe group sg2 has mismatched size disks: 984M bytes wasted.

The following changes have been detected in the configuration Please review these changes carefully.

 

Stripe Group Name      Stripe Status       MetaData   Journal

=================  =============  ========   =======

sg0              

 

 No Change      No Change  No Change

sg1              

 

 No Change

sg2               

 

No Change

sg3             

 

No Change

sg4               

 

No Change

sg5               

 

No Change

sg6               

 

Create

 

 

This will modify the file system "archives".

Are you sure you want to continue? [y/N]

 

 

Answering Yes  created the stripe group

 

Step 5

Bring the filesystem up via the GUI.

 

 



This page was generated by the BrainKeeper Enterprise Wiki, © 2018