Gestion des fichiers
Dernière mise à jour
Dernière mise à jour
Cette section indique quelles données persistantes sont exposées et où. Il recommande également des moyens de persister, de partager et de sauvegarder les données. Pour des stratégies et des recommandations de sauvegarde, consultez la section Continuité des activités et reprise après sinistre.
Trois éléments doivent être conservés dans WorkflowGen : le dossier App_Data
, le dossier de l'application Web wfapps
et les données SQL. Pour déployer une base de données, consultez la section Options d'hébergement SQL Server.
Les deux autres sont des fichiers de WorkflowGen, et la raison pour laquelle ils doivent être conservés via un partage de fichiers est expliquée dans la section Description de l'architecture principale.
Vous devez aussi disposer d'un partage de fichier contenant une licence WorkflowGen valide pour que le conteneur puisse le récupérer. Ces dossiers doivent être exposés aux conteneurs WorkflowGen via des volumes. Pour plus d'informations sur les volumes Docker, consultez l'article Volumes de Docker (disponible en anglais uniquement).
Les volumes sont traités différemment avec les conteneurs Windows par rapport aux conteneurs Linux. Le modèle d'autorisation change et diffère selon que vous utilisez l'isolation de processus ou l'isolation Hyper-V. Avant de poursuivre les procédures décrites dans cette section, vous devez lire l'article Vue d’ensemble du stockage de conteneurs de Microsoft.
Pour l'essentiel, vous devez vous assurer que les conteneurs WorkflowGen peuvent lire et écrire sur le volume wfgdata
et lire à partir du volume de licences. L'utilisateur du conteneur qui accédera aux volumes s'appelle IIS_IUSRS
.
Ceci est le moyen le plus simple de conserver les fichiers WorkflowGen avec les conteneurs. Cela consiste à créer un volume local ou à utiliser un montage de liaison sur votre hôte Docker qui conservera les fichiers après la suppression d'un conteneur. Les volumes sont le moyen préféré pour conserver les fichiers par rapport aux montages liés, car ils sont gérés par Docker. Cette méthode ne s'adapte pas bien à plusieurs hôtes Docker, cependant, d'autres méthodes doivent être considérées dans ce cas.
Pour créer un volume pour chaque chemin de données du conteneur, exécutez la commande suivante :
Ensuite, vous devez copier (ou déplacer) votre fichier de licence sur le volume de licences en exécutant la commande suivante :
Vous pouvez maintenant exécuter le conteneur WorkflowGen avec ces volumes pour conserver les données. Voici un exemple de commande d'exécution :
Vous avez maintenant correctement conservé les fichiers de WorkflowGen.
N'oubliez pas que vous gérez les montages liés manuellement. Ce sont des chemins spécifiques sur l'hôte Docker que vous contrôlez. Pour utiliser les montages de liaisons en tant que volumes, il vous suffit de passer les chemins lorsque vous exécutez la commande d'exécution de la manière suivante :
Vous pouvez utiliser un partage de fichiers SMB avec des conteneurs Windows tels que Azure Files. Concrètement, vous connectez le partage à l'hôte Docker, puis vous le montez comme un montage lié dans des conteneurs. Cela s'appelle un montage SMB. Pour en savoir plus sur les montages SMB, consultez l'article Vue d’ensemble du stockage de conteneurs de Microsoft.
Dans Kubernetes, vous utiliserez un objet Persistent Volume pour spécifier un endroit où Kubernetes placera les données des pods. Pour plus d'informations sur les volumes persistants, consultez la page Persistent Volumes sur le site Web de Kubernetes (disponible en anglais uniquement).
Concrètement, pour WorkflowGen, vous devrez configurer un volume qui peut gérer l'autorisation ReadWriteMany
pour le volume de données WorkflowGen car plusieurs pods en même temps accéderont à ce volume pour lire et écrire des données. En règle générale, pour ce faire, vous devrez créer une revendication de stockage sur le cluster comme suit :
Dans cet exemple, la revendication fait référence à une classe de stockage (Storage Class), mais vous pouvez référencer directement un volume persistant ou d'autres services de stockage spécifiques au cloud en fonction du fournisseur de cloud. Ici, la classe de stockage azurefile
est fournie par Azure Kubernetes Service. L'attribution du stockage se fera automatiquement par le service. Il créera un compte de stockage avec un partage de fichiers d'une capacité de 50 Go.
Si vous configurez WorkflowGen pour utiliser un répertoire de collecte pour les notifications, vous devez également spécifier un volume afin d'exposer les notifications à d'autres services qui les traiteront.
Le chemin par défaut du répertoire de collecte est C:\inetpub\mailroot\Pickup
. Vous pouvez le changer en fournissant à la variable d'environnement WFGEN_APP_SETTING_ApplicationSmtpPickupDirectory
un chemin quelconque à l'intérieur du conteneur. Ensuite, vous devez créer un volume pour les fichiers de la manière suivante :
Vous pouvez maintenant mapper ce volume sur le répertoire de collecte configuré :
À ce stade, vous pouvez déployer un autre conteneur avec votre service pour prendre en charge les notifications et lier le même volume pour partager les fichiers de notification.
Nom
Description
C:\wfgen\data
Ce chemin contient toutes les données WorkflowGen, y compris le dossier App_Data
et toutes les applications de workflow créées dans WorkflowGen (par exemple dans le dossier wfapps
).
C:\wfgen\licenses
Ce chemin contient les licences personnalisées que vous souhaitez pour WorkflowGen. Le conteneur prendra le premier qu'il détecte. Il est recommandé de ne placer qu'une seule licence dans ce répertoire pour éviter les problèmes de licence.
Si vous ne possédez pas de licence d'évaluation, n'oubliez pas de définir la variable d'environnement WFGEN_CONFIG_ApplicationSerialNumber
en fonction de votre licence.