Support Questions

Find answers, ask questions, and share your expertise

oozie job getting suspended

avatar
Contributor

 

After making changes  as

ssh-copy-id -i /home/oozie/.ssh/id_rsa.pub cloudera@example.local.com

 getting permission issue in oozie workflow

 

oozi-W@ssh-34f1] Error starting action [ssh-34f1]. ErrorType [NON_TRANSIENT], ErrorCode [AUTH_FAILED], Message [AUTH_FAILED: Not able to perform operation [ssh -o PasswordAuthentication=no -o KbdInteractiveDevices=no -o StrictHostKeyChecking=no -o ConnectTimeout=20 abc.com  mkdir -p oozie-oozi/0000000-201209133111712-oozie-oozi-W/ssh-34f1--ssh/ ] | ErrorStream: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password,keyboard-interactive).

1 ACCEPTED SOLUTION

avatar
Master Guru

@syedshakir This is most probably ssh is not setup properly. You can try below steps.

 

  1. On the Oozie Server host run the command:

    ps -ef| grep oozie
  2. Identify the user that runs the Oozie server. For example, the user is oozie

  3. Modify /etc/passwd file to edit the user oozie

  4. Change:
    oozie:x:485:483:Oozie User:/var/lib/oozie:/bin/false

     to: 

    oozie:x:485:483:Oozie User:/var/lib/oozie:/bin/bash

    Note: This will enable the user oozie to login.

  5. In the command prompt switch user as oozie:

    su - oozie
  6. Verify that the user is switched by executing the command:

    id
  7. Execute ssh-keygen:

    Note:Do not give any password. This generates Public and Private Key for passwordless authentication and saves it in the Oozie user's home directory.

    ssh-keygen
  8. Execute ssh-copy-id to copy the public key to user’s home directory in the remote host. This user will be the one that runs ssh commands in remote host:

    ssh-copy-id -i /home/oozie/.ssh/id_rsa.pub cloudera@example.local.com
  9. Test by executing ssh without a password to confirm a successful authentication:

    ssh cloudera@example.local.com
  10. Run the Oozie workflow and verify success.


Cheers!
Was your question answered? Make sure to mark the answer as the accepted solution.
If you find a reply useful, say thanks by clicking on the thumbs up button.

View solution in original post

1 REPLY 1

avatar
Master Guru

@syedshakir This is most probably ssh is not setup properly. You can try below steps.

 

  1. On the Oozie Server host run the command:

    ps -ef| grep oozie
  2. Identify the user that runs the Oozie server. For example, the user is oozie

  3. Modify /etc/passwd file to edit the user oozie

  4. Change:
    oozie:x:485:483:Oozie User:/var/lib/oozie:/bin/false

     to: 

    oozie:x:485:483:Oozie User:/var/lib/oozie:/bin/bash

    Note: This will enable the user oozie to login.

  5. In the command prompt switch user as oozie:

    su - oozie
  6. Verify that the user is switched by executing the command:

    id
  7. Execute ssh-keygen:

    Note:Do not give any password. This generates Public and Private Key for passwordless authentication and saves it in the Oozie user's home directory.

    ssh-keygen
  8. Execute ssh-copy-id to copy the public key to user’s home directory in the remote host. This user will be the one that runs ssh commands in remote host:

    ssh-copy-id -i /home/oozie/.ssh/id_rsa.pub cloudera@example.local.com
  9. Test by executing ssh without a password to confirm a successful authentication:

    ssh cloudera@example.local.com
  10. Run the Oozie workflow and verify success.


Cheers!
Was your question answered? Make sure to mark the answer as the accepted solution.
If you find a reply useful, say thanks by clicking on the thumbs up button.