Po otrzymaniu powiadomienia e-mail szukam sposobu na ponowne uruchomienie komputerów.
Konfiguracja, której chcę użyć, to farma renderowania. Mamy 5 pudełek z 8 Nvidia GTX 980Ti w nich. Działają w systemie Windows 10 Professional w wersji 64-bitowej.
Problemem jest to, że czasami się zawieszają lub „zatrzymują” podczas renderowania. Mam to skonfigurowane, więc kiedy to się stanie, otrzymam wiadomość e-mail z informacją: „x maszyna utknęła w martwym punkcie”.
Zautomatyzowałem wszystko na maszynach; logują się automatycznie, otwierają niezbędne programy, nawiązują połączenie z naszym serwerem licencji i mapują wszystkie wymagane dyski sieciowe.
Zasadniczo wszystko, co musisz zrobić, to wyłączyć i włączyć ponownie, a to znowu działa.
Zastanawiam się więc, czy mogę skonfigurować program, zdarzenie lub skrypt, który nakazuje komputerom ponowne uruchomienie po otrzymaniu wiadomości e-mail z informacją, że komputer się zawiesił?
Na komputerze, na którym będzie to działało, jest zainstalowany system Windows 7 Pro 64-bit.
źródło
Odpowiedzi:
Chcesz urządzenia o nazwie „Remote Power Switch”, którego używaliśmy w moim miejscu pracy do zdalnego restartowania modemów kablowych, to UIS-322b poniżej:
Możesz skonfigurować go przy użyciu adresu IP, a następnie zalogować się do niego, aby włączyć, wyłączyć lub włączyć zasilanie podłączonego urządzenia i ustawić go zgodnie z harmonogramem. Nie można kontrolować tego za pośrednictwem poczty e-mail, ale za pośrednictwem interfejsu internetowego. Nadal możesz ustawić coś za pomocą
wget
lubcurl
automatycznie wysłać do niego żądanie internetowe. Może mieć inne funkcje i możliwości sterowania, których nie znam.Jeśli korzystasz z systemów renderujących, które zużywają dużo energii, nie jestem pewien, czy określone urządzenie powyżej może je obsłużyć, ale mogą istnieć inne, które to robią. Inną rzeczą, której należy szukać, jest „Kontrolowana listwa zasilająca”.
źródło
Czy mogę skonfigurować program, zdarzenie lub skrypt, który nakazuje komputerom ponowne uruchomienie?
To zależy od tego, co rozumiesz przez:
Jeśli zdalne urządzenie zawiesiło się w sposób wymagający „twardego resetu”, to zdalny restart nie będzie działał.
Powiedziawszy to, możesz użyć
shutdown
do zdalnego ponownego uruchomienia urządzenia.Przykład:
/r
- Wyłącz i uruchom ponownie komputer./f
- Wymuś zamknięcie działających aplikacji bez uprzedzania użytkowników./m \\computer
- Określ komputer docelowy.Możesz uruchomić powyższe polecenie z programu Outlook, gdy otrzymasz odpowiedni e-mail.
Poniższy link Porady: wyzwalanie aplikacji pocztą e-mail w programie Outlook powinien zacząć.
shutdown
stosowanieDalsza lektura
źródło
Jeśli masz rzeczywiste serwery , prawdopodobnie mają one funkcję zdalnego zarządzania, z którą można się połączyć, nawet jeśli główny system operacyjny urządzenia jest całkowicie zamrożony. Zasadniczo używasz SSH do łączenia się ze sterownikiem. Wydane polecenie zależy od marki twojego serwera.
W przypadku serwerów Dell, które używają DRAC (Dell Remote Access Controller), polecenie, które należy wykonać po SSH'ing do DRAC to:
Wykonuje twardy reset, równoważny wyciągnięciu przewodu zasilającego, a następnie zrestartowaniu urządzenia. Jeśli maszyna nie jest całkowicie zawieszona,
powercycle
zamiasthardreset
wykonać zadanie. ( Źródło. )Serwery HP używają iLO, który jest również dostępny przez SSH. Polecenie twardego resetu to po prostu:
( Źródło , oficjalne odniesienie PDF do skryptów iLO).
Możesz połączyć otrzymywanie wiadomości e-mail z wykonaniem tych poleceń, korzystając z odpowiedzi DavidPostill. Istnieją klienci SSH dla systemu Windows; Wierzę, że PuTTY ma interfejs wiersza poleceń.
źródło
Użyj programu Outlook.
Link na dole odpowiedzi zawiera informacje, które pomogły w uzyskaniu tej odpowiedzi. Uznanie dla GuidingTech.com
Najpierw utwórz plik .bat.
shutdown.exe /r /t 00
Zapisz jako Restart.bat
Upewnij się, że komputer jest zalogowany za pomocą wiadomości e-mail, na którą otrzymasz powiadomienie e-mail.
Możesz skonfigurować różne konta dla każdego komputera, jeśli chcesz, i skonfigurować pocztę e-mail, aby przekazywać otrzymane wiadomości e-mail jako powiadomienia.
Przykład.
[email protected] to komputer host z kartą graficzną, która nie jest renderowana.
Testemail.com to Twój e-mail, na który otrzymujesz powiadomienia.
Po otrzymaniu wiadomości e-mail program Outlook automatycznie prześle ją z powrotem na odpowiedni adres e-mail. którym w tym przypadku jest [email protected]
[email protected] otrzymano na [email protected], a następnie przekazano ten e-mail do wszystkich komputerów.
Sztuczka polega na tym, aby dla każdego komputera skonfigurować inną wiadomość e-mail z powiadomieniem, aby wiedziała, którą zamknąć.
Aby skonfigurować regułę przekazywania dalej, postępuj zgodnie z tymi instrukcjami i wpisz słowo w temacie na podstawie komputera, który chcesz zrestartować.
Uwaga: Służy to do skonfigurowania komputera, na który otrzymujesz wiadomości e-mail, a następnie skonfigurujemy poszczególne elementy.
Teraz określ, czego ma dotyczyć wiadomość e-mail, aby uruchomić ponowne uruchomienie.
Przykład, jeśli wybierzesz temat.
Powiedz, że wybrane słowo to Computer1-RenderIssue
Wpisz to w polu „Określ słowa lub wyrażenia do wyszukania w podhektie”
Teraz, gdy masz już konfigurację, czas zrobić ostatni krok.
Teraz za każdym razem, gdy jeden z was ma problem z renderowaniem wiadomości e-mail, zostanie on wysłany z określonym komputerem. Spowoduje to przesłanie wiadomości e-mail na ten komputer i ponowne uruchomienie komputera.
Mam nadzieję że to pomoże. Próbowałem sformatować go najlepiej, jak mogłem, wykonując swoją pracę.
Odniesienie do niektórych prac tutaj
źródło
Szczerze mówiąc, jeśli wszystko, co chcesz zrobić, to (mocno) odbić pudełko, najłatwiej jest „nacisnąć przycisk resetowania”.
Ponieważ musisz wykonać reset HARD, możesz albo zadzierać po stronie wysokiego napięcia (dość ryzykowne), albo zrobić to na płycie głównej.
Niektóre płyty główne z wyższej półki mają wbudowaną kartę sieciową / kontroler do odbijania komputera. Można jednak również podłączyć przełącznik resetowania do płytki przekaźników i sterować nim za pomocą oddzielnej maszyny.
Radziłbym podłączyć Raspberry Pi przez GPIO do płyty przekaźnikowej. Następnie podłącz każdy przekaźnik do przełącznika resetowania na płytach głównych.
źródło
Czy rozważałeś uruchomienie swojego serwera jako klienta na maszynie wirtualnej? Uruchomiłeś oprogramowanie VM (VMware, VirtualBox) na serwerze fizycznym, a następnie uruchomiłeś maszynę wirtualną z oprogramowaniem do renderowania jako klientem. Bez przetwarzania na komputerze, powinieneś uzyskać porównywalną wydajność i łatwiej byłoby zatrzymać i zrestartować maszynę wirtualną niż fizyczną.
źródło
Sugeruję zbadanie, czy płyty główne tych maszyn mają na pokładzie zegar kontrolny. Uważam, że są one dość powszechne przynajmniej w przypadku chipsetów Intela. Jeśli obecny jest sprzęt nadzorujący, znajdź odpowiednie oprogramowanie systemu Windows, aby skonfigurować minutnik, i regularnie je resetuj, dopóki urządzenie nie zostanie odmrożone. Jeśli maszyna zawiesi się, oprogramowanie nie będzie mogło zresetować timera, a watchdog zresetuje maszynę. To powinno przynajmniej rozwiązać problem zawieszania się twardego systemu.
W zależności od oprogramowania może być możliwe dodanie dodatkowych wymagań dotyczących resetowania timera, takich jak łączność sieciowa, proces renderowania nadal działa, proces renderowania poczynił pewne postępy od ostatniego resetu timera lub podobnie. Nie znam dostępnego oprogramowania w systemie Windows, do tej pory korzystałem tylko z watchdoga w systemie Linux .
źródło
Tutaj opisano jedno kreatywne rozwiązanie
Chłopcy rozwiązali podobny problem, stojąc naprzeciw siebie 2 PC. Gdy nadeszła wiadomość e-mail, komputer otworzył (a następnie zamknął) zwiastun CD, więc nacisnął przycisk resetowania na drugim komputerze.
Oczywiście możesz użyć wszystkiego innego, co jest w stanie zasygnalizować i przenieść dowolną część tam iz powrotem (np. Serwomechanizm podłączony do czegoś - port równoległy starego komputera, GPIO z Rapsberry lub Arduino, lub cokolwiek innego, co masz w pobliżu)
źródło