Добрый день!
UPD 2021: Если зарегистрируетесь по моей ссылке то получите 100$ на 60 дней для тестирования сервисов DigitalOcean.
На днях пришло письмо от DigitalOcean с предложением потестировать их новые фишки. Это Load Balancer, фаервол, облачное хранилище данных и гибкие тарифные планы где можно выбирать между количеством ядер и размером доступной оперативной памяти.
Я же пока до тестов этих штук не дошел. Зато решил запустить виртуалку на самом дорогом тарифе за умопомрачительные $960 в месяц. За эти деньги нам становится доступно 32 ядра CPU, 192 гигабайта ОЗУ и 4 терабайта SSD.
Давайте посмотрим на результаты тестов.
Сведения о VM
CentOS 7.5
cat /etc/centos-release ----------- CentOS Linux release 7.5.1804 (Core)
uname -a ----------- Linux centos-s-32vcpu-192gb-fra1-01 3.10.0-862.2.3.el7.x86_64 #1 SMP Wed May 9 18:05:47 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Виртуализация KVM
inxi -b ----------- System: Host: centos-s-32vcpu-192gb-fra1-01 Kernel: 3.10.0-862.2.3.el7.x86_64 x86_64 bits: 64 Console: N/A Distro: CentOS Linux release 7.5.1804 (Core) Machine: Type: Kvm System: DigitalOcean product: Droplet v: 20171212 serial: 107730873 Mobo: N/A model: N/A serial: N/A BIOS: DigitalOcean v: 20171212 date: 12/12/2017 CPU: 32x Single Core: Intel Xeon E5-2650 v4 type: SMP speed: 2200 MHz Graphics: Card-1: Red Hat QXL paravirtual graphic card driver: qxl v: kernel Display: server: No display server data found. Headless machine? tty: 202x24 Message: Unable to show advanced data. Required tool glxinfo missing. Network: Card-1: Intel 82371AB/EB/MB PIIX4 ACPI type: network bridge driver: piix4_smbus Card-2: Red Hat Virtio network driver: virtio-pci Drives: Local Storage: total: 3.75 TiB used: 1.54 GiB (0.0%) Info: Processes: 302 Uptime: 10m Memory: 188.75 GiB used: 1.53 GiB (0.8%) Init: systemd runlevel: 3 Shell: clstr_test.sh inxi: 3.0.20
CPU и ОЗУ
cat /proc/cpuinfo ----------- processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 79 model name : Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz stepping : 1 microcode : 0x1 cpu MHz : 2199.998 cache size : 30720 KB physical id : 0 siblings : 1 core id : 0 cpu cores : 1 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx smap xsaveopt bogomips : 4399.99 clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: ... processor : 31 vendor_id : GenuineIntel cpu family : 6 model : 79 model name : Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz stepping : 1 microcode : 0x1 cpu MHz : 2199.998 cache size : 30720 KB physical id : 31 siblings : 1 core id : 0 cpu cores : 1 apicid : 31 initial apicid : 31 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon rep_good nopl eagerfpu pni pclmulqdq vmx ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm rdseed adx smap xsaveopt bogomips : 4399.99 clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: Memory Info: ==================================================== cat /proc/meminfo ----------- MemTotal: 197917588 kB MemFree: 195252340 kB MemAvailable: 195391888 kB Buffers: 2088 kB Cached: 1075068 kB SwapCached: 0 kB Active: 484264 kB Inactive: 632100 kB Active(anon): 40120 kB Inactive(anon): 24200 kB Active(file): 444144 kB Inactive(file): 607900 kB Unevictable: 0 kB Mlocked: 0 kB SwapTotal: 0 kB SwapFree: 0 kB Dirty: 4 kB Writeback: 0 kB AnonPages: 38804 kB Mapped: 28876 kB Shmem: 25112 kB Slab: 214680 kB SReclaimable: 97904 kB SUnreclaim: 116776 kB KernelStack: 5696 kB PageTables: 3732 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 98958792 kB Committed_AS: 232348 kB VmallocTotal: 34359738367 kB VmallocUsed: 506584 kB VmallocChunk: 34359138300 kB HardwareCorrupted: 0 kB AnonHugePages: 10240 kB CmaTotal: 0 kB CmaFree: 0 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 151516 kB DirectMap2M: 5091328 kB DirectMap1G: 196083712 kB
Разметка диска
df -HT ----------- Файловая система Тип Размер Использовано Дост Использовано% Cмонтировано в /dev/vda1 xfs 4,2T 1,7G 4,2T 1% / devtmpfs devtmpfs 102G 0 102G 0% /dev tmpfs tmpfs 102G 0 102G 0% /dev/shm tmpfs tmpfs 102G 26M 102G 1% /run tmpfs tmpfs 102G 0 102G 0% /sys/fs/cgroup tmpfs tmpfs 21G 0 21G 0% /run/user/0
PT Summary
pt-summary ----------- # Percona Toolkit System Summary Report ###################### Date | 2018-08-28 08:54:56 UTC (local TZ: UTC +0000) Hostname | centos-s-32vcpu-192gb-fra1-01 Uptime | 10 min, 1 user, load average: 0,00, 0,16, 0,16 System | DigitalOcean; Droplet; v20171212 (Other) Service Tag | 107730873 Platform | Linux Release | CentOS Linux release 7.5.1804 (Core) Kernel | 3.10.0-862.2.3.el7.x86_64 Architecture | CPU = 64-bit, OS = 64-bit Threading | NPTL 2.17 SELinux | Enforcing Virtualized | VMWare # Processor ################################################## Processors | physical = 32, cores = 32, virtual = 32, hyperthreading = no Speeds | 32x2199.998 Models | 32xIntel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz Caches | 32x30720 KB # Memory ##################################################### Total | 188,7G Free | 186,2G Used | physical = 1,3G, swap allocated = 0,0, swap used = 0,0, virtual = 1,3G Shared | 24,5M Buffers | 1,2G Caches | 186,3G Dirty | 4 kB UsedRSS | 110,9M Swappiness | 30 DirtyPolicy | 30, 10 DirtyStatus | 0, 0 Locator Size Speed Form Factor Type Type Detail ========= ======== ================= ============= ============= =========== DIMM 0 16384 MB 16384 MB DIMM RAM None # Mounted Filesystems ######################################## Filesystem Size Used Type Opts Mountpoint devtmpfs 95G 0% devtmpfs rw,nosuid,seclabel,size=98936236k,nr_inodes=24734059,mode=755 /dev /dev/vda1 3,8T 1% xfs rw,relatime,seclabel,attr2,inode64,noquota / tmpfs 19G 0% tmpfs rw,nosuid,nodev,seclabel /run/user/0 tmpfs 19G 0% tmpfs rw,nosuid,nodev,seclabel,mode=755 /run/user/0 tmpfs 19G 0% tmpfs rw,nosuid,nodev,relatime,seclabel,size=19791760k,mode=700 /run/user/0 tmpfs 19G 0% tmpfs ro,nosuid,nodev,noexec,seclabel,mode=755 /run/user/0 tmpfs 95G 0% tmpfs rw,nosuid,nodev,seclabel /dev/shm tmpfs 95G 0% tmpfs rw,nosuid,nodev,seclabel,mode=755 /dev/shm tmpfs 95G 0% tmpfs rw,nosuid,nodev,relatime,seclabel,size=19791760k,mode=700 /dev/shm tmpfs 95G 0% tmpfs ro,nosuid,nodev,noexec,seclabel,mode=755 /dev/shm tmpfs 95G 0% tmpfs rw,nosuid,nodev,seclabel /sys/fs/cgroup tmpfs 95G 0% tmpfs rw,nosuid,nodev,seclabel,mode=755 /sys/fs/cgroup tmpfs 95G 0% tmpfs rw,nosuid,nodev,relatime,seclabel,size=19791760k,mode=700 /sys/fs/cgroup tmpfs 95G 0% tmpfs ro,nosuid,nodev,noexec,seclabel,mode=755 /sys/fs/cgroup tmpfs 95G 1% tmpfs rw,nosuid,nodev,seclabel /run tmpfs 95G 1% tmpfs rw,nosuid,nodev,seclabel,mode=755 /run tmpfs 95G 1% tmpfs rw,nosuid,nodev,relatime,seclabel,size=19791760k,mode=700 /run tmpfs 95G 1% tmpfs ro,nosuid,nodev,noexec,seclabel,mode=755 /run # Disk Schedulers And Queue Size ############################# vda | [mq-deadline] 256 vdb | [mq-deadline] 256 # Disk Partioning ############################################ Device Type Start End Size ============ ==== ========== ========== ================== /dev/vda Disk 4123168604160 /dev/vdb Disk 444416 # Kernel Inode State ######################################### dentry-state | 114993 99182 45 0 0 0 file-nr | 960 0 19607256 inode-nr | 52397 165 # LVM Volumes ################################################ Unable to collect information # LVM Volume Groups ########################################## Unable to collect information # RAID Controller ############################################ Controller | No RAID controller detected # Network Config ############################################# Controller | Red Hat, Inc. Virtio network device FIN Timeout | 60 Port Range | 60999 # Interface Statistics ####################################### interface rx_bytes rx_packets rx_errors tx_bytes tx_packets tx_errors ========= ========= ========== ========== ========== ========== ========== lo 400 6 0 400 6 0 eth0 225000000 40000 0 3500000 35000 0 # Network Devices ############################################ Device Speed Duplex ========= ========= ========= eth0 # Network Connections ######################################## Connections from remote IP addresses 46.8.117.33 1 Connections to local IP addresses 46.101.119.89 1 Connections to top 10 local ports 22 1 States of connections ESTABLISHED 1 LISTEN 6 # Top Processes ############################################## PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 826 chrony 20 0 117752 1684 1264 S 6,2 0,0 0:00.02 chronyd 14241 root 20 0 162124 2256 1516 R 6,2 0,0 0:00.01 top 1 root 20 0 46144 6388 3956 S 0,0 0,0 0:04.44 systemd 2 root 20 0 0 0 0 S 0,0 0,0 0:00.01 kthreadd 3 root 20 0 0 0 0 S 0,0 0,0 0:00.00 ksoftirqd/0 5 root 0 -20 0 0 0 S 0,0 0,0 0:00.00 kworker/0:+ 7 root rt 0 0 0 0 S 0,0 0,0 0:00.07 migration/0 8 root 20 0 0 0 0 S 0,0 0,0 0:00.00 rcu_bh 9 root 20 0 0 0 0 S 0,0 0,0 0:00.81 rcu_sched # Notable Processes ########################################## PID OOM COMMAND 1762 -17 sshd 11220 -17 auditd # Memory mamagement ########################################## Transparent huge pages are enabled. # The End ####################################################
Тесты
DD
dd if=/dev/zero of=test bs=64k count=16k conv=fdatasync 2>&1 rm -f test ----------- 16384+0 записей получено 16384+0 записей отправлено скопировано 1073741824 байта (1,1 GB), 1,66075 c, 647 MB/c 16384+0 записей получено 16384+0 записей отправлено скопировано 1073741824 байта (1,1 GB), 1,69111 c, 635 MB/c 16384+0 записей получено 16384+0 записей отправлено скопировано 1073741824 байта (1,1 GB), 1,59357 c, 674 MB/c
Sysbench тест CPU
sysbench cpu --cpu-max-prime=20000 --num-threads=1 run ----------- sysbench 1.0.15 (using bundled LuaJIT 2.1.0-beta2) Running the test with following options: Number of threads: 1 Initializing random number generator from current time Prime numbers limit: 20000 Initializing worker threads... Threads started! CPU speed: events per second: 308.32 General statistics: total time: 10.0033s total number of events: 3085 Latency (ms): min: 3.19 avg: 3.24 max: 4.33 95th percentile: 3.30 sum: 9994.64 Threads fairness: events (avg/stddev): 3085.0000/0.00 execution time (avg/stddev): 9.9946/0.00
sysbench mutex --threads=64 run ----------- sysbench 1.0.15 (using bundled LuaJIT 2.1.0-beta2) Running the test with following options: Number of threads: 64 Initializing random number generator from current time Initializing worker threads... Threads started! General statistics: total time: 1.3852s total number of events: 64 Latency (ms): min: 364.46 avg: 880.07 max: 1194.69 95th percentile: 1129.24 sum: 56324.23 Threads fairness: events (avg/stddev): 1.0000/0.00 execution time (avg/stddev): 0.8801/0.20
Sysbench тест ОЗУ
sysbench memory --num-threads=4 --memory-total-size=192G run ----------- WARNING: --num-threads is deprecated, use --threads instead sysbench 1.0.15 (using bundled LuaJIT 2.1.0-beta2) Running the test with following options: Number of threads: 4 Initializing random number generator from current time Running memory speed test with the following options: block size: 1KiB total size: 196608MiB operation: write scope: global Initializing worker threads... Threads started! Total operations: 57598451 (5758323.45 per second) 56248.49 MiB transferred (5623.36 MiB/sec) General statistics: total time: 10.0001s total number of events: 57598451 Latency (ms): min: 0.00 avg: 0.00 max: 0.34 95th percentile: 0.00 sum: 28703.35 Threads fairness: events (avg/stddev): 14399612.7500/118477.92 execution time (avg/stddev): 7.1758/0.02
Sysbench тест диска
sysbench fileio --file-total-size=384G prepare ----------- sysbench 1.0.15 (using bundled LuaJIT 2.1.0-beta2) 128 files, 3145728Kb each, 393216Mb total Creating files for the test... Extra file open flags: (none) Creating file test_file.0 Creating file test_file.127 412316860416 bytes written in 855.83 seconds (459.45 MiB/sec). sysbench fileio --file-total-size=384G --file-test-mode=rndrw --time=300 --max-requests=0 run ----------- sysbench 1.0.15 (using bundled LuaJIT 2.1.0-beta2) Running the test with following options: Number of threads: 1 Initializing random number generator from current time Extra file open flags: (none) 128 files, 3GiB each 384GiB total file size Block size 16KiB Number of IO requests: 0 Read/Write ratio for combined random IO test: 1.50 Periodic FSYNC enabled, calling fsync() each 100 requests. Calling fsync() at the end of test, Enabled. Using synchronous I/O mode Doing random r/w test Initializing worker threads... Threads started! File operations: reads/s: 2557.61 writes/s: 1705.07 fsyncs/s: 5456.55 Throughput: read, MiB/s: 39.96 written, MiB/s: 26.64 General statistics: total time: 300.0029s total number of events: 2915692 Latency (ms): min: 0.00 avg: 0.10 max: 842.48 95th percentile: 0.45 sum: 297787.80 Threads fairness: events (avg/stddev): 2915692.0000/0.00 execution time (avg/stddev): 297.7878/0.00
SpeedTest
speedtest-cli ----------- Retrieving speedtest.net configuration... Testing from DigitalOcean (46.101.119.89)... Retrieving speedtest.net server list... Selecting best server based on ping... Hosted by Structured Communications (London) [0.96 km]: 15.965 ms Testing download speed................................................................................ Download: 476.17 Mbit/s Testing upload speed.................................................................................................... Upload: 210.52 Mbit/s
7-zip benchmark
7za b ----------- 7-Zip (a) [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21 p7zip Version 16.02 (locale=ru_RU.UTF-8,Utf16=on,HugeFiles=on,64 bits,32 CPUs Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz (406F1),ASM,AES-NI) Intel(R) Xeon(R) CPU E5-2650 v4 @ 2.20GHz (406F1) CPU Freq: 2446 2451 2453 2455 2460 2465 2465 2466 2464 RAM size: 193278 MB, # CPU hardware threads: 32 RAM usage: 7060 MB, # Benchmark threads: 32 Compressing | Decompressing Dict Speed Usage R/U Rating | Speed Usage R/U Rating KiB/s % MIPS MIPS | KiB/s % MIPS MIPS 22: 29990 1533 1903 29175 | 363052 1795 1725 30961 23: 31765 1612 2008 32366 | 351394 1744 1744 30407 24: 31577 1631 2082 33952 | 356059 1802 1734 31252 25: 32187 1659 2216 36750 | 347051 1755 1760 30885 ---------------------------------- | ------------------------------ Avr: 1609 2052 33061 | 1774 1741 30876 Tot: 1691 1897 31969
Выводы
Естественно тесты ничего удивительного не показали. Сложно такую виртуальную машину нагрузить на 100%. Но вообще не понимаю для кого существуют такие тарифные планы. За $960 в месяц можно взять десяток довольно мощных выделенных серверов. Тут преимущество только в том что виртуалку можно создать за 1 минуту и заплатить в итоге только за 1 час использования. Это будет стоить $1,42. В остальных же случаях это слишком дорого.
UPD 2021: Если зарегистрируетесь по моей ссылке то получите 100$ на 60 дней для тестирования сервисов DigitalOcean.