一,手动切换Elastic IP
1,进入ec2控制台,选中实例然后操作->联网->管理IP地址
2进入分配Elastic IP页面,点击分配
3,分配Elastic IP
4,配置Elastic IP
5,关联ip地址
二,自动脚本更换实例ip地址
1,进入服务器设置aws configure,先到iam界面生成一个Access keys,然后到实例中配置Access keys ,在服务器上执行以下代码就可以自动更新ip
#!/bin/sh
#服务器需要配置aws configure 设置好access_id和key 还有区域 日本环境设置ap-northeast-1c
#访问凭证在 aws控制台搜索IAM添加一个
#注意修改ip后本地可能连接不上服务器 要 vim ~/.ssh/known_hosts 删除本机记住的连接凭证
# get ec2 instance id by tag
InstanceId=$(aws ec2 describe-instances --filters "Name=key-name,Values=aws-robot-1" --query "Reservations[*].Instances[*].[InstanceId]" --output text)
OldPublicIpAddress=$(aws ec2 describe-instances --filters "Name=key-name,Values=aws-robot-1" --query "Reservations[*].Instances[*].[PublicIpAddress]" --output text)
# generate an elastic ip address
NewPublicIpAddress=$(aws ec2 allocate-address --domain vpc --query "PublicIp" --output text)
# associate an elastic ip to an existed ec2 instance
result=$(aws ec2 associate-address --instance-id $InstanceId --public-ip $NewPublicIpAddress)
# release an existed elastic ip address
aws ec2 release-address --allocation-id $(aws ec2 describe-addresses --filters "Name=public-ip,Values=$OldPublicIpAddress" --query "Addresses[*].[AllocationId]" --output text)
echo "New Elastic IP: "$NewPublicIpAddress