DigitalOcean 的功能、价格和基准结果计划

介绍

本页面介绍了DigitalOcean的特点、功能和费用。

官方信息

  1. 官方网站
  2. 官方Twitter
  3. 官方博客
  4. 官方YouTube频道
  5. API手册
  6. 用户管理面板

免费优惠券

通过此链接注册账户,首次注册时可获得$200的免费券。有效期为60天。

DigitalOcean的特点

使用场景概述

– 即使只有海外数据中心也没问题
– 优先考虑丰富的云功能和易用的控制面板
在这种情况下,作为海外最大VPS之一的DigitalOcean是一个强有力的候选者。当您觉得AWS太贵,但仍希望拥有高质量的云功能时,DigitalOcean是一个很好的选择。由于地理位置距离的原因,从日本使用的话,推荐新加坡数据中心。

总体特点

① 挥发性(可以按小时收费创建并立即丢弃服务器)
② 冗余性(即使一台服务器宕机,服务也能持续运行=需要负载均衡器和本地连接等)
③ 可扩展性(可以在保持数据的同时升级规格)
满足这三大云计算条件,是一个超越VPS范畴的先进云型VPS之一。

作为历史悠久的海外VPS,DigitalOcean是首选之一。

其最大的特点是:
– 托管数据库
– Kubernetes
– 无服务器函数
等,作为VPS在容器技术等云功能方面领先。提供了App Platform、托管数据库、托管Kubernetes (k8s)、容器注册表等多种容器服务。此外,免费SSL证书(Let’s Encrypt)支持负载均衡器的安装、自动更新和通配符证书,这是运维上的一个重大优势。

当您觉得AWS价格过高但仍希望以尽可能低的成本享受云功能时,DigitalOcean是一个受欢迎的VPS选择。

然而,目前DigitalOcean只在海外设有数据中心,对于面向日本的服务来说,可能是一个令人困惑的选择。界面和支持均为英语。

DigitalOcean的服务器计划一览

虽然是从日本利用海外托管,但还需额外支付10%的消费税。

有超过100种计划可供选择。通过条件筛选,找到适合自己的计划。

共享CPU

基础型

基础型Droplet对于低专用线程使用率的工作负载,以低成本实现最高效的CPU使用率。这些非常适合处理不同级别CPU负载的高突发性应用。

普通磁盘类型:SSD

高级Intel磁盘:NVMe SSD

高级AMD磁盘:NVMe SSD

专用CPU

通用型

通用型Droplet具有专用CPU和内存的平衡比率,适合各种生产工作负载。适合需要专用计算能力的通用工作负载。高级版本的通用型Droplet提供高达10Gbps的出站网络速度和NVMe SSD。

普通Intel磁盘类型:SSD / 网络:最高2Gbps

高级Intel磁盘:NVMe SSD / 网络:最高10Gbps

CPU优化型

CPU优化型Droplet的内存与CPU比率为2:1。配备高速(2.6GHz以上)的专用vCPU,非常适合需要快速且一致性能的应用,如媒体流、游戏和数据分析。高级版本的CPU优化型Droplet提供高达10Gbps的出站网络速度和NVMe SSD。

普通Intel磁盘类型:SSD / 网络:最高2Gbps

高级Intel磁盘:NVMe SSD / 网络:最高10Gbps

内存优化型

内存优化型Droplet为每个vCPU提供8GiB RAM。添加内存可以避免过多的磁盘交换和内存不足错误,这两者都会对应用性能和稳定性产生重大影响。内存优化型Droplet使用NVMe SSD,提升大量事务工作负载的磁盘性能。

普通Intel磁盘类型:SSD / 网络:最高2Gbps

高级Intel磁盘:NVMe SSD / 网络:最高10Gbps

存储优化型

存储优化型Droplet使用NVMe(非易失性存储快递),这是专门为最新的SSD构建的接口协议。利用并行处理,实现比普通SSD快数倍的磁盘性能。

普通Intel磁盘类型:SSD / 网络:最高2Gbps

高级Intel磁盘:NVMe SSD / 网络:最高10Gbps

App Platform

应用平台

DigitalOcean的应用平台是一种PaaS(平台即服务)型云服务,旨在减少基础架构工程师的配置和运维工作量,并自动化基础架构运维。工程师只需关注源代码,而将基础架构的配置和运维交给DigitalOcean即可。

另外,作为基础架构运维自动化服务的Managed Kubernetes,可以提供更细粒度的控制,但对于觉得这太复杂(不想在基础架构上花费太多时间)的用户来说,这将是一个很好的服务选择。

选择GitHub存储库,点击按钮即可将网站发布的演示视频如下:

一些特点包括:

  1. 将源代码推送到GitHub的Master分支作为触发器,无需停止网站即可将更改反映到网站=委托部署
  2. 通过管理界面轻松升级服务器规格或增加服务器数量来实现水平扩展,期间系统不会停止(已内置负载均衡器,可自动处理负载均衡等)
  3. 静态文件网站免费可达3个站点
  4. 通过委托Managed DB来管理数据库部分

计划分为Starter(免费)、Basic和Professional,差异如下。
在Starter中,仅限静态站点;Basic及以上版本可以运行使用PHP等的动态站点;Professional版本还可以使用专用CPU(价格更高)等功能。

Starter(仅限静态文件网站)免费支持3个站点(超过后每个站点$3/月),Basic和Professional的服务器费用取决于服务器规格,如下所示。

Basic

Professional

无服务器函数

按请求时使用的内存量×秒数计费。
有90000GB秒=25GB小时的免费额度。

超过免费额度后,将收取0.0000185/GB秒($0.0666/GB小时)的费用。

支持Go、Node.js、PHP、Python。

使用每种语言编写的Hello World示例如下。
由于无服务器函数可能并非所有情况下都很快(在AWS上的情况),所以即使使用其他简单的语言也没有问题。

Go语言

package main

import (
	"fmt"
)

type Request struct {
	Name string `json:"name"`
}

type Response struct {
	StatusCode int               `json:"statusCode,omitempty"`
	Headers    map[string]string `json:"headers,omitempty"`
	Body       string            `json:"body,omitempty"`
}

func Main(in Request) (*Response, error) {
	if in.Name == "" {
		in.Name = "stranger"
	}

	return &Response{
		Body: fmt.Sprintf("Hello %s", in.Name),
	}, nil
}

Node.js

function main(args) {
    let name = args.name || 'stranger'
    let greeting = 'Hello ' + name + '!'
    console.log(greeting)
    return {"body": greeting}
}

exports.main = main

PHP

<?php
function main(array $args) : array
{
    $name = $args["name"] ?? "stranger";
    
    $greeting = "Hello {$name}!";
    echo $greeting;
 
    return [
        'body' => $greeting,
    ];
}

Python

def main(args):
      name = args.get("name", "stranger")
      greeting = "Hello " + name + "!"
      print(greeting)
      return {"body": greeting}

托管数据库服务(DBaaS)

所谓的Managed DB是一种Database as a Service。

– 无需配置/管理
– 每日免费备份和恢复至当时状态
– 故障时自动恢复到备用服务器
– 可进行Scale up
– 可选择Kafka、PosgreSQL、MongoDB、MySQL、Redis

作为系统冗余性的保障,至少需要一个Standby服务器。

后端服务器可以选择Basic、General Purpose、Storage Optimized这三种类型。

Basic

General

Storage Optimized

托管Kubernetes(k8s)

Managed Kubernetes本身不收取额外费用,但要支付使用的服务器费用。
由于必须至少使用3台服务器,因此如果服务器单独的价格是$10,那么最低费用为$10×3=$30。

容器注册表

DigitalOcean的基础架构内可管理Docker镜像的注册。

块存储

每月$10, 100GB。
最多可扩展至16TB。

对象存储

每月$5,250GB。
附带每月1TB的免费传输额度。
超出部分每GB收费$0.02。
超出免费额度的传输量每GB收费$0.01。

固定IP地址

如果未与服务器实例绑定,则每月费用为$5,但如果进行了绑定,则免费。

负载均衡器

每月$12,支持每秒同时访问10000、同时连接10000、同时SSL连接250。
通过增加负载均衡器可进行水平扩展。
最多可配置100个负载均衡器,因此SSL同时连接最多支持每秒25000。

负载均衡器上可使用免费SSL证书和SSL证书的自动更新是很重要的。
还支持通配符证书。
也可以使用粘性会话。

VPC(虚拟专用网络)

免费使用。
可以创建一个在自己管理的服务器群内部的封闭网络。
易于管理安全性。
即使超出VPC,只要在同一数据中心内,通信也是免费的。

DigitalOcean各数据中心的网络响应时间

数据中心 从Vultr东京数据中心Ping的时间
阿姆斯特丹 0.264秒
班加罗尔 0.115秒
法兰克福 0.255秒
伦敦 0.211秒
纽约 0.160秒
旧金山 0.110秒
新加坡 0.071秒
多伦多 0.209秒

由于DigitalOcean在日本没有数据中心,因此需要了解从日本到各个数据中心的网络响应时间,以便进行数据中心选择。
在考虑主要从日本用户访问时,放置在Ping(通过网络的响应时间)最短的新加坡数据中心是最好的选择。
相反,如果选择功能而不是位置,则由于新功能很可能首先在纽约提供,因此选择纽约数据中心是个不错的选择。

DigitalOcean简易安装支持软件

1Password SCIM bridge
Acra
Akaunting
Alf.io
Ant Media Server Community Edition
Ant Media Server Enterprise Edition
apnscp
Argo CD
AzuraCast
bcoin
Bitwarden
Botpress
Buddy
Bugfender
Caddy
CapRover
Chamilo
CloudBees Jenkins Distribution
Cloudron
code-server
Countly Analytics
cPanel & WHM®
CyberPanel
CyberScore
Deadletter - Facial Identification Tool
Directus
Discourse
Django
Docker
Dokku
Dokos
ERPNext
FastNetMon
FASTPANEL
Fathom Analytics
Flashphoner Web Call Server
Flexify.IO
Ghost
Gitea
Grafana
Grafana Loki
GrandNode
Hasura GraphQL
Helpy
HoneyDB Agent
InfluxDB TICK Stack
Invoice Ninja
IOTA Hornet Node
Izenda
Jaeger
Jelastic PaaS
kube-state-metrics
KubeMQ
Kubernetes Metrics Server
Kubernetes Monitoring Stack
LAMP
LEMP
Linkerd
LogDNA
Mastodon
Mattermost
Mattermost Operator
Meltano
MemCachier
Memgraph
Metabase
Microweber
MongoDB
Moon
MySQL
Nakama
Netdata
NetFoundry Cloud Gateway
NGINX Ingress Controller
Nimbella Lite
Ninjam
NKN Full Node
Node.js Quickstart
NodeGame
NodeJS
Okteto
Onion Routed Cloud
Onjection Jenkins
ONLYOFFICE
Open Source Social Network
Open Unlight
OpenCart
OpenEBS
OpenFaaS
OpenFaaS Kubernetes
OpenLiteSpeed Django
OpenLiteSpeed NodeJS
OpenLiteSpeed WordPress
OpenVPN + Pihole
OpenVPN Access Server
PacVim
Passbolt CE
PDFShift
PhpMyAdmin
Plesk
Plesk (CentOS)
Prometheus
Prometheus Kubernetes
QCObjects
Red Sky Ops
Redash
Restyaboard
Restyaboard (CentOS)
RethinkDB
RethinkDB (Fantasia)
Rocket.Chat
RStudio
RStudio + H2O
RStudio + PkgDev
Ruby on Rails
Scout
Selenoid
Shopware
Skaffolder Enterprise
Snapt Aria
Snapt Nova
SolidInvoice
Spotipo
StorageOS
Strapi
ThingsBoard Community Edition
ThingsBoard Professional Edition
titra
Varbase
VitalPBX
vitalpointz IoT Core Lite
WeconexPBX
Wiki.js
WordPress
WordPress Kubernetes
Workarea
WorkflowServer
X-Cart
Zabbix
Zeromon Zabbix
ZoomAdmin
Zulip

CPU是否有偏差?

CPU存在偏差,并且可以通过查看CPU信息来确认是正面还是反面,如果是反面,则应该销毁服务器,然后重新生成。
这个过程类似于在手机游戏中创建新账户并反复创建/删除,直到得到好角色的“复位马拉松”一样。

当有新的CPU时,最好拍摄快照,然后尝试生成新实例。

尽管在廉价的Basic计划中,Regular的CPU可能会有较大的随机率,但选择Premium Intel/AMD可以获得相对稳定和高性能的CPU。

DigitalOcean云功能列表

DDoS防护、高可用性并不是单独提供给服务器实例的,但如果使用应用平台,则可以获得。

DigitalOcean用户评论和声誉

主要用户是海外用户,但对于认为AWS等公有云价格过高的用户来说,它通常被选择为价格解决方案。
不幸的是,由于在日本国内不提供服务,因此在日本的使用程度有限,但在海外却是最大的VPS提供商。

DigitalOcean基准测试结果