love2wind

 2021-11-25  /   📝技巧教程  /   5407 人浏览  /   4 条评论  /   全文共1017字

利用OCI脚本创建甲骨文ARM免费VPS的方法

前言

前面我们给大家介绍了怎么申请甲骨文的免费VPS,除了原来已有的 Always Free 即永久免费的小鸡以外,今年甲骨文又推出了另外一种架构的VPS即 VM.Standard.A1.Flex 就是大家常说的 ARM 。由于这个机器配置特别高(4OCPU/24 GB内存/200GB硬盘/4GB带宽),从而导致了供不应求,除了个别冷门区域,想手动开到几乎不可能,这也就有了今天要给大家介绍的利用OCI脚本来刷ARM的机器,不过提前说一下,此方法有可能会被甲骨文警告甚至封号,所以在使用前请三思而行。

如果你还不知道怎么获取甲骨文的免费VPS,请看以前的文章: http://oracle.com/cn/cloud/free

下面开始给大家介绍下怎么样利用OCI脚本来刷取甲骨文的免费ARM VPS。

项目地址: https://github.com/niege365/oracle_arm (感谢这位大佬的无私分享)

1、安装OCI

SSH登录VPS后输入下方的一键安装命令,回车。

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

然后遇到提示一路回车,最后再输入命令 exec -l $SHELL

重启shell(切记一定要重启shell),可以使用 oci -v 命令查看是否安装成功,如果返回版本号则说明安装成功,否则就再次执行此命令安装一遍试试。

2、获取甲骨文OCID

在配置OCI的过程中我们需要用到甲骨文的用户OCID和租户OCID,登录甲骨文后台后依照下图中的指引操作即可,然后将获取的OCID保存好后面要用到。

3、配置OCI

安装成功OCI后,输入下面的命令开始配置OCI:

oci setup config

接下来根据提示,按部就班走完整个过程即可。

这里把甲骨文对应的区域序号贴一下,我也记录一下,顺便水点字数。

1: ap-chiyoda-1
2: ap-chuncheon-1
3: ap-hyderabad-1
4: ap-ibaraki-1
5: ap-melbourne-1,
6: ap-mumbai-1
7: ap-osaka-1
8: ap-seoul-1
9: ap-singapore-1
10: ap-sydney-1,
11: ap-tokyo-1
12: ca-montreal-1
13: ca-toronto-1
14: eu-amsterdam-1
15: eu-frankfurt-1,
16: eu-marseille-1
17: eu-zurich-1
18: il-jerusalem-1
19: me-dubai-1
20: me-jeddah-1,
21: sa-santiago-1
22: sa-saopaulo-1
23: sa-vinhedo-1
24: uk-cardiff-1
25: uk-gov-cardiff-1,
26: uk-gov-london-1
27: uk-london-1
28: us-ashburn-1
29: us-gov-ashburn-1
30: us-gov-chicago-1,
31: us-gov-phoenix-1
32: us-langley-1
33: us-luke-1
34: us-phoenix-1
35: us-sanjose-1

接下来,把复制出来的密钥添加到甲骨文后台API密钥中【甲骨文后台=>用户设置>>资源>>API秘钥>>添加API秘钥】,见下图:

至此,就已经配置好了OCI。

4、获取main.tf配置文件

为了能够自动获取创建实例的配置,我们需要先在甲骨文后台创建一次实例,并将其另存为堆栈后下载配置文件main.tf。

和创建永久免费实例一样操作即可,只不过我们将配置修改为 VM.Standard.A1.Flex 就行,最后点击 另存为堆栈 按钮。当然,你可以顺便点一下创建,万一成功了呢,就不用费事了😂。看下图:

接下来按照下图操作创建堆栈,第三步勾选运行应用,这时应用会运行一次。

运行结束后点击 下载 Terraform 配置 ,解压压缩包后,就会得到我们需要的main.tf了,这个文件里记录着你开机所需要的信息。

5、下载配置脚本

  • 首先我们先拉取脚本,并经行配置

在SSH中输入下方的命令:

git clone https://github.com/n0thing2speak/oracle_arm

cd oracle_arm

pip3 install -r requirements.txt
  • 修改脚本中的Telegram推送参数

输入命令:

vi oracle_arm.py

或者你也可以在FinalShell中打开 oracle_arm.py 文件,将下面的参数按照注释修改即可

USE_TG = False  # 如果启用tg推送 要设置为True
TG_BOT_TOKEN = ''  # 通过 @BotFather 申请获得,示例:1077xxx4424:AAFjv0FcqxxxxxxgEMGfi22B4yh15R5uw
TG_USER_ID = ''  # 用户、群组或频道 ID,示例:129xxx206 ,

USE_TG=True 其他的token和id自行配置自己的,id可以点击这个机器人获取

  • 上传 main.tf 文件到 oracle_arm 目录
  • 运行一遍脚本测试一下 python3 oracle_arm.py main.tf

稍等一下看返回结果,如果显示抢注中,xxxxx 就说明脚本没有问题。

6、运行脚本

接下来就可以输入下面的命令开始刷鸡🐔

nohup python3 oracle_arm.py main.tf >> /dev/null 2>&1 &

如果想保存一个日志,可以运行下面这个命令运行:

nohup python3 oracle_arm.py main.tf > oracle_arm.log 2>&1 &

如果刷🐔成功,脚本会自动停止运行。

推送

最后

至此,经过上述的操作后,自动刷🐔脚本就搞定了,接下来我们只要盯着接收通知的BOT就可以了,脚本会自动设置SSH登录密码,并显示公网IP,你不用登录甲骨文后台就可以操作了。

切记此脚本有概率会导致封号!

切记此脚本有概率会导致封号!

切记此脚本有概率会导致封号!

 赞  赏

如果觉得我的文章对你有用,请随意打赏

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开   或者 扫一扫,即可进行扫码赞赏哦

原创文章,版权属于:涅槃博客 - love2wind
本文最后更新于2021年11月25日13时12分13秒,已超过172天没有更新,若内容或图片失效,请留言反馈
本文链接:https://love2wind.cn/archives/2214.html(转载时请注明本文出处及文章链接)
作品采用:《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权

发表评论

已有 4 条评论

  1. dddwj Lv.1     Win 10 /    Chrome 说道:

    大佬,我的vps运行python3 oracle_arm.py main.tf这个指令后报错了一堆,这是啥原因啊
    [root@test1 oracle_arm]# python3 oracle_arm.py main.tf
    parser cfg
    filepath main.tf
    Telegram Bot 推送成功
    创建ssh登陆密码:8VCRMxnQf4uob

    ❌发生错误,脚本停止!请检查参数或github反馈/查找 相关问题:{'opc-request-id': 'D97587766D7B46B193365E18B6D3C879/B0ACF40D3349922DF338E53226487ACB/69243CB9FA83A87BE3F72276B41B4004', 'code': 'InvalidParameter', 'message': 'Invalid DNS label orcale_wukong', 'status': 400}
    Telegram Bot 推送成功
    抢注中,已经经过:1尝试
    Traceback (most recent call last):
    File "oracle_arm.py", line 324, in
    ins.create()
    File "oracle_arm.py", line 246, in create
    raise e
    File "oracle_arm.py", line 230, in create
    ins = self.lunch_instance() # 应该返回具体的成功的数据
    File "oracle_arm.py", line 311, in lunch_instance
    is_pv_encryption_in_transit_enabled=True,
    File "/usr/local/lib/python3.6/site-packages/oci/core/compute_client.py", line 4241, in launch_instance
    response_type="Instance")
    File "/usr/local/lib/python3.6/site-packages/oci/base_client.py", line 454, in call_api
    response = self.request(request)
    File "/usr/local/lib/python3.6/site-packages/oci/base_client.py", line 583, in request
    self.raise_service_error(request, response, service_code, message)
    File "/usr/local/lib/python3.6/site-packages/oci/base_client.py", line 745, in raise_service_error
    original_request=request)
    oci.exceptions.ServiceError: {'opc-request-id': 'D97587766D7B46B193365E18B6D3C879/B0ACF40D3349922DF338E53226487ACB/69243CB9FA83A87BE3F72276B41B4004', 'code': 'InvalidParameter', 'message': 'Invalid DNS label orcale_wukong', 'status': 400}

    1. 【站长】 love2wind Lv.6     Win 10 /    Chrome 说道:

      大概是配置文件错误。你具体排查下。
      我也是半桶水,太复杂的也不太懂,抱歉啊

  2. binge Lv.1     Win 10 /    Chrome 说道:

    运行一遍脚本测试一下 python3 oracle_arm.py main.tf
    测试正常,测试怎么一直运行,怎么停?

    1. 【站长】 love2wind Lv.6     Win 10 /    Chrome 说道:

      不应该啊。测试这个就是只运行一次啊
      要运行nohup python3 oracle_arm.py main.tf >> /dev/null 2>&1 &
      才会一直刷

涅槃博客

涅槃博客

Love2wind's blog