Optimisation espace disque Nexus 3

De EjnTricks
Révision de 17 mai 2017 à 00:18 par Etienne (discussion | contributions)

(diff) ← Version précédente | Voir la version courante (diff) | Version suivante → (diff)

Nexus permet de centraliser les accès à différents dépôts, à l'origine Maven, et télécharge localement les composants demandés. Le nombre de composant étant très importants, sans parler des versions, l'espace disque peut être rapidement conséquent.

Cet article présente l'utilisation de tâches planifiées afin d'optimiser les espaces disques. Lors d'une première exécution, un gain de 2.6 Go a été réalisé.


Hand-icon.png Votre avis

Nobody voted on this yet

 You need to enable JavaScript to vote


Viewer icon.png Objectif

Nexus permet de mettre en place des tâches planifiées parmi une liste d'actions pré-configurées, dont la purge de composants inutilisés et la compression des espaces disques, blob store, un peu comme une défragmentation des disques. Deux tâches sont créées afin de purger les anciens composants tous les dimanches à heure fixe, et la compression tous les premiers jours du mois.


Scheduled-Tasks-icon.png Administration tâches

Afin de créer une tâche, il faut se rendre dans l'interface d'administration et cliquer sur la section Tasks. Les tâches déja mises en place sont présentées dans la liste sur la partie de droite.


Sur cette copie d'écran, une première tâche est disponible, mise en place pour l'optimisation des indexes.

La création d'une tâche est initiée en cliquant sur le bouton Create task. Une liste de types de tâches est alors présentée.


Delete-file-icon.png Suppression anciens composants

Configuration-icon.png Paramétrage

Lors des dévelopements, des librairies externes sont utilisées. Celles-ci évoluent au fil du temps et une version précédement utilisée peut ne plus être nécessaire. Il est donc inutile de la conserver au niveau de Nexus. Au pire, cette version sera téléchargée de nouveau ci nécessaire.

Ce nettoyage s'effectue à l'aide d'une tâche Purge unused components and assets.

En sélectionnant ce type, un formulaire est présenté à l'utilisateur.


Sur ce formulaire, les paramètres sont les suivants.

Paramètre Valeur
Task enabled Case à cocher pour activer la tâche.
Task Name Spécifie le nom de la tâche.
Notification email En cas d'échec, adresse destinaitre d'un mail d'avertissement.

Optionel

Repository Sélction unique du dépôt devant être nettoyé.
Last used in days Durée de rétention des composants. Si ils ne sont pas utilisés depuis le nombre de jours configurés, ils seront supprimés du dépôt.
Task fréquency Planiification de la tâche.

Dans le cadre de cet exemple, le dépôt Central va être nettoyé et le nom de la tâche sera Purge central, afin d'être suffisament explicite. Le texte Purge central est saisi dans la zone Task name, et l'option central est sélectionnée dans la liste des dépôts disponibles.


Une fois le dépôt sélectionné, la valeur 20 est saisie comme aramètre Last used in days.

Les paramètres suivants vont permettre de planifier l'exécution. Dans le cadre de cet exemple, une planficiation hebdomadaire est mise en place, en sélectionnant l'option Weekly dans la section Task frequency.


Une formulaire spécifique est alors affiché.


Dans celui-ci, il faut spécifier la date de première exécution, dans le paramètre Start date ainsi que l'heure d'exécution dans le paramètre Time to run this task.

A noter que la sélection de l'heure s'effectue de quart d'heure en quart d'heure. Cependant, il est possible de spécifier manuellement les minutes, comme 23:10 par exemple.

Une planification hebdomadaire ne signifie pas une exécution par semaine. Il est nécessaire de sélectionner au moins un jour d'exécution, mais cela peut être réaliser sur plusieurs jours.

Dans le cadre de cet exemple, la tâche sera exécutée à 23h tous les dimanches comme l'indique le formulaire complété suivant.


La tâche est ensuite enregistrée en cliquant sur le bouton Create task. L'utilisateur est redirigé sur la liste des tâches avec une info bulle, dans le coin supérieur droit, confirmation la création.


Run-icon.png Exécution

Une tâche planifiée sera exécutée en fonction des paramétrages. Mais il est également possible de la délencher manuellement. Pour cela, il suffit de cliquer sur la tâche dans la liste. Les détails sont alors affichés.

Les informations du premier onglet présentent le type de tâche, le statut ainsi que la date de prochaine exécution.

Si la tâche n'est pas en cours d'exécution, le bouton Run est disponible. Il suffit de cliquer dessus pour la déclencher. Un message des confirmation est alors affiché.


En confirmation le choix, l'utilisateur est redirigé vers la liste des tâches et un message de confirmation est affiché dans le coin supérieur droit. Le statut de la tâche est alors Starting.


Une fois démarrée et en cours d'exécution, le statut de la tâche passe à Running, comme cela est indiqué dans la liste.


De la même manière, ce statut est présenté sur le détail de la tâche.


Une fois l'exécution terminée, le statut de la tâche devient Waiting, et une information du temps d'exécution est présenté dans la colonne Last result.


Zip-icon.png Optimisation espace stockage

Les espaces de stockages sont gérés sous la forme de blob store. Par défaut, l'espace default est disponible et suffisant pour une utilisation "simple" ou personnel. Le type de tâche Compact blob store va permettre d'optimiser l'espace disque utilisé. La création de la tâche s'effectue de la même façon que la précédente, depuis l'interface d'administration.

Il faut sélectionner le type Compact blob store pour afficher le formulaire de paramétrage.


Sur ce forumlaire, il faut sélectionner dans une liste le blobstore devant être optimiser. Dans le cadre de cet exemple, le nom de la tâche reprend le nom du blobstore sélectionné, afin de faciliter la lisibilité sur l'interface d'administration.


Le paramétrage de la planification se déroule de la même façon que pour la précédente tache.