搶占式虛擬機下的 Tor 中繼/退出節點
我已付費訂閱 Google Cloud Platform,我想執行 Tor 中繼和退出節點。我使用 Docker 鏡像quantumobject/docker-tor-exit-relay,即插即用。
簡而言之,根據收到的答案:
- g1-micro VM 配置是最便宜的替代方案,但可能無法達到我想要提供的高性能。
- 具有 1 個 vCPU 和 1GB RAM 的自定義 VM,承諾使用 3 年,似乎是最方便和負擔得起的。
- 搶占式 VM 類是無用的。
- 負載均衡器後面的幾個實例是一個壞主意。
我原來的理由
由於搶占式 VM 便宜得多,我想將實例組與搶占式 VM 一起使用。然後,為了擁有高可用性節點,我計劃使用 GCP 負載均衡器,以便在任何時候只保持一個 IP 地址和至少一個虛擬機執行。
此外,我最初計劃使用 g1-small VM 類型(1/2 共享 vCPU 和 1.7 GB RAM)來計算成本,我正在與其他替代品進行比較,例如具有“承諾使用”的正常類 VM(適用折扣) )。
投資
以下是虛擬機的估計成本(根據計算器):
Config. | Class | vCPU | RAM | C. usage | Price/Mo ---------------------------------------------------------------- g1-micro | Regular | 0.2 | 600MB | Not set | US$3.88 g1-small | Preemptible | 0.5 | 1.70GB | Not set | US$5.11 g1-small | Regular | 0.5 | 1.70GB | Not set | US$13.80 n1-standard | Regular | 1 | 3.75GB | 3 years | US$15.60 Custom | Regular | 1 | 1GB | 3 years | US$11.78 Custom | Regular | 1 | 2GB | 3 years | US$13.17
vCPU 是 Intel Xeon @ 2.3 GHz,Haswell 微架構。
此外,我們需要估計的出口流量(每月消耗的頻寬)成本(對組而不是單個 VM 有用):
BW | Zone 1 | Zone 2 | Zone 3 | Zone 4 | Price ----------------------------------------------------- 70GB | 40GB | 15GB | 5GB | 10GB | US$9.42 80GB | 80GB | 30GB | 10GB | 20 GB | US$19.27 350GB | 200GB | 75GB | 25GB | 50 GB | US$48.82 700GB | 400GB | 150GB | 50GB | 100 GB | US$98.07 Zone 1: Americas/EMEA Zone 2: Asia/Pacific Zone 3: Australia Zone 4: China
虛擬機規格
目前,我正在使用以下配置測試 VM:
1 個 vCPU Inten Xeon @ 2.30GHz (Haswell)
1GB 記憶體
作業系統映像:cos-stable-71-11151-71-0
- 核心:ChromiumOS-4.14.74
- Kubernetes:1.11.5
- 碼頭工人:18.06.1
- 家庭:成本穩定
Docker 鏡像:quantumobject/docker-tor-exit-relay
啟動腳本:
run -d -p 2222:22 -p 80:80 -p 9050:9050 -p 9001:9001 quantumobject/docker-tor-exit-relay
VM類:普通
地區:us-central1
**提示:**轉到VPC 網路>防火牆並創建一個名為“allow-tor”的規則,然後設置:
- 優先級:500(低於預設 1000 的任何值)
- 目標:指定的目標標籤
- 目標標籤:allow-tor
- 協議和埠:指定的協議和埠:“tcp:22,80,443,9001,9050”
創建虛擬機/模板時,進入管理、安全、磁碟、網路、單一租戶,選擇網路,然後設置您在防火牆設置中設置的標籤。
基準
此外,我在 g1-small 和自定義 1 GB RAM 1 vCPU 實例中執行了一個 openssl 基準測試(
openssl speed aes
每個 cbc 執行 3 秒),我得到了以下結果:g1-小:
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes aes-128 cbc 102714.85k 114937.26k 118729.12k 119713.45k 120548.01k 120684.54k aes-192 cbc 87781.72k 96917.15k 99274.67k 100145.83k 100463.96k 100515.84k aes-256 cbc 76597.38k 83198.89k 84709.38k 85080.02k 85516.29k 85859.83k
風俗:
aes-128 cbc 100811.34k 114144.42k 116054.50k 117985.42k 119586.42k aes-192 cbc 85914.78k 95220.79k 98367.39k 98994.68k 99095.15k aes-256 cbc 76171.38k 82969.05k 84497.50k 85145.08k 84728.69k
性能幾乎相同,可能是因為與專用的 1 個 vCPU 相比,共享 vCPU 在某些需要的時候(但並非總是)獲得全功率。
我的問題:
- 為每個實例推薦的頻寬量是多少?
- ~~在 GCP 中的一個負載均衡器後面執行一個或多個 Tor 中繼/退出節點是否安全?~~沒有。
- ~~執行在 24 小時或更短時間關閉的搶占式節點是否安全/有用?(IP 地址分配是動態的,不保證新節點的 IP 地址相同)~~安全但無用。
- ~~g1-micro或g1-small虛擬機規格是否足以執行性能不錯的節點?~~定制的 1GB RAM VM 更便宜、更強大。
提前致謝。
執行多個可搶占節點以實現冗餘是一個糟糕的計劃。如果可搶占節點在同一區域中執行,則由於該區域的需求增加,它們很可能同時關閉。
不同區域的搶占式節點不太可能同時關閉,但風險仍然存在,並且可能取決於其他 GCE 客戶在做什麼,這完全超出您的控制範圍。
如果您關心可用性,請不要使用搶占式節點。它們適用於被搶占不是什麼大問題的批處理,您可以稍後再進行處理。