= Jak mogę zautomatyzować mój serwer AWS EC2 Minecraft, aby działał tylko wtedy, gdy ludzie są online? = ![ ](httpswww.redditstatic.com/desktop2x/img/renderTimingPixel.png) Chcę, aby serwer był w trybie offline, gdy nikogo nie ma, i w trybie online, gdy ktoś próbuje się połączyć. Tak, ten! Istnieje również działająca implementacja CDK. Mam gałąź w toku do edycji plików serwera na żywo za pomocą cloudshell i ECS exec, więc nie musisz konfigurować dla niej skomplikowanych zadań. Potrzebuje tylko trochę więcej testów co powiesz na wyzwolenie go z dziennika zapory użytkownika łączącego się z portem Minecraft tcpip? Bot Discord, który uruchamia webhook do lambda, aby włączyć/wyłączyć instancję, jest czymś, co robią ppl Oto tylko przykład. Nie mówię, że tego właśnie chcesz, ale jest to podstawowa przesłanka: httpsdrpump.github.io/ec2-discord-bot/ Może być interesujące httpssidoine.org/how-to-run-a-minecraft-server-on-aws-for-less-than-3-usd-a-month I W szerokich pociągnięciach: Napisz skrypt Pythona, który uruchamia instancję EC2. Uruchom skrypt z funkcji lambda. Utwórz adres URL, który wywołuje lambda. Zautomatyzuj zamykanie instancji EC2 podczas bezczynności. Ostrzeżenie: Istnieje wiele sposobów, aby zrobić te rzeczy źle i sprawić, by ktoś przejął Twoje konto i naliczył ogromny rachunek. Byłby to akceptowany sposób orkiestracji instancji EC2. Ogranicz zakres konta usługi z minimalną rolą powiązaną tylko z tą zamkniętą instancją. Możesz przyznać im dostęp IAM tylko do uruchamiania/zatrzymywania instancji. Alternatywnie możesz to ujawnić za pomocą integracji lambda http i ustawić jako webhook, który uruchamia instancję (pomyśl o aspektach bezpieczeństwa). Aby zamknąć, możesz zautomatyzować ten aspekt za pomocą dzienników przepływu VPC, a jeśli nie ma ruchu do portu serwera Minecraft w ciągu ostatnich N minut, to się wyłączy? httpsgithub.com/infinisil/on-demand-minecraft to całkiem fajna sztuczka, ale nie jestem pewien, gdzie uruchamia serwer proxy przekazywania. Masz problem z kurczakiem i jajkiem. Musi już działać, aby użytkownik mógł spróbować się z nim połączyć. Możesz stworzyć małą aplikację internetową uruchamiającą, która może wysłać polecenie uruchomienia serwera, jeśli jest wyłączony. Jeśli wszyscy twoi znajomi wiedzą, aby najpierw to sprawdzić i odczekać kilka minut (lub niezależnie od czasu uruchomienia), zanim zostanie do nich wysłana wiadomość SMS potwierdzająca, że ​​działa, to może zadziałać. To nie jest super usprawnione, ale jest rozwiązaniem. Gotcha. Czy istnieje sposób, aby moi znajomi uruchomili instancję i zamknęli ją, gdy skończą? Możesz zlecić im trafienie w punkt końcowy lambda, który uruchamia instancję, a następnie skonfigurować ją do zamknięcia, jeśli nie ma połączeń po X czasie wewnątrz instancji za pomocą prostego zadania cron. httpsbriancaffey.github.io/2021/03/18/on-demand-dedicated-serverless-valheim-server-with-cdk-discrod-interactions/ To, oprócz pojemnika Valheim CDK, użyj papieru. Stworzyłem prosty internetowy interfejs użytkownika do włączania/wyłączania instancji EC2. Wykorzystuje API Gateway do obsługi strony i kontrolowania instancji, więc jest zasadniczo bezpłatny. https://github.com/davidcomerford/sketchy-router-controller Używam go do włączania/wyłączania mojej instancji VPN, jeśli ktoś zastanawia się nad nazwą.