Guide d'administration Oracle Solaris ZFS

Utilisation d'Oracle Solaris Live Upgrade pour migrer ou mettre à jour un système avec zones (version Solaris 5 10/09 ou supérieure)

À partir de la version 10 10/08 de Solaris, vous pouvez utiliser la fonctionnalité Oracle Solaris Live Upgrade pour migrer ou mettre à niveau un système avec zones. À partir de la version 10 5/09 de Solaris, Oracle Solaris Live Upgrade prend en charge des configurations de zone complète ou fragmentée.

Cette section décrit comment configurer et installer un système avec zones de manière à ce qu'il soit mis à niveau et corrigé avec Oracle Solaris Live Upgrade avec la version 10 5/09. Si vous migrez vers un système de fichiers racine ZFS sans zones, reportez-vous à la section Utilisation d'Oracle Solaris Live Upgrade pour migrer vers un système de fichiers racine ZFS (sans zones).

Tenez compte des points suivants lorsque vous utilisez Oracle Solaris Live Upgrade avec ZFS et les zones à partir de la version Solaris 10 5/09 :

À partir de la version 10 5/09 de Solaris, si vous migrez ou configurez un système comportant des zones, vous devez vérifier les informations suivantes :

Système de fichiers ZFS pris en charge avec informations de configuration de la racine de zone (version Solaris 10 5/09 ou supérieure)

Vérifiez les configurations de zone prises en charge avant d'utiliser Oracle Solaris Live Upgrade pour migrer ou mettre à jour un système comportant des zones.

ProcedureCréation d'un environnement d'initialisation ZFS avec un système de fichiers racine ZFS et une zone racine (Solaris 10 5/09 ou version ultérieure)

Après avoir procédé à l'installation initiale de la version Solaris 10 5/09 ou d'une version supérieure, suivez cette procédure pour créer un système de fichiers ZFS racine. Suivez également la procédure suivante si vous avez utilisé la fonction luupgrade pour mettre à niveau un système de fichiers racine ZFS vers la version 10 5/09 ou une version supérieure de Solaris. Un environnement d'initialisation ZFS créé à l'aide de cette procédure peut être mis à niveau ou corrigé à l'aide d'un patch.

Dans la procédure ci-après, l'exemple de système Oracle Solaris 10 9/10 comporte un système de fichiers racine ZFS et un jeu de données de racine de zone dans /rpool/zones. Un environnement d'initialisation ZFS nommé zfs2BE est créé et peut ensuite être mis à niveau ou corrigé à l'aide d'un patch.

  1. Vérifiez les systèmes de fichiers ZFS existants.


    # zfs list
    NAME                   USED  AVAIL  REFER  MOUNTPOINT
    rpool                 7.26G  59.7G    98K  /rpool
    rpool/ROOT            4.64G  59.7G    21K  legacy
    rpool/ROOT/zfsBE      4.64G  59.7G  4.64G  /
    rpool/dump            1.00G  59.7G  1.00G  -
    rpool/export            44K  59.7G    23K  /export
    rpool/export/home       21K  59.7G    21K  /export/home
    rpool/swap               1G  60.7G    16K  -
    rpool/zones            633M  59.7G   633M  /rpool/zones
  2. Assurez-vous que les zones sont installées et initialisées.


    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       2 zfszone          running    /rpool/zones                   native   shared
  3. Créez l'environnement d'initialisation ZFS.


    # lucreate -n zfs2BE
    Analyzing system configuration.
    No name for current boot environment.
    INFORMATION: The current boot environment is not named - assigning name <zfsBE>.
    Current boot environment is named <zfsBE>.
    Creating initial configuration for primary boot environment <zfsBE>.
    The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
    PBE configuration successful: PBE name <zfsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
    Comparing source boot environment <zfsBE> file systems with the file 
    system(s) you specified for the new boot environment. Determining which 
    file systems should be in the new boot environment.
    Updating boot environment description database on all BEs.
    Updating system configuration files.
    Creating configuration for boot environment <zfs2BE>.
    Source boot environment is <zfsBE>.
    Creating boot environment <zfs2BE>.
    Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>.
    Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>.
    Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>.
    Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>.
    Population of boot environment <zfs2BE> successful.
    Creation of boot environment <zfs2BE> successful.
  4. Activez l'environnement d'initialisation ZFS.


    # lustatus
    Boot Environment           Is       Active Active    Can    Copy      
    Name                       Complete Now    On Reboot Delete Status    
    -------------------------- -------- ------ --------- ------ ----------
    zfsBE                      yes      yes    yes       no     -         
    zfs2BE                     yes      no     no        yes    -         
    # luactivate zfs2BE
    A Live Upgrade Sync operation will be performed on startup of boot environment <zfs2BE>.
    .
    .
    .
    # init 6
    
  5. Confirmez que les systèmes de fichiers ZFS et les zones sont créés dans le nouvel environnement d'initialisation.


    # zfs list
    NAME                               USED  AVAIL  REFER  MOUNTPOINT
    rpool                             7.38G  59.6G    98K  /rpool
    rpool/ROOT                        4.72G  59.6G    21K  legacy
    rpool/ROOT/zfs2BE                 4.72G  59.6G  4.64G  /
    rpool/ROOT/zfs2BE@zfs2BE          74.0M      -  4.64G  -
    rpool/ROOT/zfsBE                  5.45M  59.6G  4.64G  /.alt.zfsBE
    rpool/dump                        1.00G  59.6G  1.00G  -
    rpool/export                        44K  59.6G    23K  /export
    rpool/export/home                   21K  59.6G    21K  /export/home
    rpool/swap                           1G  60.6G    16K  -
    rpool/zones                       17.2M  59.6G   633M  /rpool/zones
    rpool/zones-zfsBE                  653M  59.6G   633M  /rpool/zones-zfsBE
    rpool/zones-zfsBE@zfs2BE          19.9M      -   633M  -
    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       - zfszone          installed  /rpool/zones                   native   shared

ProcedureMise à niveau ou correction d'un système de fichiers racine ZFS avec racines de zone (Solaris 10 5/09 ou version ultérieure)

Suivez cette procédure pour mettre à niveau ou corriger un système de fichiers ZFS racine avec racines de zone sur Solaris 10 5/09 ou version supérieure. Ces mises à jour peuvent être une mise à niveau du système ou l'application de correctifs.

Dans les étapes suivantes, zfs2BE est le nom de l'environnement d'initialisation mis à niveau ou corrigé.

  1. Vérifiez les systèmes de fichiers ZFS existants.


    # zfs list
    NAME                               USED  AVAIL  REFER  MOUNTPOINT
    rpool                             7.38G  59.6G   100K  /rpool
    rpool/ROOT                        4.72G  59.6G    21K  legacy
    rpool/ROOT/zfs2BE                 4.72G  59.6G  4.64G  /
    rpool/ROOT/zfs2BE@zfs2BE          75.0M      -  4.64G  -
    rpool/ROOT/zfsBE                  5.46M  59.6G  4.64G  /
    rpool/dump                        1.00G  59.6G  1.00G  -
    rpool/export                        44K  59.6G    23K  /export
    rpool/export/home                   21K  59.6G    21K  /export/home
    rpool/swap                           1G  60.6G    16K  -
    rpool/zones                       22.9M  59.6G   637M  /rpool/zones
    rpool/zones-zfsBE                  653M  59.6G   633M  /rpool/zones-zfsBE
    rpool/zones-zfsBE@zfs2BE          20.0M      -   633M  -
  2. Assurez-vous que les zones sont installées et initialisées.


    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       5 zfszone          running    /rpool/zones                   native   shared
  3. Créez l'environnement d'initialisation ZFS à mettre à jour ou à corriger.


    # lucreate -n zfs2BE
    Analyzing system configuration.
    Comparing source boot environment <zfsBE> file systems with the file 
    system(s) you specified for the new boot environment. Determining which 
    file systems should be in the new boot environment.
    Updating boot environment description database on all BEs.
    Updating system configuration files.
    Creating configuration for boot environment <zfs2BE>.
    Source boot environment is <zfsBE>.
    Creating boot environment <zfs2BE>.
    Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>.
    Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>.
    Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>.
    Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>.
    Creating snapshot for <rpool/zones> on <rpool/zones@zfs10092BE>.
    Creating clone for <rpool/zones@zfs2BE> on <rpool/zones-zfs2BE>.
    Population of boot environment <zfs2BE> successful.
    Creation of boot environment <zfs2BE> successful.
  4. Sélectionnez l'une des options suivantes pour mettre à niveau le système ou appliquer les correctifs au nouvel environnement d'initialisation :

    • Mettez à niveau le système.


      # luupgrade -u -n zfs2BE -s /net/install/export/s10up/latest
      

      L'option -s représente l'emplacement d'un mode d'installation Solaris.

      Ce processus peut être très long.

      Pour un exemple complet du processus luupgrade, reportez-vous à l'Exemple 5–6.

    • Appliquez les correctifs au nouvel environnement d'initialisation.


      # luupgrade -t -n zfs2BE -t -s /patchdir patch-id-02 patch-id-04
      
  5. Activez le nouvel environnement d'initialisation.


    # lustatus
    Boot Environment           Is       Active Active    Can    Copy      
    Name                       Complete Now    On Reboot Delete Status    
    -------------------------- -------- ------ --------- ------ ----------
    zfsBE                      yes      yes    yes       no     -         
    zfs2BE                     yes      no     no        yes    -    
    # luactivate zfs2BE
    A Live Upgrade Sync operation will be performed on startup of boot environment <zfs2BE>.
    .
    .
    .
  6. Initialisez le système à partir de l'environnement d'initialisation récemment activé.


    # init 6
    

Exemple 5–6 Mise à niveau d'un système de fichiers racine ZFS avec racine de zone vers un système de fichiers racine ZFS Oracle Solaris 10 9/10

Dans cet exemple, un environnement d'initialisation ZFS (zfsBE), créé sur un système Solaris 10 10/09 avec un système de fichiers racine ZFS et une racine de zone dans un pool non-racine, est mis à niveau vers Solaris 10 9/10. Ce processus peut être long. L'environnement d'initialisation mis à niveau (zfs2BE) est ensuite activé. Assurez-vous que les zones sont installées et initialisées avant de tenter la mise à niveau.

Dans cet exemple, le pool zonepool, le jeu de données /zonepool/zones et la zone zfszone sont créés comme suit :


# zpool create zonepool mirror c2t1d0 c2t5d0
# zfs create zonepool/zones
# chmod 700 zonepool/zones
# zonecfg -z zfszone
zfszone: No such zone configured
Use 'create' to begin configuring a new zone.
zonecfg:zfszone> create
zonecfg:zfszone> set zonepath=/zonepool/zones
zonecfg:zfszone> verify
zonecfg:zfszone> exit
# zoneadm -z zfszone install
cannot create ZFS dataset zonepool/zones: dataset already exists
Preparing to install zone <zfszone>.
Creating list of files to copy from the global zone.
Copying <8960> files to the zone.
.
.
.

# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   2 zfszone          running    /zonepool/zones                native   shared

# lucreate -n zfsBE
.
.
.
# luupgrade -u -n zfsBE -s /net/install/export/s10up/latest
40410 blocks
miniroot filesystem is <lofs>
Mounting miniroot at </net/system/export/s10up/latest/Solaris_10/Tools/Boot>
Validating the contents of the media </net/system/export/s10up/latest>.
The media is a standard Solaris media.
The media contains an operating system upgrade image.
The media contains <Solaris> version <10>.
Constructing upgrade profile to use.
Locating the operating system upgrade program.
Checking for existence of previously scheduled Live Upgrade requests.
Creating upgrade profile for BE <zfsBE>.
Determining packages to install or upgrade for BE <zfsBE>.
Performing the operating system upgrade of the BE <zfsBE>.
CAUTION: Interrupting this process may leave the boot environment unstable 
or unbootable.
Upgrading Solaris: 100% completed
Installation of the packages from this media is complete.
Updating package information on boot environment <zfsBE>.
Package information successfully updated on boot environment <zfsBE>.
Adding operating system patches to the BE <zfsBE>.
The operating system patch installation is complete.
INFORMATION: The file </var/sadm/system/logs/upgrade_log> on boot 
environment <zfsBE> contains a log of the upgrade operation.
INFORMATION: The file </var/sadm/system/data/upgrade_cleanup> on boot 
environment <zfsBE> contains a log of cleanup operations required.
INFORMATION: Review the files listed above. Remember that all of the files 
are located on boot environment <zfsBE>. Before you activate boot 
environment <zfsBE>, determine if any additional system maintenance is 
required or if additional media of the software distribution must be 
installed.
The Solaris upgrade of the boot environment <zfsBE> is complete.
Installing failsafe
Failsafe install is complete.
# luactivate zfsBE
# init 6
# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
zfsBE                      yes      no     no        yes    -         
zfs2BE                     yes      yes    yes       no     -         
# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   - zfszone          installed  /zonepool/zones                native   shared

ProcedureMigration d'un système de fichiers racine UFS avec racine de zone vers un système de fichiers racine ZFS (Solaris 10 5/09 ou version ultérieure)

Suivez cette procédure pour migrer un système incluant un système de fichiers UFS racine et une racine de zone vers la version Solaris 10 5/09 ou version supérieure. Utilisez ensuite Oracle Solaris Live Upgrade pour créer un environnement d'initialisation ZFS.

Dans la procédure ci-après, l'exemple de nom de l'environnement d'initialisation UFS est c0t1d0s0, la racine de zone UFS est zonepool/zfszone et l'environnement d'initialisation racine est zfsBE.

  1. Mettez le système à niveau vers la version Solaris 10 5/09 ou un version ultérieure si la version Solaris 10 exécutée est antérieure.

    Pour plus d'informations sur la mise à niveau d'un système exécutant Solaris 10, reportez-vous au Guide d’installation Oracle Solaris 10 9/10 : planification des mises à niveau et de Solaris Live Upgrade.

  2. Créez le pool racine.

    Pour plus d'informations sur la configuration requise pour le pool racine, reportez-vous à la section Configuration requise pour l'installation d'Oracle Solaris et d'Oracle Solaris Live Upgrade pour la prise en charge de systèmes de fichiers ZFS.

  3. Confirmez que les zones de l'environnement UFS sont initialisées.


    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       2 zfszone          running    /zonepool/zones                native   shared
  4. Créez le nouvel environnement d'initialisation ZFS.


    # lucreate -c c1t1d0s0 -n zfsBE -p rpool
    

    Cette commande crée des jeux de données dans le pool racine pour le nouvel environnement d'initialisation et copie l'environnement d'initialisation actuel (zones incluses) vers ces jeux de données.

  5. Activez le nouvel environnement d'initialisation ZFS.


    # lustatus
    Boot Environment           Is       Active Active    Can    Copy      
    Name                       Complete Now    On Reboot Delete Status    
    -------------------------- -------- ------ --------- ------ ----------
    c1t1d0s0                   yes      no     no        yes    -         
    zfsBE                      yes      yes    yes       no     -         #
    luactivate zfsBE       
    A Live Upgrade Sync operation will be performed on startup of boot environment <zfsBE>.
    .
    .
    .
  6. Redémarrez le système.


    # init 6
    
  7. Confirmez que les systèmes de fichiers ZFS et les zones sont créés dans le nouvel environnement d'initialisation.


    # zfs list
    NAME                                USED  AVAIL  REFER  MOUNTPOINT
    rpool                              6.17G  60.8G    98K  /rpool
    rpool/ROOT                         4.67G  60.8G    21K  /rpool/ROOT
    rpool/ROOT/zfsBE                   4.67G  60.8G  4.67G  /
    rpool/dump                         1.00G  60.8G  1.00G  -
    rpool/swap                          517M  61.3G    16K  -
    zonepool                            634M  7.62G    24K  /zonepool
    zonepool/zones                      270K  7.62G   633M  /zonepool/zones
    zonepool/zones-c1t1d0s0             634M  7.62G   633M  /zonepool/zones-c1t1d0s0
    zonepool/zones-c1t1d0s0@zfsBE       262K      -   633M  -
    # zoneadm list -cv
      ID NAME             STATUS     PATH                           BRAND    IP    
       0 global           running    /                              native   shared
       - zfszone          installed  /zonepool/zones                native   shared

Exemple 5–7 Migration d'un système de fichiers racine UFS avec racine de zone vers un système de fichiers racine ZFS

Dans cet exemple, un système Oracle Solaris 10 9/10 comprenant un système de fichiers racine UFS, une racine de zone (/uzone/ufszone), un pool non-racine ZFS (pool) et une racine de zone (/pool/zfszone) est migré vers un système de fichiers racine ZFS. Assurez-vous que le pool racine ZFS est créé et que les zones sont installées et initialisées avant de tenter la migration.


# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   2 ufszone          running    /uzone/ufszone                 native   shared
   3 zfszone          running    /pool/zones/zfszone            native   shared

# lucreate -c ufsBE -n zfsBE -p rpool
Analyzing system configuration.
No name for current boot environment.
Current boot environment is named <zfsBE>.
Creating initial configuration for primary boot environment <zfsBE>.
The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID.
PBE configuration successful: PBE name <ufsBE> PBE Boot Device </dev/dsk/c1t0d0s0>.
Comparing source boot environment <ufsBE> file systems with the file 
system(s) you specified for the new boot environment. Determining which 
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Updating system configuration files.
The device </dev/dsk/c1t1d0s0> is not a root device for any boot environment; cannot get BE ID.
Creating configuration for boot environment <zfsBE>.
Source boot environment is <ufsBE>.
Creating boot environment <zfsBE>.
Creating file systems on boot environment <zfsBE>.
Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfsBE>.
Populating file systems on boot environment <zfsBE>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Copying root of zone <ufszone> to </.alt.tmp.b-EYd.mnt/uzone/ufszone>.
Creating snapshot for <pool/zones/zfszone> on <pool/zones/zfszone@zfsBE>.
Creating clone for <pool/zones/zfszone@zfsBE> on <pool/zones/zfszone-zfsBE>.
Creating compare databases for boot environment <zfsBE>.
Creating compare database for file system </rpool/ROOT>.
Creating compare database for file system </>.
Updating compare databases on boot environment <zfsBE>.
Making boot environment <zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-DLd.mnt
updating /.alt.tmp.b-DLd.mnt/platform/sun4u/boot_archive
Population of boot environment <zfsBE> successful.
Creation of boot environment <zfsBE> successful.
# lustatus
Boot Environment           Is       Active Active    Can    Copy      
Name                       Complete Now    On Reboot Delete Status    
-------------------------- -------- ------ --------- ------ ----------
ufsBE                      yes      yes    yes       no     -         
zfsBE                      yes      no     no        yes    -         
# luactivate zfsBE    
.
.
.
# init 6
.
.
.
# zfs list
NAME                                    USED  AVAIL  REFER  MOUNTPOINT
pool                                    628M  66.3G    19K  /pool
pool/zones                              628M  66.3G    20K  /pool/zones
pool/zones/zfszone                     75.5K  66.3G   627M  /pool/zones/zfszone
pool/zones/zfszone-ufsBE                628M  66.3G   627M  /pool/zones/zfszone-ufsBE
pool/zones/zfszone-ufsBE@zfsBE           98K      -   627M  -
rpool                                  7.76G  59.2G    95K  /rpool
rpool/ROOT                             5.25G  59.2G    18K  /rpool/ROOT
rpool/ROOT/zfsBE                       5.25G  59.2G  5.25G  /
rpool/dump                             2.00G  59.2G  2.00G  -
rpool/swap                              517M  59.7G    16K  -
# zoneadm list -cv
  ID NAME             STATUS     PATH                           BRAND    IP    
   0 global           running    /                              native   shared
   - ufszone          installed  /uzone/ufszone                 native   shared
   - zfszone          installed  /pool/zones/zfszone            native   shared