Rundeck 2.5.1 - Não há nós correspondentes no trabalho executado localmente

5

Estou trabalhando com o Rundeck v2.5.1 e estou tentando configurar um job que é executado localmente. O trabalho executa um script in-line que executa outro script. Quando eu executo o trabalho (como admin), parece que o Rundeck não executa nenhum script in-line. Aqui está a saída do trabalho:

com.dtolabs.rundeck.core.NodesetEmptyException: No matched nodes: MultiNodeSelector{nodenames=[localhost]}
 at com.dtolabs.rundeck.core.execution.workflow.NodeFirstWorkflowStrategy.validateNodeSet(NodeFirstWorkflowStrategy.java:341)
 at com.dtolabs.rundeck.core.execution.workflow.NodeFirstWorkflowStrategy.executeWorkflowImpl(NodeFirstWorkflowStrategy.java:84)
 at com.dtolabs.rundeck.core.execution.workflow.BaseWorkflowStrategy.executeWorkflow(BaseWorkflowStrategy.java:182)
 at com.dtolabs.rundeck.core.execution.WorkflowExecutionServiceThread.run(WorkflowExecutionServiceThread.java:55)
Exception: class com.dtolabs.rundeck.core.NodesetEmptyException: No matched nodes: MultiNodeSelector{nodenames=[localhost]}
No matched nodes: MultiNodeSelector{nodenames=[localhost]}

também, aqui está o admin.aclpolicy (/etc/rundeck/admin.aclpolicy)

description: Admin, all access.
context:
  project: '.*' # all projects
for:
  resource:
    - allow: '*' # allow read/create all kinds
  adhoc:
    - allow: '*' # allow read/running/killing adhoc jobs
  job:
    - allow: '*' # allow read/write/delete/run/kill of all jobs
  node:
    - allow: '*' # allow read/run for all nodes
by:
  group: admin


---


description: Admin, all access.
context:
  application: 'rundeck'
for:
  resource:
    - allow: '*' # allow create of projects
  project:
    - allow: '*' # allow view/admin of all projects
  storage:
    - allow: '*' # allow read/create/update/delete for all /keys/* storage content
by:
  group: admin

O rundeck está sendo executado em uma instância do EC2 em um VPC. A instância está executando o Ubuntu 14.04.2 lts. Depois de conectar à instância via ssh, posso curvar Rundeck com sucesso.

$ curl -I -L localhost:4440
HTTP/1.1 302 Found
Set-Cookie: JSESSIONID=s1uqcqv0n9h0p4t49m8j2sxx;Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Location: http://localhost:4440/user/login;jsessionid=s1uqcqv0n9h0p4t49m8j2sxx
Content-Length: 0
Server: Jetty(7.6.0.v20120127)


HTTP/1.1 200 OK
Content-Language: en-US
Content-Type: text/html;charset=UTF-8
Content-Length: 5260
Server: Jetty(7.6.0.v20120127)

Eu tenho procurado por aqui e outros grupos / lugares, mas realmente não consegui encontrar nada que corresponda ao que estou experimentando e à versão do Rundeck.

Alguém usando o Rundeck 2.5.1 viu esse tipo de erro antes / sabe como posso fazer esse trabalho funcionar?

<3> mikey

    
por mikey 04.08.2015 / 07:32

3 respostas

4

Eu corri para exatamente o mesmo problema. Eu consegui trabalhar habilitando

Include Server Node: Yes

no seu principal Resource Model Source na configuração do seu projeto.

    
por 06.08.2015 / 08:05
1

Por favor, monitore /var/log/rundeck/rundeck.audit.log arquivo por um tempo para obter o motivo certo. Isso lhe daria mais pistas. Muito provavelmente, o seu problema é semelhante ao descrito abaixo.

Eu enfrentei esse problema com o trabalho criado a partir da API. A única coisa com o rundeck é que ele tem uma política de ACL separada para tokens de API, que não dependem realmente de grupos de usuários que emitem tokens de API. Isso foi fora do senso comum e um pouco surpreendente, mas, no entanto, eu tenho que trabalhar. Se a configuração do problema for a mesma (tarefa criada a partir da API), tente ver /etc/rundeck/apitoken.aclpolicy e certifique-se de que ela tenha allow: [read,run] para o nó por api_token_group.

    
por 10.06.2016 / 15:28
-2

Acabei de criar um novo projeto para tarefas locais.

    
por 01.03.2016 / 16:42