Cette section décrit les nouvelles fonctions de gestion des données de cette version. Ces fonctionnalités permettent de développer la conception en offrant une capacité illimitée en vue de la croissance future et une amélioration de l'intégrité des données.
Voir aussi Configurer des zones immuables via l'exécution dans le chemin de confiance.
La commande zpool remove permet de retirer des périphériques de données de niveau supérieur. Le retrait d'un périphérique de données de niveau supérieur migre les données du périphérique à retirer vers les périphériques de données restants dans le pool. La commande zpool status signale la progression de l'opération de retrait jusqu'à la fin de la réargenture.
Pour plus d'informations sur le retrait des périphériques de données de niveau supérieur, reportez-vous à Oracle Solaris ZFS Device Removal, Removing Devices From a Storage Pool du manuel Managing ZFS File Systems in Oracle Solaris 11.4 et à la page de manuel zpool(8).
Par défaut, le nettoyage du pool ZFS s'exécute en arrière-plan tous les 30 jours avec une priorité réglée automatiquement. La priorité du nettoyage est faible par défaut, mais est automatiquement augmentée si le système est inactif. La priorité du nettoyage est ajustée en fonction de l'intervalle de nettoyage spécifié, de la progression et de la charge système. L'heure de début du dernier nettoyage réussi est signalée par la commande zpool status.
Vous pouvez personnaliser la programmation du nettoyage du pool, voire le désactiver, en définissant la propriété scrubinterval. Pour plus d'informations sur les propriétés scrubinterval et lastscrub, reportez-vous à la section Scheduled Data Scrubbing du manuel Managing ZFS File Systems in Oracle Solaris 11.4 et à la page de manuel zpool(8).
Les fonctions reflink() et reflinkat() permettent de copier des fichiers très rapidement à l'aide de la technologie ZFS sous-jacente. La fonction reflink() crée un nouveau fichier avec le contenu d'un fichier existant sans lire ou écrire les blocs de données sous-jacents. Le fichier existant et le fichier à créer doivent se trouver dans le même pool ZFS.
Pour plus d'informations, reportez-vous à la page de manuel reflink(3C).
L'option –z (copie rapide) de la commande cp utilise reflink. Pour plus d'informations, reportez-vous à la page de manuel cp(1).
Dans Oracle Solaris 11.4, vous pouvez optimiser les transmissions de flux d'envoi (send) ZFS des systèmes de fichiers compressés et réduire le trafic de transmission réseau à l'aide des flux d'envoi (send) ZFS bruts.
Dans les versions précédentes, un flux d'envoi (send) d'un système de fichiers ZFS compressé était d'abord décompressé lors de la transmission, puis les blocs étaient recompressés si la compression était activée à l'extrémité de la réception. Dans la version Oracle Solaris 11.4, ces deux étapes sont évitées car les blocs du système de fichiers compressés dans le flux restent compressés. Cette optimisation permet également de réduire le trafic de transmission réseau. Vous pouvez optimiser un flux send ZFS en l'envoyant en mode brut avec la nouvelle option –w de la commande zfs send. L'activation de cette nouvelle option permet au flux send d'encoder la présence de blocs bruts afin qu'un système de réception puisse les traiter sans les compresser.
Par exemple, pour créer un système de fichiers ZFS avec compression activée et envoyer le flux d'instantané avec et sans l'option –w et vérifier les tailles de flux en résultant :
# zfs create compression=on pond/cdata # cp -r somefiles /pond/data # zfs snapshot pond/cdata@snap1 # zfs get compressratio pond/cdata@snap1 NAME PROPERTY VALUE SOURCE pond/cdata@snap1 compressratio 1.79x - # zfs send pond/cdata@snap1 > /tmp/stream # zfs send -w compress pond/cdata@snap1 > /tmp/cstream # ls -lh /tmp/*stream* -rw-r--r-- 1 root root 126M Feb 15 14:35 /tmp/cstream -rw-r--r-- 1 root root 219M Feb 15 14:35 /tmp/stream
Les systèmes exécutant les versions précédentes d'Oracle Solaris ne peuvent pas recevoir ce type de flux ; un message d'erreur sera généré.
Pour plus d'informations, reportez-vous au manuel Gestion des systèmes de fichiers ZFS dans Oracle Solaris 12.
Dans Oracle Solaris 11.4, si une transmission réseau est interrompue ou qu'une erreur se produit, les flux d'envoi (send) ZFS peuvent être relancés là où ils se sont arrêtés.
L'utilisation des opérations send et receive de ZFS pour transférer des instantanés ZFS entre les systèmes est un moyen pratique pour répliquer les données de système de fichiers ZFS qui présentaient auparavant les problèmes suivants :
Une opération d'envoi ZFS pouvait prendre des heures, voire des jours. Pendant ce temps, l'opération send pouvait être interrompue en raison d'une indisponibilité du réseau ou d'une défaillance du système.
En cas d'échec, l'opération send, même si elle était presque terminée, devait être relancée du début.
L'opération send de ZFS pouvait ne pas pouvoir transférer de larges flux dans la période disponible entre les interruptions.
Une opération recv de ZFS pouvait ne pas pouvoir détecter et signaler des erreurs de transmission avant la fin du traitement du flux dans sa totalité.
Cette version Oracle Solaris 11.4 permet à ZFS d'envoyer des flux avec possibilité de reprise au point de leur interruption à l'aide des nouvelles options suivantes :
zfs receive –C – Ecrit un point de reprise de réception vers stdout.
zfs send –C – Lit un point de reprise de réception depuis stdin.
zfs send –s (nocheck) – Désactive le nouveau format de compression simultanée.
zfs list –I (state) – Affiche de manière récursive les jeux de données incomplets car ils ne sont pas affichés par défaut.
Pour plus d'informations, reportez-vous au manuel Gestion des systèmes de fichiers ZFS dans Oracle Solaris 12.
La version Oracle Solaris 11.4 permet de limiter les lectures et les écritures sur disque du système de fichiers ZFS. Vous pouvez activer une limite de lecture (read) ou d'écriture (write) sur un système de fichiers ZFS en définissant les propriétés readlimit et writelimit, en unités d'octets par seconde. Ces fonctions vous permettent d'optimiser les ressources d'E/S ZFS dans un environnement multilocataire.
Les propriétés defaultwritelimit et defaultreadlimit sont ajoutées pour faciliter la gestion d'un grand nombre de systèmes de fichiers ZFS. Si les propriétés defaultwritelimit et defaultreadlimit sont définies, tous les descendants du système de fichiers héritent de la valeur affectée. Si vous appliquez la limite read ou write par défaut au système de fichiers ZFS, celle-ci ne s'applique qu'aux systèmes de fichiers descendants et pas au système de fichiers lui-même. Les propriétés effectivereadlimit et effectivewritelimit en lecture seule sont ajoutées pour fournir une vue de ce qu'est la limite effective sur un système de fichiers. La limite effective signalée est la limite de données la plus basse à n'importe quel point entre le parent et le système de fichiers indiqué.
Par exemple, vous définiriez les limites read et write comme suit :
# zfs set writelimit=500mb pond/apps/web # zfs set readlimit=200mb pond/apps/logdata
L'exemple suivant montre comment afficher les limites read et write :
# zfs get -r writelimit,readlimit pond/apps NAME PROPERTY VALUE SOURCE pond/apps writelimit default default pond/apps readlimit default default pond/apps/logdata writelimit default default pond/apps/logdata readlimit 200M local pond/apps/web writelimit 500M local pond/apps/web readlimit default default pond/apps/web/tier1 writelimit default default pond/apps/web/tier1 readlimit default default
Vous pouvez afficher la limite d'écriture effective comme suit :
# zfs get effectivewritelimit pond/apps/web NAME PROPERTY VALUE SOURCE pond/apps/web effectivewritelimit 500M local
Pour plus d'informations, reportez-vous au manuel Gestion des systèmes de fichiers ZFS dans Oracle Solaris 12.
La version Oracle Solaris 11.4 offre une opération de migration shadow ZFS dotée d'améliorations pour une meilleure visibilité en matière de surveillance des erreurs de migration et de contrôle des migrations en cours. Les nouvelles options suivantes ont été ajoutées :
shadowstat –E et –e – Permet la surveillance des erreurs pour toutes les migrations ou une migration unique.
shadowadm – Permet de contrôler les migrations en cours.
Par exemple, vous pouvez identifier les erreurs de migration shadow de plusieurs opérations de migration :
# shadowstat EST BYTES BYTES ELAPSED DATASET XFRD LEFT ERRORS TIME tank/logarchive 16.4M 195M 1 00:01:20 pond/dbarchive 4.49M 248M - 00:00:51 tank/logarchive 16.6M 194M 1 00:01:21 pond/dbarchive 4.66M 248M - 00:00:52 tank/logarchive 16.7M 194M 1 00:01:22 pond/dbarchive 4.80M 248M - 00:00:53 tank/logarchive 17.1M 194M 1 00:01:23 pond/dbarchive 5.00M 248M - 00:00:54 tank/logarchive 17.3M 194M 1 00:01:24 pond/dbarchive 5.16M 247M - 00:00:55
Vous pouvez identifier une erreur de migration spécifique comme suit :
# shadowstat -E tank/logarchive: PATH ERROR e-dir/socket Operation not supported pond/dbarchive: No errors encountered.
Par exemple, pour annuler la migration car le socket d'ouverture ne peut pas être migré :
# shadowadm cancel tank/logarchive
Pour plus d'informations, reportez-vous au manuel Gestion des systèmes de fichiers ZFS dans Oracle Solaris 12.
Dans Oracle Solaris 11.4, une nouvelle fonction ACL de ZFS permet d'offrir une meilleure expérience lors du partage d'un système de fichiers ZFS sur les protocoles NFS et SMB (Server Message Block). Une nouvelle valeur d'héritage pour la propriété aclinherit a été ajoutée, qui permet la sémantique passthrough mais remplace les autorisations définies dans les entrées de contrôle d'accès owner@, group@ et everyone@ par les valeurs demandées dans l'appel système open, create ou mkdir. Lorsque les entrées de contrôle d'accès (ACE) pouvant être héritées sont définies, l'héritage des bits est préservé. Ce comportement s'avère important pour permettre au partage SMB et NFS d'hériter des listes de contrôle d'accès (ACL) de façon naturelle. La nouvelle valeur est appelée passthrough-mode-preserve. Aucune modification n'est apportée à la propriété aclmode, mais une opération chmod tient compte du comportement d'héritage par rapport à la propriété aclinherit. En particulier, elle préserve les bits d'héritage lors d'une opération chmod.
Pour plus d'informations, reportez-vous au manuel Gestion des systèmes de fichiers ZFS dans Oracle Solaris 12.
Oracle Solaris 11.4 inclut la prise en charge du serveur pour NFS version 4.1. Le protocole fournit les nouvelles fonctions et considérations suivantes :
Exactly Once Semantics (EOS) – Fournit un cache fiable de demandes en double pour le protocole NFS version 4.1. Ce cache de demandes en double garantit que les demandes non idempotentes, telles que la demande de retrait, s'exécutent une seule fois, même dans les cas de défaillances réseau et de retransmissions temporaires. Cette fonction élimine les problèmes de longue date des versions 3 et 4 de NFS.
reclaim_complete – Nouvelle fonction du protocole qui permet au serveur de reprendre le service NFS rapidement après un redémarrage du serveur. Contrairement à NFS version 4, l'utilisateur n'a pas à attendre un délai spécifique, appelé délai de grâce, avant d'effectuer une reprise du service. Avec reclaim_complete, le serveur peut mettre fin au délai de grâce une fois tous les clients récupérés. Cette fonction s'avère particulièrement importante pour les environnements à haute disponibilité.
Récupération planifiée sans période de grâce (PGR, Planned GRACE-less Recovery) - Permet à un serveur Oracle Solaris NFS version 4 ou NFS version 4.1 de conserver l'état NFS version 4 lors des redémarrages de service NFS ou de la réinitialisation progressive du système afin que le serveur NFS version 4 n'entre pas dans la période de grâce pour récupérer l'état NFS version 4. Les applications client NFS peuvent ainsi éviter une indisponibilité des données de 90 secondes environ lors des redémarrages de service NFS ou des réinitialisations progressives du système.
Tenez compte des problèmes d'interopérabilité suivants :
Le serveur Oracle Solaris NFS version 4.1 prend à la fois en charge les clients Linux et VMware. Toutefois, la délégation doit être désactivée sur le serveur pour les clients Linux.
Il existe des problèmes connus de verrouillage et de récupération en l'état lors de l'utilisation de la délégation avec le client Linux client.
# sharectl set -p server_delegation=off nfs
Vous pouvez désactiver la prise en charge de NFS version 4.1 sur le serveur comme suit :
# sharectl set -p server_versmax=4.0 nfs
Pour plus d'informations sur NFS, reportez-vous à Gestion des systèmes de fichiers réseau dans Oracle Solaris 12.
Lorsqu'un système de fichiers est monté à l'aide de NFS Version 3 et que TCP est le transport sélectionné, la configuration de montage initiale utilisera également TCP en tant que transport. Dans les versions précédentes d'Oracle Solaris, UDP était utilisé pour la configuration de montage et TCP n'était utilisé qu'une fois le montage établi.
Si vous autorisez les montages NFS à travers un pare-feu, cette fonction peut vous permettre de simplifier la configuration du pare-feu.
Elle vous permet également d'utiliser NFS Version 3 sur des sites où le trafic UDP est bloqué.
Pour plus d'informations, reportez-vous à Gestion des systèmes de fichiers réseau dans Oracle Solaris 12 et à la page de manuel mount_nfs(8).
Les systèmes de fichiers tmpfs prennent en charge les attributs système étendus. Pour plus d'informations, reportez-vous aux pages de manuel tmpfs(4FS) et fgetattr(3C).
Oracle Solaris 11.4 prend en charge le protocole SMB 3.1.1 dans le serveur Oracle Solaris SMB, qui inclut les fonctions SMB suivantes :
Partages disponibles en continu – Cette fonction permet à un serveur Oracle Solaris SMB d'assurer la disponibilité continue des partages en cas de panne ou de réinitialisation d'un serveur.
Multicanal – Cette fonction permet à un serveur de fichiers Oracle Solaris SMB d'utiliser plusieurs connexions réseau par session SMB afin d'offrir un débit accru et une meilleure tolérance aux pannes.
Chiffrement – Cette fonction permet à un serveur Oracle Solaris SMB de chiffrer le trafic du réseau SMB entre les clients et le serveur. Le chiffrement SMB sécurise les sessions SMB et les protège contre l'altération et les attaques de type écoute électronique.
Pour plus d'informations, reportez-vous à Managing SMB File Sharing and Windows Interoperability in Oracle Solaris 11.4 et à la page de manuel smbstat(8).