Harmonogram zadań zaplanowanych w systemie Windows Server 2016 musi być w przyszłości

20

Mamy serwer 2012, który ma około 20 zaplanowanych zadań używanych do monitorowania. Zbudowaliśmy serwer 2016, aby go zastąpić, a gdy przenoszę zadania na nowy serwer, napotkałem problem. Większość naszych zadań działa co kilka minut.

W Server 2012 planujemy rozpoczęcie zadania o godzinie 1200 rano bieżącego dnia (czyli o przeszłości) i powtarzanie go co X minut. Zadanie rozpocznie się w następnym zaplanowanym terminie. Doskonały.

W Server 2016 harmonogramy, które zaczynają się w przeszłości, nie są uruchamiane. Musieliśmy więc zaplanować jego uruchomienie w przyszłości. Jest w porządku, dopóki nie uruchomisz się ponownie. Teraz czas rozpoczęcia jest w przeszłości i nie będzie działać. Nie rejestruje nawet nieudanego uruchomienia. Kolumna Next Run Time pokazuje, że powinna działać, ale nie działa.

Przykład aktualnego harmonogramu

Czy oprócz stworzenia dwóch wyzwalaczy, jednego uruchamianego w przyszłości, a drugiego przy ponownym uruchomieniu (czego nie chcemy robić, ponieważ niektóre zadania powinny być uruchamiane tylko w określonych godzinach), czy jest lepszy sposób? To wydaje się być błędem. Wersja 2012 działała świetnie.

AKTUALIZACJA

Istnieje obejście tego problemu. Utwórz harmonogram jednorazowy, który będzie działał bez końca. Działa to po ponownym uruchomieniu, tak jak można się spodziewać. Wiem, że nie jest to świetne dla harmonogramów, które są „dziwne”, ale działa dobrze w przypadku rzeczy, które chcemy uruchamiać co 3 minuty lub cokolwiek innego.

SteveB
źródło
1
Mam ten sam problem i nie znalazłem rozwiązania. Czy ty? Wygląda na taki duży błąd. Znalazłem także, że zadanie Google Chrome działa, ale zadanie, które wykonałem, nie działa. Więc może jest to głębszy problem z pozwoleniem?
Tyler
Odkryłem, że jeśli stworzę harmonogram „jednorazowy”, który zacznie się w przyszłości i będzie działał bez końca, zadziała. Nie znalazłem jeszcze nic.
SteveB
Taki dziwny błąd, który zostanie dopuszczony do systemu. Nie mogę uwierzyć, że tylko ty i znalazłem to. Czy istnieje sposób, aby to zgłosić, aby można było to rozwiązać?
Tyler,
Ten problem złapał mnie również podczas migracji z systemu Windows Server 2012 do 2016 i myślę, że znalazłem wyjaśnienie (zobacz moją odpowiedź). Czy na pewno poprzednie wersje systemu Windows zachowywały się inaczej?
Heinzi
2
Tak. Rok 2012 zachował się tak, jak wszyscy zakładamy, że powinien.
SteveB,

Odpowiedzi:

5

Do waszej informacji - Potwierdziłem z Microsoftem poprzez bilet wsparcia, który otworzyłem wczoraj, że jest to błąd. Technologia wsparcia potwierdziła, że ​​jest wewnętrznie sklasyfikowana jako błąd i opracowywana jest łatka. Otrzymałem docelową datę wydania łatki na lipiec / sierpień.

Dotyczy to zarówno systemu Windows 10, jak i serwera 2016. Moje systemy testowe zostały załatane do wczorajszej aktualizacji zbiorczej. Problem nie wystąpił w Server 2012 R2 i Windows 7.

EDYCJA - prawdopodobnie w sierpniu, ale zdecydowanie we wrześniu 2017 r., Ten problem został rozwiązany w systemach, na których go testowałem.

Tom Collins
źródło
Dziękuję za informację! Oszalałem z frustracji. Moje zadania zostały zaimportowane ze starszego serwera Server 2012 na nowy komputer Server 2016. Wtedy zacząłem widzieć ten problem.
David Gunderson
Doceniam Twoje wysiłki. Czy wiesz, czy łatka została już wydana (październik 2017 r.)? czy masz odniesienie do odpowiedniego artykułu z bazy wiedzy lub czegoś takiego?
yossiz74,
Nie mam do tego bazy wiedzy, ale podczas testowania stwierdziłem, że od skumulowanej poprawki z września 2017 r. Problem zniknął, więc uważam, że teraz jest to naprawione.
Tom Collins,
Od lutego 2018 r. Na Win Server 2016 zadania „Powtórz zadanie co 20 minut” nie są uruchamiane, jeśli je wyłączę i ponownie włączę.
Ben Amada,
4

Ten problem dotyczy tylko zadań z Repeat task every: ...ustawioną opcją.

Do tej pory miałem wrażenie, że trigger at X, then repeat every 10 minutesjest to niepotrzebnie skomplikowany sposób pisania trigger at every xx:x0w Harmonogramie zadań.

Najwyraźniej tak nie jest. Najwyraźniej oznacza to dokładnie to, co mówi: Zadanie jest uruchamiane od X razu, a dopiero potem jest powtarzane. Bez początkowego wyzwalania, bez powtórzeń. Wygląda na to, że trigger at every xx:x0w Harmonogramie zadań nie ma prostego sposobu na zaplanowanie (czy może jest to osobne pytanie o awarię serwera). Fakt, że kolumna „Czas następnego uruchomienia” pokazuje coś innego, nie jest zbyt pomocny.

„Rozwiązujemy” ten problem, planując uruchamianie zadania o godzinie 12:00 każdego dnia (zamiast tylko jednego dnia), a następnie powtarzanie co ...minutę przez 1 dzień. Oznacza to, że jeśli nastąpi restart, o godzinie 12:00 zadania zostaną wznowione. Nie jest idealny, ale jest to akceptowalny kompromis.

Wydaje mi się, że można skrócić „czas przestoju zadania” do 1 godziny, tworząc jeden wyzwalacz na każdą godzinę, a następnie powtarzaj zadanie co ...minutę przez 1 godzinę.

Zaskakujące wydaje się, że zawsze tak było (patrz pierwszy komentarz do tej odpowiedzi ), do tej pory po prostu tego nie zauważyliśmy. Zgodnie z innymi komentarzami powiązanej odpowiedzi, kanonicznym sposobem rozwiązania tego problemu jest aktywacja Run task as soon as possible after a scheduled start is missedopcji.

Tak, to błąd, ale jest to kolumna „Next Run Time”, która jest błędna, a nie faktyczne planowanie.

Heinzi
źródło
Jedynym problemem związanym z planowaniem go na jeden dzień są niektóre z naszych zadań monitorowania. Nie chcę spędzać godzin bez nich.
SteveB,
-1

1 . Windows 2016 Server koniecznie wymaga następujących opcji w pracy:

  • Uruchom zadanie tak szybko, jak to możliwe po pominięciu uruchomienia harmonogramu lub
  • Jeśli zadanie się nie powiedzie, uruchom ponownie co

Zauważyłem te opcje na zrzucie ekranu

2 . Dodaj dodatkowy wyzwalacz. Jak na przykład:

  • Podczas tworzenia lub edycji zadania
  • Kiedy zaczynasz

itp. w rozumieniu: przenieść zadanie, aby rozpocząć o żądanej godzinie

3 . W niektórych zadaniach w systemie Windows 2016 - wdrożył to podejście.

nndvrus
źródło