• 请不要在回答技术问题时复制粘贴 AI 生成的内容
spencerqiu
V2EX  ›  程序员

如何在 OS X 下 SSH 登录服务器时,对多台服务器操作同一命令?

  •  
  •   spencerqiu · Sep 13, 2015 · 5339 views
    This topic created in 4069 days ago, the information mentioned may be changed or developed.
    比如 10 台服务器,都只要执行一条简单的 service nginx restart ,操作本身简单,但是要一台台登录就累死人了,在网上找了下, Windows 下貌似可以用 X-Shell 的一个小功能实现, OS X 下有啥办法没?
    26 replies  •  2015-09-15 22:38:05 +08:00
    gaitana
    gaitana
    Sep 13, 2015 via Android
    1
    可以远程执行 shell
    whthomas
    whthomas
    Sep 13, 2015
    2
    一般这种批量操作都是机械化的步骤,是不是可以考虑用 Python 的 fabric 之类的库,做个脚本?
    evilangel
    evilangel
    Sep 13, 2015
    3
    运维工程师告诉你 SecureCRT 一条命令发送到所有标签是最简单便捷的方法。
    introom
    introom
    Sep 13, 2015 via Android
    4
    最近比较火的是 ansible ,我用过,很方便。
    当然,你也可以直接用 pssh
    Tink
    Tink
    Sep 13, 2015 via iPhone
    5
    Fabric 可以啊
    xzl380
    xzl380
    Sep 13, 2015
    6
    cat host.list |xargs -I {} ssh USER@{} 'COMMAND'
    常常有这种操作,用 pssh 吧。
    libo26
    libo26
    Sep 13, 2015 via iPhone
    7
    自己写个脚本呗
    knightdf
    knightdf
    Sep 13, 2015
    8
    iterm, Broadcast input, 或者运维工具 Fabric
    Scholer
    Scholer
    Sep 13, 2015
    9
    ansible 是最方便的
    jhaohai
    jhaohai
    Sep 13, 2015 via iPhone
    10
    ansible
    aheadlead
    aheadlead
    Sep 13, 2015 via iPhone
    11
    ansible
    realityone
    realityone
    Sep 13, 2015
    12
    昨天看见了一个 rir
    id4alex
    id4alex
    Sep 13, 2015
    13
    shell 里面的一段代码


    ###所有节点修改 hostname####
    [root@localhost ~]# for i in `grep node /etc/hosts | awk '{print $2}'`; do ssh -o StrictHostKeyChecking=no $i "sed -i '/HOSTNAME=/d' /etc/sysconfig/network;echo \"HOSTNAME=$i\" >>/etc/sysconfig/network"; done;
    dotpig
    dotpig
    Sep 13, 2015
    14
    SSH to many hosts and broadcast input with iTerm
    https://coderwall.com/p/x9ylbw/ssh-to-many-hosts-and-broadcast-input-with-iterm

    一个 AppleScript 搞定。
    dorentus
    dorentus
    Sep 13, 2015 via iPad
    15
    ssh root@host service nginx restart 再加个循环不就好了
    wangxiaomu
    wangxiaomu
    Sep 13, 2015
    16
    @fangpeishi 简单有效
    lins05
    lins05
    Sep 13, 2015
    17
    偶尔用一下写个 shell 脚本就行, 经常执行类似任务可以用 ansible 或者 fabric
    chilaoqi
    chilaoqi
    Sep 13, 2015
    18
    ansible , fabric , saltstack 这类的 toolkit

    rundeck , fit2cloud 这类的运维平台
    akige
    akige
    Sep 13, 2015
    19
    必须 ansible 啊
    pynix
    pynix
    Sep 13, 2015
    20
    你需要自动化运维工具。。
    Ixizi
    Ixizi
    Sep 13, 2015 via iPhone
    21
    你是不是搞运维的?
    Lumuy
    Lumuy
    Sep 13, 2015 via Android
    22
    fabric
    tonic
    tonic
    Sep 14, 2015
    23
    csshX 可以试试 ~_~
    xlvecle
    xlvecle
    Sep 14, 2015
    24
    polysh, pdsh ,pssh 等,楼主 Google 一下就明白了.
    nekoyaki
    nekoyaki
    Sep 14, 2015
    25
    难道不是……
    直接 ssh username@host 'command'就行吗?
    ddou
    ddou
    Sep 15, 2015
    26
    @introom 简单重复的事情交给 ansible 就可以了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4971 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 92ms · UTC 06:56 · PVG 14:56 · LAX 22:56 · JFK 01:56
    ♥ Do have faith in what you're doing.