Annuaire d'articles
Connexion sans mot de passe
1. Générez d’abord une paire de clés secrètes (clé publique et clé privée)
ssh-keygen
2. Vérifiez si la génération a réussi
ll /root/.ssh
3. Copiez la propre clé publique de A et ajoutez-la au fichier de liste d'autorisations de Bauthorized_keys
ssh-copy-id 192.168.1.100
4. Connexion SSH sans mot de passe
ssh 192.168.1.100
installation pssh
Adresse de téléchargement : https://pypi.org/project/pssh/#files
1. Installez les packages de dépendances
yum install -y make gcc gcc++ python-devel python-pip
2. Téléchargez le package d'installation et installez pssh
tar zxvf pssh-2.3.1.tar.gz
cd pssh-2.3.1
python setup.py install
pssh utilisation
utilisation de l'outil pssh
application | Mode d'emploi |
---|---|
pssh | Exécuter des commandes en parallèle sur plusieurs hôtes |
pscp | Copier des fichiers sur plusieurs hôtes en parallèle |
synchronisation pr | Synchronisez efficacement les fichiers sur plusieurs hôtes via le protocole rsync |
pslurp | Copiez des fichiers de plusieurs hôtes distants vers la machine locale en parallèle |
livres | Tuer les processus sur plusieurs machines distantes en parallèle |
paramètres de l'outil pssh
paramètre | illustrer |
---|---|
-h | Liste des hôtes distants pour exécuter la commande ; ou -H user@ip:port ; format de contenu du fichier [user@]host[:port] |
-l | Le nom d'utilisateur de la machine distante |
-P | Afficher les informations d'exécution pendant l'exécution |
-p | Nombre maximum de connexions autorisées en même temps |
-o | Rediriger la sortie vers un fichier |
-e | Rediriger les erreurs d'exécution vers un fichier |
-t | Définir le délai d'expiration pour l'exécution de la commande |
-UN | Demander le mot de passe et transmettre le mot de passe à ssh |
-O | Pour définir la configuration spécifique des paramètres ssh, reportez-vous au fichier de configuration ssh_config. |
-X | Transmettez plusieurs commandes SSH. Plusieurs commandes sont séparées par des espaces et placées entre guillemets. |
-X | Identique à -x mais une seule commande peut être passée à la fois |
-je | Afficher la sortie standard et l'erreur standard une fois l'exécution de chaque hôte terminée |
exemple d'utilisation de pssh
1. pssh exécute des commandes en parallèle sur plusieurs hôtes
# 获取每台机器上的时间,先在管理机上新建 ip.txt
pssh -p 2 -i -h /root/test/ip.txt "date"
2. pscp copie les fichiers sur plusieurs machines en parallèle
# 将本地的 /root/kaishi.sh 文件复制到目标服务器的 /tmp/ 目录下
pscp -h /root/test/pssh.txt /root/kaishi.sh /tmp/
# 验证文件是否已经成功复制过去
pssh -p 2 -i -h /root/test/pssh.txt "ls /tmp/kaishi.sh"
3. prsync utilise le protocole rsync pour synchroniser les fichiers de l'ordinateur local vers l'hôte distant
# 将本地的 /etc/sysconfig 目录递归同步到目标服务器的 /tmp/ 目录下
prsync -h /root/test/pssh.txt -l -a -r /etc/sysconfig /tmp/test/
# 验证文件是否已经成功同步过去
pssh -p 2 -i -h /root/test/pssh.txt "ls /tmp/test/"
4. pslurp copie les fichiers de l'hôte distant vers l'hôte local
# 将目标服务器的 /tmp/*.log 格式的文件复制到本地的 /tmp 目录下,并更名为 test1.log 格式
pslurp -p 2 -h /root/test/pssh.txt -L /tmp -l root /tmp/*.log test1.log
# 在 /tmp/ 目录下即可看见以远端IP地址命名为目录,目录中存放复制过来的文件
ll /tmp/
5. pnuke tue le processus sur l'hôte distant en parallèle et tue le processus nginx sur le serveur distant
# 查看远端nginx状态
pssh -p 2 -i -h /root/test/pssh.txt "lsof -i:80"
# 杀死远端nginx进程
pnuke -p 2 -h /root/test/pssh.txt nginx