Chef
Knife ssh 節點名萬用字元匹配
我有一個廚師環境“開發”,我們正在將我們的持續集成建構環境從詹金斯切換到竹子。所以我們有一堆節點名稱“jenkins_slave_??” 和“bamboo_slave_??
我想在開發環境中的所有 jenkins_slave 系統上執行 yum update -y 。為了測試那把刀只擊中我想要的伺服器,以下將在開發環境中的所有主機上執行命令。
knife ssh '*:dev' 'hostname; cat /etc/redhat-release ' -a cloud.public_ipv4 -x ec2-user -i ~/.ssh/dev.pem
以下將在特定主機上執行我的命令。
knife ssh '*:jenkins_slave_01' 'hostname; cat /etc/redhat-release ' -a cloud.public_ipv4 -x ec2-user -i ~/.ssh/dev.pem
我無法得到
knife ssh '*:jenkins_slave_*' 'hostname; cat /etc/redhat-release ' -a cloud.public_ipv4 -x ec2-user -i ~/.ssh/dev.pem
或者
knife ssh 'jenkins_slave_*:*' 'hostname; cat /etc/redhat-release ' -a cloud.public_ipv4 -x ec2-user -i ~/.ssh/dev.pem
去工作。如何讓刀向具有相似節點名稱的所有主機發出 ssh 命令?
手臉植物對不起看到我的錯誤破折號不是下劃線
ssh '*:jenkins-slave*' 'hostname; cat /etc/redhat-release ' -a cloud.public_ipv4 -x ec2-user -i ~/.ssh/dev.pem