All Projects → rockswang → Alispot

rockswang / Alispot

Licence: mit
自动创建阿里云抢占式实例,并启用网络加速

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Alispot

Opscloud
运维管理平台(阿里云),自动同步阿里云配置信息,堡垒机(容器),批量运维,Kubernetes,Zabbix管理等功能
Stars: ✭ 788 (+466.91%)
Mutual labels:  aliyun, ssh
Adams
UNIX system administration in Common Lisp
Stars: ✭ 135 (-2.88%)
Mutual labels:  ssh
Awesome Ssh
💻 A curated list of SSH resources.
Stars: ✭ 1,742 (+1153.24%)
Mutual labels:  ssh
Aliyun Ddns
阿里云动态域名工具,支持docker和ipv6。
Stars: ✭ 131 (-5.76%)
Mutual labels:  aliyun
Pssh
Parallel SSH Tools
Stars: ✭ 127 (-8.63%)
Mutual labels:  ssh
Sshdeploy
A command-line tool that enables quick build and run deployments over SSH.
Stars: ✭ 131 (-5.76%)
Mutual labels:  ssh
Mainframer Intellij Plugin
An intellij idea plugin for mainframer project
Stars: ✭ 125 (-10.07%)
Mutual labels:  ssh
Laravel Ssh Tunnel
Easy creation & maintenance of an SSH Tunnel for Laravel/Lumen
Stars: ✭ 134 (-3.6%)
Mutual labels:  ssh
Question And Answer Sharing System
本系统是基于微信小程序的问答分享系统,采用微信小程序的形式进行开发,后端采用Java框架开发,用户可以在小程序中进行提问、回答、分享故事、评论、围观以及充值收益等操作,在围观的过程中,用户对于感兴趣的内容可进行打赏与点赞。 对于本系统中的提问与分享,提供免费与付费两种模式,将知识交互的便捷性和信息娱乐的共享性进行结合。
Stars: ✭ 135 (-2.88%)
Mutual labels:  ssh
Connectbot
ConnectBot is the first SSH client for Android.
Stars: ✭ 1,763 (+1168.35%)
Mutual labels:  ssh
Sshr
Proxy server for routing SSH connections
Stars: ✭ 129 (-7.19%)
Mutual labels:  ssh
Spring Boot Quick
🌿 基于springboot的快速学习示例,整合自己遇到的开源框架,如:rabbitmq(延迟队列)、Kafka、jpa、redies、oauth2、swagger、jsp、docker、spring-batch、异常处理、日志输出、多模块开发、多环境打包、缓存cache、爬虫、jwt、GraphQL、dubbo、zookeeper和Async等等📌
Stars: ✭ 1,819 (+1208.63%)
Mutual labels:  aliyun
Aliyun Emapreduce Datasources
Extended datasource support for Spark/Hadoop on Aliyun E-MapReduce.
Stars: ✭ 132 (-5.04%)
Mutual labels:  aliyun
Hybrid multicloud overlay
MutiCloud_Overlay demonstrates a use case of overlay over one or more clouds such as AWS, Azure, GCP, OCI, Alibaba and a vSphere private infrastructure in Hub and spoke topology, point to point topology and in a Single cloud. Overlay protocols IPv6 and IPv4 are independent of underlying infrastructure. This solution can be integrated with encryption and additional security features.
Stars: ✭ 127 (-8.63%)
Mutual labels:  aliyun
Generate Ssh Configs
Automatically generate ssh config files for your cloud servers
Stars: ✭ 136 (-2.16%)
Mutual labels:  ssh
Sish
HTTP(S)/WS(S)/TCP Tunnels to localhost using only SSH.
Stars: ✭ 2,087 (+1401.44%)
Mutual labels:  ssh
Analogsea
Digital Ocean R client
Stars: ✭ 128 (-7.91%)
Mutual labels:  ssh
Ssh Tunnels
Visual examples and use cases for SSH tunnels
Stars: ✭ 130 (-6.47%)
Mutual labels:  ssh
Cli
🧰 A zero trust swiss army knife for working with X509, OAuth, JWT, OATH OTP, etc.
Stars: ✭ 2,151 (+1447.48%)
Mutual labels:  ssh
Sshtunnel
🚇 Ultra simple SSH tunnelling for Go programs.
Stars: ✭ 135 (-2.88%)
Mutual labels:  ssh

支持作者,从这里购买阿里云!

概述

目前阿里云海外节点的抢占式实例性价比相当高,服务器使用费用平均在0.01~0.02元/小时,外加流量费0.5~1.0元/G,特别适合上班族尤其是程序员日常使用。
独立服务器,专享带宽,乞丐价格,帝皇体验!
上班来了一键启动,下班了自动释放,绝不浪费,超级巴适!
精打细算,随用随开,不用不花钱。不看太多视频的话,一天的成本可以控制在2毛钱以内
通过启动GoogleBBR加速,经speedtest.net实测,上下行速度均可以跑满创建实例时设定的带宽上限! 测速

本脚本实现的功能

  1. 在指定的阿里云地域上自动创建阿里云抢占式实例
  2. 启用GoogleBBR网络加速,这需要升级操作系统内核然后重启

注意,本人仅在Windows10 x64上测试过,其它平台未测试。

开箱即用方式启动

  1. 请去release中下载alispot.exe
  2. 把EXE下载到本地后,在同目录下创建config.json,内容见下面“配置”一节
  3. 双击alispot.exe启动,这会打开一个命令行窗口,等待几分钟即可。窗口中最后会显示连接信息
  4. 第二天重新启动之前,不要忘了把头天的窗口关掉,否则会导致本地端口占用冲突

注:

  1. 即使是开箱即用方式,也得先把下一节“前提”中的准备工作做好
  2. 目前只打包了windows x86的可执行文件(兼容x64),其它平台请参见“构建”和“启动”

前提

  • 在阿里云注册一个账号
  • 在阿里云充值至少120元人民币。这是因为阿里云要求账户余额必须在100以上才能创建抢占式实例。剩下20元用来日常消费,只要不经常看视频应该够用很长时间了。短期使用也不用担心,通过支付宝/网银的充值,可在支付后的3个月内申请原路提现。
  • 在阿里云控制台"访问控制"里面,添加一个RAM子用户,此账户专门用来支持API调用。
  • 给该RAM用户添加AliyunECSFullAccess和AliyunVPCFullAccess权限。因为脚本需要创建虚拟专网和ECS服务器。
  • 给该RAM用户创建一个AccessKey,然后把AccessKey ID和AccessKey Secret记住。 注意:为了安全起见,阿里云不会保存Secret,因此Secret只会显示一次,一定马上复制保存好!! 否则就得创建个新的AccessKey。

访问控制

访问控制

RAM用户1

创建RAM用户1

RAM用户2

创建RAM用户2

RAM权限1

添加RAM权限1

RAM权限2

添加RAM权限1

RAM用户3

获取AccessKeyID和AccessKeySecret

阿里云抢占式实例和流量计费规则

  • 抢占式实例有一个较高的原价和较低的市场价,创建前还可以设定出价,出价比市场价高才能创建成功,但是计费总是按照市场价的。
  • 目前这个脚本使用自动出价,这样理论是可以100%创建成功的。
  • 如果不设定自动释放时间,1小时后实例会被自动释放。
  • 不满1小时按实际使用分钟数计费,不到1分钱则免费,不用担心阿里云蚕食你的费用。
  • 抢占式实例每小时结算一次,结算最小单位是分,不满1分的部分则抹零。
  • 本脚本创建的实例按实际使用流量计费,这个费用不同区域不同。目前大部分海外区域是1元/G以内,比如新加坡是0.53元/G。
  • 阿里云仅对流出流量计费,因此不用担心流量被“双向收费”。
  • 流量也是每小时结算一次,不到1分钱则免费,因此要是一小时内浏览网页仅产生10几M流量的话,就免单了。

脚本说明

  • 脚本会SSH连上服务器,并下载执行本项目中的bbr.sh脚本来启用GoogleBBR。关于BBR的原理和脚本介绍,请见参考。
  • bbr.sh会升级CentOS系统内核,启用BBR,并重启服务器。
  • 如果因为未知原因脚本执行中断或失败,可以再次运行。但别忘了自行登录阿里云后台释放掉未成功的实例,省1毛是一毛。

构建

  • 把项目克隆到本地
  • 执行 npm install

配置

  • 如下修改配置文件 config.json
  • 在RAM配置段,把前面保存的AccessKeyID和AccessKeySecret填入。
  • 在ECS配置段,在地域即RegionId中填入目标地域ID。这个取决于从你本地连接的速度和价格,个人推荐新加坡,从我这里Ping值大约80ms,性价比最高。
  • 推荐设置一个自动释放时间AutoReleaseTime,否则1小时后服务器可能会被自动回收。
  • 带宽上限InternetMaxBandwidthOut预设值是10(M),你可以根据需求调整。
  • ECS的其它配置保持默认即可。具体参见后面的详解。

阿里云海外节点地域对应表:

RegionId 地域名称
cn-hongkong 香港
ap-northeast-1 亚太东北 1 (东京)
ap-southeast-1 亚太东南 1 (新加坡)
ap-southeast-2 亚太东南 2 (悉尼)
ap-southeast-3 亚太东南 3 (吉隆坡)
ap-southeast-5 亚太东南 5 (雅加达)
ap-south-1 亚太南部 1 (孟买)
us-east-1 美国东部 1 (弗吉尼亚)
us-west-1 美国西部 1 (硅谷)
eu-west-1 英国 (伦敦)
me-east-1 中东东部 1 (迪拜)
eu-central-1 欧洲中部 1 (法兰克福)

ECS配置项详解

配置项 说明
RegionId 服务器目标地域ID,对应关系见上表
AutoReleaseTime 自动释放时间,HH:mm:ss格式,或YYYY-MM-DD HH:mm:ss格式,如果比当前时间早,则自动顺延一天。
也可以不设定自动释放时间,这种情况下请自行登录阿里云后台设置释放时间
Password 操作系统root账户的密码,默认不设定,则随机生成密码。生成的密码可以在后台打印信息中找到
ImageId 操作系统镜像ID,默认使用CentOS 7.6,不建议修改
InstanceType 实例类型,默认使用最便宜的1核1G主机,不建议修改
InternetMaxBandwidthOut 出网流量带宽上限,单位M;默认10,想要嗨起来的可以增加
InternetChargeType 流量计费类型,默认按实际使用流量,不建议修改
SystemDisk.Size 系统盘大小,单位G;默认最小值20G,足够用了
SystemDisk.Category 系统盘类型,不建议修改
SpotStrategy 抢占式实例出价类型,默认按市场价,不建议修改

启动

  • 执行 npm start,然后等待即可。
  • 命令是按照windows配置的,linux/mac上可以这样手动执行脚本:
    node index.js | ./node_modules/.bin/bunyan
    bunyan是日志过滤工具,不用也可以
  • 整个脚本运行大概需要3 ~ 5分钟,最后会打印出SSH连接信息,可以远程管理服务器。

参考

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].