Como obter o endereço IP público do salt-minion do master?

1
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"
   ]

}

Eu usei o salt.modules.network para encontrar o endereço IP privado, mas não encontrei como obter o endereço IP público com o mestre de sal dos minions.

link

Eu usei esta documentação. Eu preciso de IP público para determinar se o sal está funcionando corretamente ou não.

    
por I-Kod 27.08.2015 / 11:03

2 respostas

4

Você obtém o endereço IP público dos minions executando:

salt '*' cmd.run "curl http://ipecho.net/plain"

Você pode encontrar mais detalhes aqui: link

    
por 27.08.2015 / 22:18
4

O que o pincoded disse funciona, mas no caso de alguém se deparar com isso mais tarde, você também pode ter o IP externo como um grão:

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}

de: link

    
por 01.09.2015 / 22:20

Tags