O Stackdriver Extractor falha

6

Estou tentando fazer com que o stackdriver funcione com o GCE. Eu fui através das instruções padrão para instalar (executando stack-install.sh --write-gcm ), no entanto, parece que não funciona de todo. Quando adiciono alertas de monitoramento para observar processos, recebo:

Process monitoring not available for this instance

Em /var/log/messages , vejo:

Mar 28 19:47:59 myhost stackdriver-agent: which: no java in (/root/.gvm/bin:/usr/local/sbin:/sbin
:/usr/sbin:/bin:/usr/bin:/go/bin:/bin)
Mar 28 19:47:59 myhost stackdriver-agent: Starting stackdriver-collectd: option = PIDFile; value 
= /var/run/stackdriver-agent.pid;
Mar 28 19:47:59 myhost stackdriver-agent: option = Interval; value = 60.000000;
Mar 28 19:47:59 myhost stackdriver-agent: Created new plugin context.
Mar 28 19:47:59 myhost stackdriver-agent: [  OK  ]
Mar 28 19:47:59 myhost collectd[1934]: Initialization complete, entering read-loop.
Mar 28 19:47:59 myhost systemd: Started LSB: start and stop Stackdriver Agent.
Mar 28 19:47:59 myhost collectd[1934]: match_throttle_metadata_keys: 1 history entries, 1 distinc
t keys, 71 bytes server memory.
Mar 28 19:47:59 myhost collectd[1934]: tcpconns plugin: Reading from netlink succeeded. Will use 
the netlink method from now on.
Mar 28 19:47:59 myhost collectd[1934]: write_gcm: Asking metadata server for auth token

Verifiquei que o serviço está ativado. Quando eu verifico as permissões, ele diz que não preciso de credenciais especiais, pois estou usando o GCE. No entanto, quando eu reinicio o serviço stackdriver-extractor, recebo:

Please set STACKDRIVER_API_KEY in /etc/sysconfig/stackdriver

E se eu definir isso ... recebo:

stackdriver-extractor[3020]: Starting stackdriver-extractor: Unable to determine extractor endpoint! 
stackdriver-extractor[3020]: Unable to generate config file

Sinto que algo está errado no nível do projeto em que esse serviço não está recebendo as informações-chave automaticamente como deveria.

Eu procurei os scripts e descobri onde ele fica ...

curl -f -H "Metadata-Flavor: Google" http://169.254.169.254/computeMetadata/v1/project/attributes/stackdriver-agent-key

Mas isso está recebendo um 404.

Além disso, quando verifico os escopos:

# curl --silent -f -H "Metadata-Flavor: Google" http://169.254.169.254/computeMetadata/v1/instance/service-accounts/default/scopes
https://www.googleapis.com/auth/cloud.useraccounts.readonly
https://www.googleapis.com/auth/devstorage.read_only
https://www.googleapis.com/auth/logging.write
https://www.googleapis.com/auth/monitoring.write

Alguma ideia? Meu maior problema é que não consigo criar alertas sobre a contagem de processos, mas acho que é aqui que o Stackdriver obtém isso.

    
por woot 28.03.2016 / 22:32

2 respostas

4

Para corrigir esse problema, corrigi a chave da API. Eu acidentalmente deixei de lado as aspas duplas quando editei o arquivo.

Isso me leva ao próximo ponto. Por que editei o arquivo? Eles fornecem um bom utilitário fácil para adicionar uma chave de API. Nós devemos usá-lo.

/opt/stackdriver/stack-config --api-key DEADBEEFDEADBEEFDEADBEEFDEADBEEF...

Até mesmo reiniciará os serviços para você.

Quanto a como cheguei a este lugar para começar ... Eu acidentalmente copiei / colei uma chave de API parcial. Não foi óbvio porque perdi um pouco no final. Pequenos pedaços importam.

Por que não consegui fazer isso funcionar alterando o escopo para todo o acesso à API, não sei. Eu pensei que funcionaria como eu realmente não quero ter que mexer com mais statefulness no meu disco VM do que eu preciso. Mas vou tomar uma solução de trabalho neste momento.

Um último conselho ... se você estiver aqui, talvez seja necessário também encontrar sua chave de API. Você pode encontrá-lo aqui:

link

Se um não estiver lá, você poderá criá-lo.

Boa sorte!

    
por 30.03.2016 / 16:19
0
Apenas o uso de chaves de API é depreciada / herdada. Você deve ativar a Google Monitoring API e apenas instalar o agente.

    
por 26.04.2016 / 16:08