加密货币挖矿正在扼杀所有免费的 CI/CD 平台
我们都知道,加密货币挖矿正在对世界上的很多事物产生负面影响。现在,它正以一种人们从未预料到的方式毁掉其他事物。这就是为什么加密货币挖矿正在扼杀所有免费的持续集成/持续交付平台。
视频
与往常一样,如果您是视觉学习者,或者只是喜欢观看和聆听而不是阅读,那么这里有视频,公平地说,它比这篇文章完整得多。
视频链接:https://youtu.be/9TOJqJSHVvI
如果你更喜欢阅读,那么...我们就继续吧:)
简介
今天我不得不谈一些我不太想谈的事情,但不幸的是,这种情况正在发生,而且正在加剧。所以,我们来谈谈加密货币挖矿及其对免费 CI/CD 平台的有害影响。
采矿著作
我们都知道加密挖矿,即利用计算机或显卡的计算能力验证各种形式的加密货币交易并将其添加到区块链数字账本中,矿工直接获得加密货币奖励的过程。
我们或许都知道,这正在影响我们时代的诸多方面。例如,当前和上一代显卡的挖矿性能如此出色、速度如此之快,以至于现在几乎买不到显卡,或者即使买到,价格也高得离谱。所有显卡的供应基本上都被矿工和少数幸运的游戏玩家占据了。
加密货币挖矿如何影响CI平台
好的,但这会对 CI/CD 平台产生什么影响呢?很高兴你问到这个问题。
由于显卡供应不足,以及加密货币价值上涨导致矿工数量不断增加,矿工们开始尝试寻找其他挖矿方式。
他们最初开始使用云服务,但很快意识到持续运行大型实例的成本高于他们所能获得的收益。于是,他们开始关注免费的CI提供商。
托管构建代理功能相当强大,需要处理编译等工作,而且大多数平台都提供免费套餐,尤其是公共代码库。免费获得强大的机器,矿工的梦想成真了。
问题就在这里。他们开始编写脚本,将其推送到公共代码库,并利用这些免费的CI代理来运行他们的挖矿软件。随着不同的提供商开始阻止这些尝试,矿工们也开始编写相当复杂的软件和脚本来“掩盖”他们使用代码库和CI代理的真正原因。
一个例子
例子不胜枚举,但这里举一个例子,只是为了让你明白问题的严重性。GitHub 上有一位用户创建了一个简单的 repo,乍一看似乎合法。
该用户在代码库中定义了 5 个不同的 CI 提供商,包括 GitHub Actions、CircleCI、TravisCI 等,并且所有提供商都配置了自动 CI。该用户大约每小时提交一次,从而触发了所有 5 个 CI……而运行的脚本实际上是一个加密货币挖矿程序。你可以想象,仅此一个用户就消耗了多少资源。
效果
事实上,如果您注意到托管的 CI 代理比平时慢,或者在执行任务时延迟较大,很可能就是因为这个原因。这不仅在免费 CI 上如此,在付费 CI 平台上也一样……因为资源是一样的。但如果问题只是速度慢,我们就不会在这里讨论这个问题了。
问题远比这严重得多。几乎所有 CI 提供商都停止了提供免费套餐,或者在最好的情况下,对服务实施了严格的限制。
行业反应
Azure DevOps
微软不再为新组织提供免费的 Azure Pipelines 并发 CI。如用户需要,需自行申请并提供补充信息以验证其是否符合资格。
TravisCI
TravisCI 则更进一步,彻底取消了免费套餐,并为现有用户提供一定数量的免费试用积分。当积分用完后,如果用户想继续使用 CI,则必须购买付费套餐。
GitLab
GitLab 采取了不同的方法。
首先,他们要求新用户在开始使用托管 CI 代理之前,先添加一张信用卡来验证他们的账户。现有用户目前不需要输入信用卡号,但将来可能会需要。
其次,他们取消了之前分配给公共项目的无限免费分钟数,而是将免费分钟数限制设置为 400 分钟。
CircleCI
Circle CI 从来没有完全免费的计划,而只是每月免费赠送 2500 个积分。
虽然他们还没有改变这一点,至少现在还没有,但他们发表了一篇文章称,他们拥有一支完整的团队,我引用一下,“由安全专家、运营工程师、数据科学家和开发人员组成的团队,他们的持续工作包括发现和消除对我们平台的滥用”。
这对公司来说当然是一笔巨大的成本,如果事情继续这样下去,他们将需要找到一种方法来收回这笔钱……你可以根据自己的意愿去做。
GitHub Actions
最后,据我所知,GitHub Actions 是唯一一家仍然完全免费无限制使用其 CI 且没有改变这一点的提供商。
然而,他们在公开博客的一篇文章中提到,Actions 团队花费了数千小时对抗矿工。就像 CircleCI 的案例一样,这是有代价的。让工程团队专注于对抗矿工,很可能意味着他们没有时间专注于改进和开发服务。
他们还表示,他们正在推出功能和改进,以帮助开源项目的维护者在涉及 Pull Requests 和 Forks 时更好地控制他们的 CI。
我可以继续说下去,因为每个 CI 提供商都在发生类似的事情。
解决方案?
我们能做些什么来避免这种情况吗?很遗憾,恐怕答案是否定的。
提供商可以尽力执行服务条款并采取其他措施,但只要进行此类攻击有利可图且无法追踪,矿工就会变得更加老练并规避措施。
唯一的希望是加密网络彻底禁用当前基于计算的挖矿来赚取新币,彻底转向权益证明 (POS) 验证模型。这听起来不可能,但实际上已经发生了。事实上,以太坊最近就宣布他们将这样做。
结论
请在下面的评论部分告诉我您对这个敏感话题的看法。
喜欢、分享并关注我🚀以获取更多内容:
📽 YouTube
☕给我买杯咖啡
💖 Patreon
🌐 CoderDave.io 网站
👕周边商品
👦🏻 Facebook 页面
🐱💻 GitHub
👲🏻 Twitter
👴🏻 LinkedIn
🔉 播客