knife ssh
tidak menemukan simpul saya. Saya tahu itu harus bisa karena ketika saya bisa mencari mereka, saya menemukannya
# knife search node name:*
2 items found
Node Name: web_01
...
Node Name: admin
...
Namun, ketika saya menjalankan knife ssh
(saya akan menunjukkannya dengan bendera 'debug') saya dapatkan
# knife ssh "node:*" "uptime" -VV
DEBUG: Using configuration from /root/.chef/knife.rb
DEBUG: Signing the request as dev
DEBUG: Sending HTTP Request via GET to ec2-xx-xx-xx-xx.compute-1.amazonaws.com:4000/search/node
FATAL: No nodes returned from search!
(ya tuan rumah sudah benar, saya hanya menyensornya untuk posting).
Saya sudah mencoba mengubah parameter QUERY dan selalu mendapatkan hasil yang sama. Saya sudah mencoba:
- simpul: *
- wewenang:*
- *
- *: *
Ada ide?
-a ipaddress
" adalah literal. Tampaknya memberitahuknife ssh
untuk terhubung dengan IP bukan FQDN. Perilaku ini bodoh - seharusnya mundur dengan cara ini secara default.Juga, jika
-a ipaddress
tidak berhasil, coba-a cloud.public_ipv4
Saya ditunjukkan solusi ini setelah mencari tahu yang
knife ssh
mencoba menggunakan alamat IP internal untuk node saya dan butuh beberapa bertanya di saluran koki IRC (#chef di irc.freenode.net) sebelum seseorang bernama Retrh menunjukkan kepada saya ini .sumber
knife ssh 'name:mydc1*' interactive -a node.node_name
Coba
knife ssh "id:*" "uptime"
.Ingat bahwa
knife ssh
pada dasarnya memang aknife search node
, jadi kueri Anda harus yang berfungsiknife search node
(yaitu,knife search node "node:*"
tidak berfungsi).knife ssh "role:*"
seharusnya juga berfungsi, tetapi hanya jika node Anda memiliki peran yang ditugaskan padanya. Dalam hal ini, sumber asli Andaknife search node "name:*"
juga akan berfungsi setelah Anda menggunakan kembali kueri untukknife ssh
. Jadi,knife ssh "name:*" "uptime"
.sumber
Pernahkah kamu mencoba
knife ssh "name:*" "uptime"
?Saya menggunakan chef 10.x dan bekerja untuk saya.
Menurut pendapat saya, saat menggunakan
knife search [INDEX] [QUERY]
, parameter pertamaINDEX
digunakan untuk menentukan jenis item yang akan ditanyakan. Saat menggunakanknife ssh
perintah, ia tahu bahwa Anda mencoba untuk mencari node, jadi yang harus Anda lakukan adalah menentukan[QUERY]
bagian, yang adaname:*
dalam kasus Anda.sumber
Saya memecahkan ini dengan menggunakan ssh / config dan menghubungkan dengan fqdn.
sumber