Ich habe eine Liste der adressierten IP-Adressen. Ich möchte herausfinden, ob mit der IP-Adresse verknüpfte Instanzen noch ausgeführt oder beendet werden. Ich starte und beende täglich viele Instanzen und möchte nur deren Zertifikate vom Puppenmeister entfernen.
Wenn es eine alternative Methode gibt, kann ich mein Ziel erreichen, das kann ich tun.
amazon-ec2
amazon-web-services
puppet
puppetmaster
aws-cli
Ramesh Kumar
quelle
quelle
jq
, sondern können eine--query
Option zum Extrahieren von Teilen der Ausgabe übergeben: Weitere Informationen findenaws ec2 describe-instances --filter Name=ip-address,Values=IP_1,..IP_N --query 'Reservations[].Instances[].[InstanceId,PublicIpAddress]
Sie unter Steuern der Befehlsausgabe über die AWS-Befehlszeilenschnittstelle . Beachten Sie, dass JMESPath--query
verwendet wird , das sich geringfügig von unterscheidetjq
.Sie können die Formate --query und --output verwenden, wenn Sie dies in einem Bash-Skript verwenden möchten.
Dadurch erhalten Sie eine Textantwort ohne JSON-Formatierung
quelle
Ein alternativer Ansatz wäre, CloudWatch-Ereignisse zu verwenden, um auf das Beenden von EC2-Instanzen zu warten und den Listener (der eine Lambda-Funktion oder ein benutzerdefinierter Dienst sein könnte, der SQS abhört) die entsprechenden Zertifikate aus Puppet zu entfernen.
Verweise:
quelle