aliyun阿里云Instant计算服务IP地址查询脚本

阿里云Instant计算服务IP地址查询脚本

简介

阿里云Instant计算服务,获取正在运行的作业实例的IP地址。快速批量查询所有运行中作业的IP地址。

脚本代码

bash 复制代码
#!/bin/bash
# 阿里云Instant计算服务作业IP地址查询脚本

REGION="cn-hangzhou"

# 查询所有作业的IP地址
jobs=$(aliyun ehpcinstant ListJobs --region "$REGION" 2>/dev/null)

if [ -z "$jobs" ]; then
    echo "查询失败或没有作业"
    exit 1
fi

job_ids=$(echo "$jobs" | jq -r '.JobList[].JobId')

for job_id in $job_ids; do
    if [ -z "$job_id" ]; then
        continue
    fi

    executors=$(aliyun ehpcinstant ListJobExecutors \
        --region "$REGION" \
        --JobId "$job_id" \
        --TaskName Task0 \
        --PageSize 100 \
        2>/dev/null)

    echo "$executors" | jq -r '.Executors[] | .IpAddress[0]' 2>/dev/null
done | sort -u > running_ips.txt

echo "IP地址已保存到 running_ips.txt"
wc -l running_ips.txt

功能说明

1. 设置区域

bash 复制代码
REGION="cn-hangzhou"

脚本默认使用杭州区域,如需修改为其他区域,请更改此变量。

2. 查询所有作业

bash 复制代码
jobs=$(aliyun ehpcinstant ListJobs --region "$REGION" 2>/dev/null)

调用阿里云CLI获取当前区域下的所有作业列表。

3. 提取作业ID

bash 复制代码
job_ids=$(echo "$jobs" | jq -r '.JobList[].JobId')

使用jq工具从返回的JSON数据中提取所有作业的ID。

4. 遍历查询每个作业的执行器IP

bash 复制代码
for job_id in $job_ids; do
    executors=$(aliyun ehpcinstant ListJobExecutors \
        --region "$REGION" \
        --JobId "$job_id" \
        --TaskName Task0 \
        --PageSize 100 \
        2>/dev/null)

    echo "$executors" | jq -r '.Executors[] | .IpAddress[0]' 2>/dev/null
done

对每个作业调用ListJobExecutors接口获取执行器信息,并提取IP地址。

5. 去重并保存

bash 复制代码
done | sort -u > running_ips.txt

将所有IP地址排序并去重,最终保存到running_ips.txt文件中。

使用方法

前置条件

  1. 安装阿里云CLI

    bash 复制代码
    # Linux/Mac
    curl -s https://aliyuncli.alicdn.com/aliyun-cli.sh | bash
  2. 配置凭证

    bash 复制代码
    aliyun configure
  3. 安装jq工具

    bash 复制代码
    # Ubuntu/Debian
    sudo apt-get install jq
    
    # CentOS/RHEL
    sudo yum install jq
    
    # macOS
    brew install jq

运行脚本

bash 复制代码
# 添加执行权限
chmod +x get_running_ips.sh

# 运行脚本
./get_running_ips.sh

输出示例

复制代码
IP地址已保存到 running_ips.txt
25 running_ips.txt

查看IP地址文件:

bash 复制代码
cat running_ips.txt

注意事项

  1. 区域配置 :默认使用cn-hangzhou区域,如需查询其他区域,请修改REGION变量
  2. 任务名称 :脚本默认查询Task0任务
  3. 分页大小 :当前设置PageSize为100
  4. 错误处理 :脚本会将错误输出重定向到/dev/null,确保静默运行

总结

阿里云CLI和jq工具,实现了批量获取Instant计算服务作业IP地址的功能。

参考

  1. 阿里云CLI凭证管理指南
相关推荐
@YDWLCloud2 小时前
华为云国际版 vs 阿里云国际版:东南亚市场选型指南
大数据·服务器·阿里云·华为云·云计算
酒书3 小时前
springcloud阿里云OCR(个人证照)识别对接
阿里云·云计算·ocr
翼龙云_cloud4 小时前
阿里云渠道商:阿里云弹性伸缩混合管理指南
服务器·阿里云·云计算
21my_code5 小时前
阿里云资源
阿里云·云计算
自己的九又四分之三站台21 小时前
阿里云百炼
阿里云·云计算
翼龙云_cloud1 天前
阿里云渠道商:如何使用弹性伸缩同时管理实例和托管实例?
服务器·阿里云·云计算
龙亘川1 天前
技术深度解析:阿里云数据中台架构设计与实战落地,破解企业数据治理难题
阿里云·云计算
安当加密1 天前
多云部署下数据库加密如何统一管密钥?一个跨阿里云、腾讯云、AWS 的 KMS 实践
数据库·阿里云·腾讯云
石像鬼₧魂石2 天前
80 端口(Web 服务)渗透测试完整总结(含踩坑 + 绕过 + 实战流程)
linux·运维·服务器·前端·网络·阿里云