Агент Kinesis не запускается: вызвано: java.nio.file.AccessDeniedException

Я установил агент на Ubuntu 14.04... Раньше он работал нормально, но потом внезапно остановился и теперь получал следующую ошибку при запуске

sudo service aws-kinesis-agent start
 * Starting aws-kinesis-agent
[ OK ] 

2016-07-10 18:46:40.373+0530 prod-api-ip-10-0-0-48 (main) com.amazon.kinesis.streaming.agent.Agent [INFO] Reading configuration from file: /etc/aws-kinesis/agent.json
2016-07-10 18:46:40.404+0530 prod-api-ip-10-0-0-48 (main) com.amazon.kinesis.streaming.agent.Agent [INFO] null: Agent will use up to 96 threads for sending data.
2016-07-10 18:46:40.411+0530 prod-api-ip-10-0-0-48 (main) com.amazon.kinesis.streaming.agent.Agent [ERROR] Unhandled error.
java.lang.RuntimeException: Failed to create or connect to the checkpoint database.
        at com.amazon.kinesis.streaming.agent.tailing.checkpoints.SQLiteFileCheckpointStore.connect(Unknown Source)
        at com.amazon.kinesis.streaming.agent.tailing.checkpoints.SQLiteFileCheckpointStore.<init>(Unknown Source)
        at com.amazon.kinesis.streaming.agent.Agent.<init>(Unknown Source)
        at com.amazon.kinesis.streaming.agent.Agent.main(Unknown Source)
Caused by: java.nio.file.AccessDeniedException: /var/run/aws-kinesis-agent
        at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102)
        at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107)
        at sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:384)
        at java.nio.file.Files.createDirectory(Files.java:674)
        at java.nio.file.Files.createAndCheckIsDirectory(Files.java:781)
        at java.nio.file.Files.createDirectories(Files.java:767)

2 ответа

Решение

Я лично обнаружил, что Kinesis Agent действительно не стабилен. Вышеупомянутая проблема была решена, просто перезапустив агент! Но опять же, через 30 минут снова произошло какое-то другое исключение.

Я бы порекомендовал попробовать другой агент, такой как Clodwatch, который может продолжать отправлять логи в логи CloudWatch (хотя я также не проверял это).

Я собираюсь использовать logrotate, а затем копировать файлы журналов в корзину S3. Я знаю здесь; может быть макс. отставание в 1 час.

Добавьте пользователя aws-kinesis-agent-user в группу sudoers:

      sudo usermod -aG sudo aws-kinesis-agent-user

Дополнительные настройки рабочего агента: /questions/53849557/agent-aws-kinesis-ne-avtorizovan-dlya-vyipolneniya-firehoseputrecordbatch/62872457#62872457

Другие вопросы по тегам