由于自己管理的云服务器数量比较多,时不时需要更换IP,在管理台上一下下点击,实在浪费时间,于是就想到了通过API调用的方式,将更换IP一系列动作,全部集成到Python代码里面,实现一行命令,完成IP更换,由于人懒,就先

把最核心的代码(虽然都是腾讯云生成的)、流程、坑点贴出来,仅供菜鸟参考,高手无视!已先在腾讯云社区编辑发布,请管理员勿认为是转载!

具体步骤:

一 进入 https://cloud.tencent.com/document/api ,

页面左侧列表查找“私有网络”---“弹性公网相关接口”,就可以看到对应接口的文档了

二 选择一个接口,然后点击“API 3.0 Exploper”,进入到开发者工具页面,

坑点一:下面代码,对于菜鸟来说,引入的相关模块直接用“pip install 对应模块名”会报错

看第一张图sdk,相关语言sdk,点击就可以看到github上各语言的库引用方式

三 直接copy开发者工具上的代码,当然你也可以看下图代码

坑点二:"SecretId ","SecretKey" 这两个值是你调用API,腾讯用来确认你身份的凭证,

在哪里申请呢?腾讯云的首页,“云产品”--“管理工具”--“云API秘钥”,

没有使用过的话,是不会在你的控制台上显示的。

坑点三:由于腾讯云API文档的不合理,导致生成的代码有一些坑,

具体坑信息我已在代码里通过注释的方式解释了

from tencentcloud.common import credential
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
from tencentcloud.vpc.v20170312 import vpc_client, models#查询弹性IP
def findIp():try:cred = credential.Credential("SecretId ", "SecretKey")httpProfile = HttpProfile()httpProfile.endpoint = "vpc.tencentcloudapi.com"clientProfile = ClientProfile()clientProfile.httpProfile = httpProfileclient = vpc_client.VpcClient(cred, "ap-chongqing", clientProfile)req = models.DescribeAddressesRequest()params = '{}'req.from_json_string(params)resp = client.DescribeAddresses(req)#eip=resp.to_json_string()[34:61]eip=resp.to_json_string()[48:60]print(eip)   #打印结果:"AddressId": "eip-ilzg91oy"return eipexcept TencentCloudSDKException as err:print(err)#解除绑定IP
def unbindingIp():try:cred = credential.Credential("SecretId ", "SecretKey")httpProfile = HttpProfile()httpProfile.endpoint = "vpc.ap-chongqing.tencentcloudapi.com"clientProfile = ClientProfile()clientProfile.httpProfile = httpProfileclient = vpc_client.VpcClient(cred, "ap-chongqing", clientProfile)req = models.DisassociateAddressRequest()eip = findIp()params = eip#req.from_json_string(params)req.AddressId=params   #这里修改了一下,官网生成的是上一行代码resp = client.DisassociateAddress(req)print(resp.to_json_string())except TencentCloudSDKException as err:print(err)
#释放IP
def releaseIp():try:cred = credential.Credential("SecretId ", "SecretKey")httpProfile = HttpProfile()httpProfile.endpoint = "vpc.ap-chongqing.tencentcloudapi.com"clientProfile = ClientProfile()clientProfile.httpProfile = httpProfileclient = vpc_client.VpcClient(cred, "ap-chongqing", clientProfile)req = models.DescribeAddressesRequest()eip = findIp()list=[]list.append(eip)params = listreq.AddressIds=params  #这里修改了一下,要求传数组resp = client.ReleaseAddresses(req)print(resp.to_json_string())except TencentCloudSDKException as err:print(err)#创建IP
def newIp():try:cred = credential.Credential("SecretId", "SecretKey")httpProfile = HttpProfile()httpProfile.endpoint = "vpc.ap-chongqing.tencentcloudapi.com"clientProfile = ClientProfile()clientProfile.httpProfile = httpProfileclient = vpc_client.VpcClient(cred, "ap-chongqing", clientProfile)req = models.AllocateAddressesRequest()params = '{}'req.from_json_string(params)resp = client.AllocateAddresses(req)print(resp.to_json_string())except TencentCloudSDKException as err:print(err)#绑定弹性IP
def binding():try:cred = credential.Credential("SecretId", "SecretKey")httpProfile = HttpProfile()httpProfile.endpoint = "vpc.ap-chongqing.tencentcloudapi.com"clientProfile = ClientProfile()clientProfile.httpProfile = httpProfileclient = vpc_client.VpcClient(cred, "ap-chongqing", clientProfile)req = models.AssociateAddressRequest()#params = '{"ins-61lwor90"}'#req.from_json_string(params)#这是只传AddressId的报错:MissingAssociateEntity message:You need to specify the entity ID `"InstanceId"` or `"NetworkInterfaceId"` to associate this address. requestId:81702256-e75f-458f-afde-e87a69554f83#所以至少要传两个值req.InstanceId = "ins-61cwor70"eip = findIp()req.AddressId=eipresp = client.AssociateAddress(req)print(resp.to_json_string())except TencentCloudSDKException as err:print(err)

创建了一个微信群,目前看来是纯技术,虽然大家技术都不咋样,欢迎菜鸟或大牛的加入,目前看来还能算是个纯技术的讨论群,勿培训,勿卖视频

但大家基本上都在聊天,唉,如果还有兴趣的话加群主微信进群。

腾讯云API弹性公网IP踩坑相关推荐

  1. 腾讯云无法绑定公网IP问题解释与解决方案。

    腾讯云无法绑定公网IP问题解释与解决方案. http://blog.csdn.net/chenggong2dm/article/details/51475222 解释:公网IP并不直接配置在服务器上, ...

  2. 云主机弹性公网IP(EIP)介绍

    弹性公网IP EIP(Elastic IP)作为一个独立商品为用户提供公网带宽服务.用户可以将EIP实例与云服务器.负载均衡.NAT网关.VPN网关等实例绑定或解绑,为用户访问公网提供IP地址和公网带 ...

  3. 阿里云相关-弹性公网IP

    1.弹性公网IP定义 EIP(Elastic IP Address)是可以独立购买和持有的公网IP地址资源.可以绑定专有网络类型的ECS实例.专有网络类型的私网SLB实例.专有网络类型的辅助弹性网卡. ...

  4. 解绑定和释放弹性云服务器的弹性公网IP

    操作场景 当弹性云服务器无需继续使用弹性公网IP,可通过解绑定和释放弹性公网IP来释放网络资源. 在弹性负载均衡服务下创建并绑定的弹性公网IP地址,在虚拟私有云的弹性公网IP地址列表中可以显示,但是不 ...

  5. 使用阿里云ECS绑定弹性公网IP搭建反向代理服务器

    一.业务需求 公司线下业务的需要访问某个业务网站,但是公司的互联网出口IP地址为对端安全设备封堵,为规避此问题,在阿里云搭建反向代理服务器,通过反向代理转发到目标业务,解决不能访问的问题. 二.处理方 ...

  6. 阿里云弹性公网IP(EIP)的使用限制

    阿里云弹性公网IP(EIP)是一种可以独立购买和持有的公网IP地址资源,弹性公网IP具有独立购买持有.弹性绑定和配置灵活等优势,但实际使用中弹性公网IP也是有很多限制的,阿里云惠网分享弹性公网IP(E ...

  7. 说一说阿里云弹性公网IP那些事

    弹性公网IP是独立的公网IP资源,可以绑定到阿里云专有网络VPC类型的ECS.NAT网关.私网负载均衡SLB上,并可以动态解绑,实现公网IP和ECS.NAT网关.SLB的解耦,满足灵活管理的要求. 弹 ...

  8. 【华为云技术分享】云图说 | 一张图看懂华为云弹性公网IP

    弹性公网IP(Elastic IP)提供独立的公网IP资源,包括公网IP地址与公网出口带宽服务.可以与弹性云服务器.裸金属服务器.虚拟IP.弹性负载均衡.NAT网关等资源灵活地绑定及解绑.拥有多种灵活 ...

  9. 阿里云服务器ECS接入多IP_ECS绑定多个弹性公网IP搭建教程

    很多场景下我们需要单服务器多IP来完成业务需求,运营商们大多采取单独出售ip来满足客户需求,当然相对靠谱的运营商是我们的首选,下面介绍一下阿里云ECS部署多IP是如何实现的. 1.选择云服务器ECS ...

  10. 为弹性云服务器申请和绑定弹性公网IP

    操作场景 可以通过申请弹性公网IP并将弹性公网IP绑定到弹性云服务器上,实现弹性云服务器访问公网的目的. 申请弹性公网IP 登录管理控制台. 在管理控制台左上角单击,选择区域和项目. 在系统首页,选择 ...

最新文章

  1. C#.Net的常见面试试题 [转]
  2. android studio写坦克大战代码_GitHub 项目推荐:俄罗斯小游戏、Markdown 幻灯片、头像生成器、Logo 制作、坦克大战...
  3. Java反射机制——获取成员变量构造函数
  4. Elasticsearch概述、ES概念、什么是搜索、全文检索、Elasticsearch功能,什么是distributed document store(来自网络+学习资料)
  5. springmvc基本配置
  6. 移动端页面不需要在meta加_移动端适配viewport缩放方案
  7. 常州全国计算机考点,2017年常州高考考点及考场查询系统
  8. 【工具】Win 7/8/10 下使用 VC++6.0
  9. Gdiplus::GdiplusBase::operator new 函数不接受3 个参数问题的处理
  10. codeforces——Little Pony and Sort by Shift
  11. MyEclipse 2017 CI 9 发布(附下载)
  12. Jsonschema2pojo从JSON生成Java类(Maven)
  13. 简易c语言编程软件,c语言开发工具下载
  14. 手机聊天记录怎么备份技巧分享,再也不用担心数据丢失了
  15. android 修复工具下载,安卓数据恢复软件(FonePaw for Android)
  16. Echarts地图的基本使用方法
  17. 扬州大学2022年858程序设计与数据结构试题参考答案
  18. 手机游戏后台服务整体架构
  19. Android/安卓 文本添加中划线、下划线的方法
  20. 图片批量重命名方法(超详细 无需辅助软件 本地运行)

热门文章

  1. linux如何用命令进入u盘,linux 下如何打开u盘
  2. 遇见Linux系统CPU使用率过高怎么办?
  3. html tbody增加行,使用jquery向表的tbody添加行
  4. python实现简单的抢票程序
  5. 纳什均衡定义、举例、分类
  6. 扫呗--扫码付支付问题
  7. 关于一句英文句子的词数的判断
  8. Scrum立会报告+燃尽图(十月二十七日总第十八次)
  9. NR、EN-DC等名词解释
  10. 枚举类实现接口【精】