1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
| # List instances by creation time
aws ec2 describe-instances --query 'Reservations[*].Instances[*].[InstanceId,LaunchTime]' --region us-west-2 --output text | sort -n -k 2
# List all EC2 Instances
aws ec2 describe-instances --region us-east-1 \
| jq -r \
'.Reservations[].Instances[]
| [.InstanceId, .PublicIpAddress, (.Tags[]|select(.Key=="Name").Value)]'
aws ec2 describe-instances |\
jq -r \
'.Reservations[].Instances[]
| select(.Tags[].Key | contains("auto")).PublicIpAddress'
aws rds describe-db-instances |\
jq -r \
'.DBInstances[]
| select(.Engine=="postgres" and .DBInstanceIdentifier=="obmedia-eks-apps-production").DBInstanceStatus'
aws ec2 describe-subnets |\
jq -r \
'.Subnets[]
| {vpc: .VpcId, Subnet: .SubnetId, CIDR: .CidrBlock}'
aws ecr describe-repositories |\
jq -r \
'.repositories[]
| select(.imageScanningConfiguration.scanOnPush==false).repositoryName'
aws ec2 describe-instances --region us-east-2 |\
jq -r '.Reservations[].Instances[] | select(.Tags[].Value | contains("Jenkins")).InstanceId'
aws ec2 describe-iam-instance-profile-associations --region us-east-2 |\
jq -r '.IamInstanceProfileAssociations[] | select(.InstanceId=="i-034fd80486cbbdab9")'
aws ec2 describe-iam-instance-profile-associations --region us-east-2 |
jq -r '.IamInstanceProfileAssociations[] | select(.InstanceId=="i-0896ce482f87185e1")'
aws ec2 describe-vpcs |\
jq -r '.Vpcs[] | {cidr: .CidrBlock, vpc: .VpcId, tags: .Tags[]}'
aws rds describe-db-instances |\
jq -r '.DBInstances[] | select(.DBSubnetGroup.VpcId=="vpc-0175ae9e0fd5c227f").DBClusterIdentifier'
aws autoscaling describe-auto-scaling-groups --region us-east-2 |\
jq -r '.AutoScalingGroups[] | select(.AutoScalingGroupName=="admarket")'
aws ec2 describe-subnets --region us-east-2 |\
jq -r \
'.Subnets[]
| select(.Tags[].Value
| contains("Private"))
| select(.VpcId == "vpc-0fead42d91a4b1080")
| {az: .AvailabilityZone , id: {id: .SubnetId}}' \
2>/dev/null |\
jq -r --indent 2 '.az + ":", .id' | sed -e 's/\"//g;'
aws autoscaling --region=us-east-2 describe-auto-scaling-groups |\
jq -r '.AutoScalingGroups[].Instances[].InstanceId'
aws ec2 describe-instances --filters 'Name=tag:Bastion,Values=true' --region us-east-2 |\
jq -r '.Reservations[0].Instances[0].NetworkInterfaces[0].Association.PublicIp'
INSTID="i-08075f1e6694080d3"; aws ec2 describe-instances --region us-east-2 |\
jq -r \
".Reservations[].Instances[]
| select(.InstanceId == \"${INSTID}\").PrivateIpAddress"
for x in $(eksctl get cluster -o yaml | yq -r '.[].metadata.name') ; do asg=$(eksctl get nodegroup --cluster ${x} -o json | jq -r '.[].AutoScalingGroupName') ; for i in $(aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name ${asg} | jq -r '.AutoScalingGroups[].VPCZoneIdentifier | split(",")' | jq -r '.[0]') ; do aws ec2 describe-subnets --subnet-ids ${i} | jq -r '.Subnets[] | {vpc: .VpcId, Cidr: .CidrBlock}' ; done ; done
aws eks describe-nodegroup --nodegroup-name admarket-production-spot-nodes-autoscaling-group --cluster-name admarket-production-eks |\
jq -r '.nodegroup.health'
while : ; do aws rds describe-db-instances | jq -r '.DBInstances[] | select(.Engine=="postgres" and .DBInstanceIdentifier=="obmedia-eks-apps-production").DBInstanceStatus' ; sleep 30 ; done
for a in $(aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name eks-92c071d0-2d92-d7f7-ccbe-f8c568ea79f7 | jq -r '.AutoScalingGroups[].Instances[].InstanceId') ; do ~/bin/nodeshell $(aws ec2 describe-instances | jq -r ".Reservations[].Instances[] | select(.InstanceId==\"${a}\").PrivateDnsName") ; done
for a in $(aws ec2 describe-instances | jq -r '.Reservations[].Instances[] | select(.Tags[].Value | test("[Jj]enkins")) | [.PrivateDnsName,.SecurityGroups[].GroupId] |@csv') ;do echo -e "\n${a}\n" ; sleep 1 ; aws ec2 describe-security-group-rules --filter Name="group-id",Values="$(echo ${a} | cut -f 2 -d ',')" | jq -r '.SecurityGroupRules[] | {ip: .IpProtocol, egress: .IsEgress, from: .FromPort, to: .ToPort, cidr: .CidrIpv4}'; done
for i in i-05363557d57e03c45 i-0b4ddb7579307b031 ; do aws ec2 describe-instances | jq -r ".Reservations[].Instances[] | select(.InstanceId==\"${i}\").PrivateIpAddress" ; done
# List route53 all subdomains
for zone in `aws route53 list-hosted-zones | jq -r '.HostedZones[].Id'`; do \
aws route53 list-resource-record-sets --hosted-zone-id $zone |\
jq -r '.ResourceRecordSets[]? | "\(.Name),\(.Type),\(.ResourceRecords[]?.Value)"'; \
done
|