中文 / English
luckfu的潦草笔记

最初的梦想绝对会到达!


  • 首页

  • 归档

  • 关于我

  • 公益404

  • 搜索

使用python脚本抢注Oracle甲骨文 VM.Standard.A1.Flex

时间: 2021-05-11   |   分类: cloud vps   python   oci   | 字数: 1100 字 | 阅读: 3分钟 | 阅读次数:

Oracle cloud 开放注册账号能申请4c24g的免费云服务器,数据库以及其他的服务,1c1g的x86服务器比较容易申请,但热门的4c24g的Ampere A1类型主机通过网页正常申请根本申请不到,目前网络上流行的抢注方法无外乎两种模式:

  • 浏览器插件或脚本或按键精灵,这种方法的问题是控制台超时,还容易被服务器判定非法操作,禁用账号,对于动辄要求稳定运行几天才能完成的操作,显然已经不合适。
  • 调用oci命令脚本,这是最安全的模式,因为oci是oracle官方提供,原理是使用oci命令直接申请实例,例如:
oci compute instance launch ....

然而,根据我香港主机测试,这种最多只能做到20秒刷新一次,原因是 oci 命令执行的完整的过程:

  • 1、启动、开始连接 oracle cloud
  • 2、验证用户合法性
  • 3、执行命令
  • 4、退出

1,2,4步骤在循环中浪费了大量时间,本文中采用python调用oci api 的模式,一次登录省略多次验证环节,循环执行创建instance命令,刷新速度可以达到3秒/次 当返回instance创建成功时,自动退出。

布署步骤

1、下载oci工具

bash -c "$(curl –L https://raw.githubusercontent.com/oracle/oci-cli/master/scripts/install/install.sh)"

默认回车,安装完成后,执行下面命令检查是否成功

oci -v

2、配置oci连接

在oracle cloud控制台上,点击右上角头像=>菜单中选择“用户设置” 复制用户和租户ID

输入

oci setup config

填写正确的用户和租户id

Enter a location for your config [/root/.oci/config]: 
Enter a user OCID: #输入你的用户ocid
Enter a tenancy OCID: #输入你租户的用户id
Enter a region by index or name(e.g.
1: ap-chiyoda-1, 2: ap-chuncheon-1, 3: ap-hyderabad-1, 4: ap-melbourne-1, 5: ap-mumbai-1,
6: ap-osaka-1, 7: ap-seoul-1, 8: ap-sydney-1, 9: ap-tokyo-1, 10: ca-montreal-1,
11: ca-toronto-1, 12: eu-amsterdam-1, 13: eu-frankfurt-1, 14: eu-zurich-1, 15: me-dubai-1,
16: me-jeddah-1, 17: sa-santiago-1, 18: sa-saopaulo-1, 19: uk-cardiff-1, 20: uk-gov-cardiff-1,
21: uk-gov-london-1, 22: uk-london-1, 23: us-ashburn-1, 24: us-gov-ashburn-1, 25: us-gov-chicago-1,
26: us-gov-phoenix-1, 27: us-langley-1, 28: us-luke-1, 29: us-phoenix-1, 30: us-sanjose-1): 9  #这里选择区域
Do you want to generate a new API Signing RSA key pair? (If you decline you will be asked to supply the path to an existing key.) [Y/n]: y  #输入y
Enter a directory for your keys to be created [/root/.oci]: 
Enter a name for your key [oci_api_key]: 
Public key written to: /root/.oci/oci_api_key_public.pem
Enter a passphrase for your private key (empty for no passphrase): 
Private key written to: /root/.oci/oci_api_key.pem
Fingerprint: 
Config written to /root/.oci/config
...

复制生成的公钥,获取命令如下:

cat /root/.oci/oci_api_key_public.pem

把展示出来的内容复制下来。并且添加到,甲骨文后台=>用户设置»资源»API秘钥»添加API秘钥

3、python脚本

安装python oci

假设你已经安装好python环境

pip install oci

登录证书

  • 新建或使用系统已有的证书,本文直接查看本机已有证书记录下来
cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAA......local

修改脚本

下载:

  • link
  • 修改luanch.py 脚本中的参数
INSTANCE_NAME = 'vps实例名' #你要创建的vps实例名  
SUBNET_ID = "网络->虚拟云网络->虚拟云网络详细信息->OCID" #如果是全新用户,先创建一个VNC
compartment_id= <font color=red>"租户id"
ssh_public_key="id_rsa.pub的内容"

运行

执行脚本,当主机申请完成,会自动退出

python ./luanch.py
#Oracle Cloud# #Free VPS# #python script# #自动化脚本# #VM.Standard.A1.Flex#

声明:使用python脚本抢注Oracle甲骨文 VM.Standard.A1.Flex

链接:http://www.luckfu.com/post/ampere_a1_free/

作者:luckfu

声明: 本博客文章除特别声明外,均采用 CC BY-NC-SA 3.0许可协议,转载请注明出处!

创作实属不易,如有帮助,那就打赏博主些许茶钱吧 ^_^
WeChat Pay

微信打赏

Alipay

支付宝打赏

paypal Pay

PayPal打赏

将docker容器作为虚拟机折腾
  • 文章目录
  • 站点概览
luckfu

luckfu

一瞬间,过去的一切都离你而去,剩下的只有回忆!

2 日志
4 分类
6 标签
GitHub
标签云
  • Free vps
  • Oracle cloud
  • Vm.Standard.A1.Flex
  • Docker
  • Python script
  • 自动化脚本
  • 1、下载oci工具
  • 2、配置oci连接
  • 3、python脚本
    • 安装python oci
    • 登录证书
    • 修改脚本
    • 运行
© 2010 - 2021 luckfu的潦草笔记
Powered by - Hugo v0.90.0 / Theme by - NexT
鄂ICP备18026409号-1
0%