Accéder au contenu principal Passer au contenu complémentaire

Démarrer Talend JobServer avec la commande sudo

Démarrez Talend JobServer avec la commande sudo pour accorder les autorisations requises pour les opérations avec privilèges, comme l'accès à des ressources spécifiques ou l'utilisation de ports réservés.

Note InformationsImportant : Si vous avez déjà démarré des Jobs à partir de ce serveur, il est recommandé de supprimer le répertoire <jobserver_path>/TalendJobServerFiles avant de redémarrer le serveur avec la commande sudo. Cela permet d'éviter les autorisations non attendues sur les Jobs déjà déployés ou sur les fichiers en cache.

Procédure

  1. Configurez les autorisations sur le répertoire pour les utilisateur·trices de confiance :
    1. Ajoutez chaque utilisateur ou utilisatrice autorisé·e à exécuter des tâches (par exemple, un·e utilisateur·trice nommé·e subuser) sur le groupe root ainsi que sur le groupe de l'utilisateur·trice (par exemple un·e utilisateur·trice nommé·e myuser qui détient les répertoires parents de Talend JobServer:

      Exemple

      > sudo usermod -a -G myuser_group subuser
      > sudo usermod -a -G root subuser           
    2. Donnez la permission execute au groupe dans tous les répertoires requis en exécutant chmod g+rx /<directory_path> :

      Exemple

      chmod g+rx /opt
      chmod g+rx /opt/talend
      chmod g+rx /opt/talend/Talend-JobServer
      chmod g+rx /opt/talend/Talend-JobServer/TalendJobServersFiles
      chmod g+rx /opt/talend/Talend-JobServer/TalendJobServersFiles/cache
      chmod g+rx /opt/talend/Talend-JobServer/TalendJobServersFiles/cache/lib               
      Les dossiers parents du dossier Talend-JobServer dans cet exemple servent uniquement à des fins de démonstration. Ils démontrent la nécessité d'octroyer l'autorisation execute à chaque niveau de la structure de répertoires, pour assurer un fonctionnement correct.
      Note InformationsRemarque : Les autorisations read pour le groupe sont requises uniquement pour les fichiers déployés.
  2. Configurez umask pour l'utilisateur·trice démarrant Talend JobServer, afin de contrôler les autorisations fichiers.

    Le terme umask est le terme raccourci pour appeler une commande user-file-creation-mask (masque du mode de création de fichiers par l'utilisateur·trice). Ce paramètre contrôle les autorisations des fichiers et répertoires par défaut lorsque de nouveaux fichiers ou répertoires sont créés.

    1. Configurez le profil utilisateur·trice à l'aide de la commande suivante umask :

      Exemple

      umask u=rwx,g=rx,o=

      Cela équivaut à umask 0027.

      Cette configuration assure les éléments suivants :

      • Les répertoires ont l'autorisation group r-x
      • Les fichiers ont l'autorisation group r--
      • ne crée aucune autorisation pour les autres.
  3. Démarrez Talend JobServer à l'aide de la commande suivante :

    Exemple

    sudo sh start_rs.sh
    Note InformationsImportant : Si vous n'utilisez pas sudo, les Jobs arrêteront de répondre car un prompt vous demandera un mot de passe du côté du JobServer.

Démarrer Talend JobServer avec des droits sudo préconfigurés

Pour éviter la répétition de commandes sudo, configurez le fichier système sudoers pour qu'il automatise les autorisations des commandes spécifiques requises par Talend JobServer.

Procédure

  1. Modifiez le fichier sudoers sur la machine exécutant Talend JobServer, à l'aide de la commande sudo visudo.
  2. Modifiez le fichier sudoers afin de spécifier les alias des utilisateur·trices et des commandes.

    Exemple

    # ...
    # User alias specification
    User_Alias JOB_SERVER = jerry
                            
    # Cmnd alias specification
    Cmnd_Alias RUN_JOB = /bin/ps, /usr/bin/java, /bin/sh, /bin/grep, /bin/kill
                            
    # ...
    # Add after the line: %sudo	ALL=(ALL:ALL) ALL
    JOB_SERVER      ALL=(jules,jim) NOPASSWD: RUN_JOB

    Dans cet exemple, l'utilisateur jerry démarre Talend JobServer. Les tâches doivent s'exécuter avec les autorisations des utilisateurs jules et jim existants.

    Le processus de Talend JobServer démarré par jerry est autorisé à exécuter les commandes suivantes en tant que jules ou jim :

    /bin/ps
    /usr/bin/java
    /bin/sh
    /bin/grep
    /bin/kill

    Pour des raisons de sécurité, n'autorisez pas davantage de commandes.

Résultats

L'utilisateur jerry peut démarrer Talend JobServer en exécutant sh start_rs.sh au lieu de sudo sh start_rs.sh.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.