22 votes

Le calendrier des tâches planifiées de Windows Server 2016 doit être dans le futur.

Nous avons un serveur 2012 qui a environ 20 tâches planifiées qui sont utilisées pour la surveillance. Nous avons construit un serveur 2016 pour le remplacer et en déplaçant les tâches vers le nouveau serveur, j'ai rencontré un problème. La plupart de nos tâches s'exécutent toutes les quelques minutes.

Dans Server 2012, nous programmerions la tâche pour qu'elle démarre à 12 h 00 du jour en cours (donc à une date antérieure) et se répète toutes les X minutes. La tâche démarre à l'heure prévue suivante. Parfait.

Dans Server 2016, les planifications qui commencent dans le passé ne s'exécutent pas. Nous avons donc dû le planifier pour qu'il démarre dans le futur. Cela fonctionne bien jusqu'à ce que vous redémarriez. Maintenant, l'heure de démarrage est dans le passé et il ne s'exécute pas. Il n'enregistre même pas d'échec d'exécution. La colonne "Next Run Time" indique qu'il devrait s'exécuter mais ne le fait pas.

Example Current Schedule

Outre la création de deux déclencheurs, l'un qui se déclenche dans le futur et l'autre qui se déclenche au redémarrage (ce que nous ne voulons pas faire puisque certaines tâches ne doivent être exécutées qu'à des moments précis), existe-t-il une meilleure solution ? Il semble s'agir d'un bogue. La version 2012 fonctionnait très bien.

UPDATE

Il existe une solution de contournement pour cela. Créez un programme unique qui fonctionne indéfiniment. Cela fonctionne après les redémarrages, comme vous pouvez vous y attendre. Je sais que ce n'est pas idéal pour les programmations "bizarres" mais cela fonctionne bien pour les choses que nous voulons exécuter toutes les 3 minutes ou autre.

5voto

bilelz Points 39

Pour votre information - J'ai confirmé à Microsoft, par le biais d'un ticket d'assistance que j'ai ouvert hier, qu'il s'agit d'un bogue. Le technicien d'assistance a confirmé qu'il s'agit d'un bogue classé en interne et qu'un correctif est en cours de développement. On m'a donné une date cible de publication du correctif pour juillet/août.

Cela affecte à la fois Windows 10 et Server 2016. Mes systèmes de test ont été corrigés jusqu'à la mise à jour cumulative d'hier. Le problème ne s'est pas produit dans Server 2012 R2 et Windows 7.

EDIT - Depuis peut-être août, mais certainement septembre 2017, ce problème est corrigé sur les systèmes sur lesquels je l'ai testé.

3voto

Heinzi Points 2058

Ce problème ne semble affecter que les tâches avec l'option Repeat task every: ... l'option choisie.

Jusqu'à présent, j'avais l'impression que trigger at X, then repeat every 10 minutes est juste une façon inutilement compliquée d'écrire trigger at every xx:x0 dans le planificateur de tâches.

Apparemment, ça ne l'est pas. Apparemment, ça veut dire exactement ce que ça veut dire : La tâche est déclenchée à X et ensuite, et seulement ensuite il est répété. Pas de déclenchement initial, pas de répétition. Il semble qu'il n'y ait pas de moyen simple de programmer trigger at every xx:x0 Le fait que la colonne "Next Run Time" indique quelque chose de différent n'est pas très utile.

Nous "résolvons" ce problème en planifiant l'exécution de la tâche à 12 heures. chaque jour (au lieu d'un seul jour) et de répéter ensuite tous les ... minutes pendant 1 jour. Cela signifie que si un redémarrage se produit, à 12h00, les tâches reprendront. Ce n'est pas idéal, mais c'est un compromis acceptable ici.

Je suppose que vous pourriez réduire le "temps d'arrêt de la tâche" à 1 heure en créant un déclencheur pour chaque heure et en faisant en sorte que la tâche soit répétée après chaque heure. ... minutes pendant 1 heure.

Étonnamment, il semble qu'il en ait toujours été ainsi (voir le premier commentaire à cette réponse ), mais nous ne l'avions jamais remarqué jusqu'à présent. D'après les autres commentaires de la réponse liée, la façon canonique de résoudre ce problème est d'activer la fonction Run task as soon as possible after a scheduled start is missed option.

Donc, oui, c'est un bug, mais c'est la colonne "Next Run Time" qui est buggée, pas la programmation proprement dite.

-1voto

Alex Points 31

1 . Windows 2016 Server nécessitent nécessairement ces options dans votre travail :

  • Exécutez la tâche dès que possible après avoir manqué un démarrage programmé ou
  • Si la tâche échoue, redémarrez tous les

J'ai noté ces options dans la capture d'écran

2 . Ajouter un déclencheur supplémentaire. Par exemple :

  • Lors de la création ou de la modification d'une tâche
  • Quand vous commencez

etc. au sens de : déplacer une tâche pour qu'elle commence au moment souhaité

3 . Dans certaines tâches de Windows 2016 - mis en œuvre cette approche.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X