root@I-Kod:/home/i-kod/Desktop/ass1# salt '*' network.ip_addrs
{
"I-Kod": [
"10.0.1.215"
]
}
{
"neha-HP-Pavilion-15-Notebook-PC": [
"10.0.0.231"
]
}
{
"Pavilion": [
"10.0.1.214"
]
}
{
"Pavilion": [
"10.0.1.214"
]
}
プライベートIPアドレスを見つけるためにsalt.modules.networkを使用しましたが、ミニオンからsalt-masterを使用してパブリックIPアドレスを取得する方法が見つかりませんでした。
http://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.network.html
このドキュメントを使用しました。ソルトが正しく機能しているかどうかを判断するには、パブリックIPが必要です。
次のコマンドを実行して、ミニオンのパブリックIPアドレスを取得します。
salt '*' cmd.run "curl http://ipecho.net/plain"
詳細については、こちらをご覧ください: https://serverfault.com/a/616423/53467
ピンコード化されたものは機能しますが、後で誰かがこれに遭遇した場合に備えて、外部IPを穀物として持つこともできます。
import requests
def external_ip():
"""
Return the external IP address reported by ipecho.net
"""
try:
r = requests.get('http://ipecho.net/plain')
ip = r.content
except:
ip = ''
return {'external_ip': ip}