Как остановить экземпляр EC2 из RStudio Server

Я настроил RStudio Server на экземпляре Amazon EC2, который оплачивается по часам. Мне регулярно приходится выполнять длительные работы в ночное время на этом экземпляре. Я хотел бы остановить сервер EC2, когда моя работа R будет выполнена, чтобы избежать платы за часы, которые я не использую.

Как мне это сделать?


person AdamNYC    schedule 10.12.2012    source источник
comment
Что вам нужно, так это использовать микроэкземпляр для размещения вашей среды R studio. Это будет иметь минимальную стоимость (я считаю, что первый год бесплатно). Затем вы можете использовать такой пакет, как Segue, для отправки любых сложных вычислений в Amazon EMR. При таком подходе плата за использование будет взиматься только во время выполнения задания.   -  person Dave    schedule 10.12.2012
comment
@davewolfs: большое спасибо, что указали мне на это направление. Я даже не знал, что он существует. Пожалуйста, оставьте свой комментарий в качестве ответа, потому что я считаю, что он может быть полезен многим пользователям R. Если у вас есть время, я хотел бы услышать больше об этом решении.   -  person AdamNYC    schedule 10.12.2012


Ответы (1)


Вы можете добавить свое (Unix) имя пользователя (которое вы используете для входа на сервер RStudio) в файл /etc/sudoers с NOPASSWD, чтобы разрешить такое неконтролируемое действие, например:

username ALL = NOPASSWD: /sbin/shutdown

Затем просто остановите компьютер вызовом system, например:

system('sudo shutdown -h now', wait = FALSE)
person daroczig    schedule 10.12.2012
comment
@daroczig: я пробовал это, но он возвращает sudo: no tty present and no askpass program specified. Как мне а) найти пользователя, работающего с RStudio Server, и б) добавить его в файл sudoers? - person histelheim; 30.01.2015