จุดมุ่งหมายคือการสร้างรายการเครื่องมือที่สามารถใช้กับ Vastai ได้ เครื่องมือนี้ใช้งาน แก้ไข และแจกจ่ายได้ฟรี หากคุณพบว่าสิ่งนี้มีประโยชน์และต้องการบริจาค คุณสามารถส่งเงินบริจาคของคุณไปที่กระเป๋าเงินต่อไปนี้
BTC 15qkQSYXP2BvpqJkbj2qsNFb6nd7FyVcou
XMR 897VkA8sG6gh7yvrKrtvWningikPteojfSgGff3JAUs3cu7jxPDjhiAZRdcQSYPE2VGFVHAdirHqRZEpZsWyPiNK6XPQKAg
RVN RSgWs9Co8nQeyPqQAAqHkHhc5ykXyoMDขึ้น
USDT(ETH ERC20) 0xa5955cf9fe7af53bcaa1d2404e2b17a1f28aac4f
Paypal PayPal.Me/cryptolabsZA
คู่มือการติดตั้งโฮสต์สำหรับมากมาย
การทดสอบการยืนยันตนเอง
แก้ไข Speedtest-cli สำหรับมากมาย
แดชบอร์ดการวิเคราะห์
ตรวจสอบ Nvidia 3000/4000 Core, GPU Hotspot และ Vram temps ของคุณ
nvml-ข้อผิดพลาดเมื่อใช้-ubuntu-22-และ-24
ลบข้อความแสดงข้อผิดพลาดสีแดงที่เด่นชัด
หน่วยความจำ oc
มอนิเตอร์โอซี
เน้นการทดสอบ GPU บนแพลตฟอร์ม Python ของ RTX3090
โทรเลข-Vast-Uptime-Bot
อัปเดตราคาสำหรับรายชื่อโฮสต์โดยอัตโนมัติตามผลกำไรจากการขุด
งานเบื้องหลังหรืองานว่างมากมาย
การตั้งค่าความเร็วพัดลมหากคุณมีระบบที่ไม่มีหัว
ลบแพ็คเกจการอัพเกรดแบบอัตโนมัติ
วิธีอัพเดตโฮสต์
วิธีย้ายไดรเวอร์นักเทียบท่าขนาดใหญ่ของคุณไปยังไดรฟ์อื่น
สำรองข้อมูล varlibdocker ไปยังเครื่องอื่นบนเครือข่ายของคุณ
กำลังเชื่อมต่อกับอินสแตนซ์ที่ทำงานอยู่ด้วย VNC เพื่อดู GUI ของแอปพลิเคชัน
การตั้งค่าเดสก์ท็อปเร่งความเร็ว 3 มิติในเว็บเบราว์เซอร์บน Vastai
คำสั่งที่เป็นประโยชน์
วิธีการตั้งค่ารีจิสทรีนักเทียบท่าสำหรับระบบบนเครือข่ายของคุณ
#Start with a clean install of ubuntu 22.04.x HWE Kernal server. Just add openssh. sudo apt update && sudo apt upgrade -y && sudo apt dist-upgrade -y && sudo apt install update-manager-core -y #if you did not install HWE kernal do the following sudo apt install --install-recommends linux-generic-hwe-22.04 -y sudo reboot #install the drivers. sudo apt install build-essential -y sudo add-apt-repository ppa:graphics-drivers/ppa -y sudo apt update # to search for available NVIDIA drivers: use this command sudo apt search nvidia-driver | grep nvidia-driver | sort -r sudo apt install nvidia-driver-560 -y # assuming the latest is 560 #Remove unattended-upgrades Package so that the dirver don't upgrade when you have clients sudo apt purge --auto-remove unattended-upgrades -y sudo systemctl disable apt-daily-upgrade.timer sudo systemctl mask apt-daily-upgrade.service sudo systemctl disable apt-daily.timer sudo systemctl mask apt-daily.service # This is needed to remove xserver and genome if you started with ubunut desktop. clients can't run a desktop gui in an continer wothout if you have a xserver. bash -c 'sudo apt-get update; sudo apt-get -y upgrade; sudo apt-get install -y libgtk-3-0; sudo apt-get install -y xinit; sudo apt-get install -y xserver-xorg-core; sudo apt-get remove -y gnome-shell; sudo update-grub; sudo nvidia-xconfig -a --cool-bits=28 --allow-empty-initial-configuration --enable-all-gpus' #if Ubuntu is installed to a SSD and you plan to have the vast client data stored on a nvme follow the below instructions. #WARRNING IF YOUR OS IS ON /dev/nvme0n1 IT WILL BE WIPED. CHECK TWICE change this device to the intended device name that you pan to use. # this is one command that will create the xfs partion and write it to the disk /dev/nvme0n1. echo -e "nnnnnnnwn" | sudo cfdisk /dev/nvme0n1 && sudo mkfs.xfs /dev/nvme0n1p1 sudo mkdir /var/lib/docker #I added discard so that the ssd is trimeds by ubunut and nofail if there is some problem with the drive the system will still boot. sudo bash -c 'uuid=$(sudo xfs_admin -lu /dev/nvme0n1p1 | sed -n "2p" | awk "{print $NF}"); echo "UUID=$uuid /var/lib/docker/ xfs rw,auto,pquota,discard,nofail 0 0" >> /etc/fstab' sudo mount -a # check that /dev/nvme0n1p1 is mounted to /var/lib/docker/ df -h #this will enable Persistence mode on reboot so that the gpus can go to idle power when not used sudo bash -c '(crontab -l; echo "@reboot nvidia-smi -pm 1" ) | crontab -' #run the install command for vast sudo apt install python3 -y sudo wget https://console.vast.ai/install -O install; sudo python3 install YourKey; history -d $((HISTCMD-1)); GRUB_CMDLINE_LINUX="amd_iommu=on nvidia_drm.modeset=0 systemd.unified_cgroup_hierarchy=false" #only run this command if you plan to support VM's on your machines. read vast guide to understand more https://vast.ai/docs/hosting/vms sudo bash -c 'sed -i "/^GRUB_CMDLINE_LINUX=""/s/""/"amd_iommu=on nvidia_drm.modeset=0"/" /etc/default/grub && update-grub' update-grub #if you get nvml error then run this sudo wget https://raw.githubusercontent.com/jjziets/vasttools/main/nvml_fix.py sudo python3 nvml_fix.py sudo reboot #follow the Configure Networking instructions as per https://console.vast.ai/host/setup #test the ports with running sudo nc -l -p port on the host machine and use https://portchecker.co to verify sudo bash -c 'echo "40000-40019" > /var/lib/vastai_kaalia/host_port_range' sudo reboot #After reboot, check that the drive is mounted to /var/lib/docker and that your systems show up on the vast dashboard. df -h # look for /var/lib/docker mount sudo systemctl status vastai sudo systemctl status docker
คุณสามารถดำเนินการทดสอบต่อไปนี้เพื่อให้แน่ใจว่าเครื่องใหม่ของคุณจะอยู่ในรายชื่อการทดสอบเพื่อการตรวจสอบ หากผ่าน มีโอกาสสูงที่เครื่องของคุณจะมีสิทธิ์รับการตรวจสอบ อย่าว่าเราเตอร์ของคุณจำเป็นต้องอนุญาตการวนกลับหากคุณเรียกใช้จากเครื่องบนเครือข่ายเดียวกันกับเครื่องที่คุณต้องการทดสอบ หากคุณไม่ทราบวิธีเปิดใช้งานลูปแบ็ค จะเป็นการดีกว่าหากเรียกใช้บน VM จากผู้ให้บริการคลาวด์หรือด้วยการเชื่อมต่อมือถือกับพีซีของคุณ
สคริปต์ autoverify_machineid.sh
เป็นส่วนหนึ่งของชุดเครื่องมือที่ออกแบบมาเพื่อทำให้การทดสอบเครื่องจักรในตลาด Vast.ai เป็นไปโดยอัตโนมัติ สคริปต์นี้จะทดสอบเครื่องเดียวโดยเฉพาะเพื่อดูว่าตรงตามข้อกำหนดขั้นต่ำที่จำเป็นสำหรับการตรวจสอบเพิ่มเติมหรือไม่
ก่อนที่คุณจะเริ่มใช้ ./autoverify_machineid.sh
ตรวจสอบให้แน่ใจว่าคุณมีสิ่งต่อไปนี้:
อินเทอร์เฟซบรรทัดคำสั่ง Vast.ai (vastcli) : เครื่องมือนี้ใช้เพื่อโต้ตอบกับแพลตฟอร์ม Vast.ai
รายการ Vast.ai : เครื่องควรอยู่ในรายการในตลาดที่กว้างใหญ่
Ubuntu OS : สคริปต์ได้รับการออกแบบให้ทำงานบน Ubununt 20.04 หรือใหม่กว่า
ดาวน์โหลดและติดตั้ง vastcli
:
ดาวน์โหลดเครื่องมือ Vast.ai CLI โดยใช้คำสั่งต่อไปนี้:
wget https://raw.githubusercontent.com/vast-ai/vast-python/master/vast.py -O กว้างใหญ่ chmod +x กว้างใหญ่
ตั้งค่าคีย์ Vast.ai API ของคุณ:
./ ชุด api-key ขนาดใหญ่ 6189d1be9f15ad2dced0ac4e3dfd1f648aeb484d592e83d13aaf50aee2d24c07
ดาวน์โหลด autoverify_machineid.sh :
ใช้ wget เพื่อดาวน์โหลด autoverify_machineid.sh ไปยังเครื่องของคุณ:
wget https://github.com/jjziets/VastVerification/releases/download/0.4-beta/autooverify_machineid.sh
ทำให้สคริปต์ทำงานได้ :
เปลี่ยนการอนุญาตของสคริปต์หลักเพื่อให้สามารถเรียกใช้งานได้:
chmod +x ตรวจสอบอัตโนมัติ_machineid.sh
การพึ่งพาอาศัยกัน
apt update apt install bc jq
รันสิ่งต่อไปนี้เพื่อติดตั้งแพ็คเกจที่จำเป็น
./autoverify_machineid.sh
ตรวจสอบข้อกำหนดของเครื่อง :
สคริปต์ ./autoverify_machineid.sh
ได้รับการออกแบบมาเพื่อทดสอบว่าเครื่องเดียวมีคุณสมบัติตรงตามข้อกำหนดขั้นต่ำสำหรับการตรวจสอบหรือไม่ สิ่งนี้มีประโยชน์สำหรับโฮสต์ที่ต้องการตรวจสอบเครื่องของตนเอง
หากต้องการทดสอบเครื่องเฉพาะด้วย machine_id
ให้ใช้คำสั่งต่อไปนี้:
./autoverify_machineid.sh
แทนที่
ด้วย ID ที่แท้จริงของเครื่องที่คุณต้องการทดสอบ
หากต้องการละเว้นการตรวจสอบข้อกำหนด :
./autoverify_machineid.sh --ignore-requirements
คำสั่งนี้รันการทดสอบสำหรับเครื่อง โดยไม่คำนึงว่าจะเป็นไปตามข้อกำหนดขั้นต่ำหรือไม่
การบันทึกความคืบหน้าและผลลัพธ์ :
สคริปต์บันทึกความคืบหน้าและผลลัพธ์ของการทดสอบ
ผลลัพธ์ที่สำเร็จและเครื่องที่ผ่านข้อกำหนดจะถูกบันทึกไว้ใน Pass_testresults.log
เครื่องที่ไม่ตรงตามข้อกำหนดหรือพบข้อผิดพลาดระหว่างการทดสอบจะถูกบันทึกไว้ใน Error_testresults.log
ทำความเข้าใจกับบันทึก :
Pass_testresults.log
: ไฟล์นี้มีรายการสำหรับเครื่องที่ผ่านการทดสอบทั้งหมดสำเร็จ
Error_testresults.log
: ไฟล์นี้มีรายการสำหรับเครื่องที่ไม่ตรงตามข้อกำหนดขั้นต่ำหรือพบข้อผิดพลาดระหว่างการทดสอบ
ต่อไปนี้คือวิธีที่คุณสามารถรันสคริปต์ autoverify_machineid.sh
เพื่อทดสอบเครื่องด้วย machine_id
10921:
./autoverify_machineid.sh 10921
ปัญหาเกี่ยวกับคีย์ API : ตรวจสอบให้แน่ใจว่าคีย์ API ของคุณได้รับการตั้งค่าอย่างถูกต้องโดยใช้ ./vast set api-key
Permission Denied : หากคุณประสบปัญหาการอนุญาต ตรวจสอบให้แน่ใจว่าไฟล์สคริปต์มีสิทธิ์ในการปฏิบัติการ ( chmod +x
)
ปัญหาการเชื่อมต่อ : ตรวจสอบการเชื่อมต่อเครือข่ายของคุณและให้แน่ใจว่า Vast.ai CLI สามารถสื่อสารกับเซิร์ฟเวอร์ Vast.ai ได้
เมื่อทำตามคำแนะนำนี้ คุณจะสามารถใช้สคริปต์ ./autoverify_machineid.sh
เพื่อทดสอบเครื่องแต่ละเครื่องในตลาด Vast.ai กระบวนการนี้ช่วยให้แน่ใจว่าเครื่องจักรมีคุณสมบัติตรงตามข้อกำหนดที่จำเป็นสำหรับ GPU และประสิทธิภาพของระบบ ทำให้เป็นผู้สมัครสำหรับการตรวจสอบเพิ่มเติมและการใช้งานในตลาด
หากคุณกำลังประสบปัญหากับเครื่องของคุณไม่แสดงความเร็วในการอัพโหลดและดาวน์โหลดอย่างถูกต้อง
ตรวจสอบก่อนว่ามีปัญหาหรือไม่โดยบังคับให้ทดสอบความเร็วทำงาน
cd /var/lib/vastai_kaalia ./send_mach_info.py --speedtest
ผลลัพธ์ควรมีลักษณะเช่นนี้
2024-10-03 08:50:04.587469 os version running df checking errors nvidia-smi 560035003 /usr/bin/fio checking speedtest /usr/bin/speedtest speedtest running speedtest on random server id 19897 {"type":"result","timestamp":"2024-10-03T08:50:24Z","ping":{"jitter":0.243,"latency":21.723,"low":21.526,"high":22.047},"download":{"bandwidth":116386091,"bytes":1010581968,"elapsed":8806,"latency":{"iqm":22.562,"low":20.999,"high":296.975,"jitter":3.976}},"upload":{"bandwidth":116439919,"bytes":980885877,"elapsed":8508,"latency":{"iqm":36.457,"low":6.852,"high":349.495,"jitter":34.704}},"packetLoss":0,"isp":"Vox Telecom","interface":{"internalIp":"192.168.1.101","name":"bond0","macAddr":"F2:6A:67:0C:85:8B","isVpn":false,"externalIp":"41.193.204.66"},"server":{"id":19897,"host":"speedtest.wibernet.co.za","port":8080,"name":"Wibernet","location":"Cape Town","country":"South Africa","ip":"102.165.64.110"},"result":{"id":"18bb02e4-466d-43dd-b1fc-3f106319a9f6","url":"https://www.speedtest.net/result/c/18bb02e4-466d-43dd-b1fc-3f106319a9f6","persisted":true}} ....
หากการทดสอบความเร็วข้างต้นไม่ได้ผล คุณสามารถลองติดตั้งอันอื่นที่ใหม่กว่าได้ เนื่องจากเอาต์พุตการทดสอบความเร็วที่ใหม่กว่าไม่มีรูปแบบเดียวกัน สคริปต์จะแปลเพื่อให้ Vast สามารถใช้การทดสอบความเร็วใหม่ได้ คำสั่งทั้งหมดรวมกัน
bash -c "sudo apt-get install curl -y && sudo curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash && sudo apt-get install speedtest -y && sudo apt install python3 -y && cd /var/lib/vastai_kaalia/latest && sudo mv speedtest-cli speedtest-cli.old && sudo wget -O speedtest-cli https://raw.githubusercontent.com/jjziets/vasttools/main/speedtest-cli.py && sudo chmod +x speedtest-cli"
หรือทีละขั้นตอน
sudo apt-get install curl sudo curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash sudo apt-get install speedtest -y sudo apt install python3 -y cd /var/lib/vastai_kaalia/latest sudo mv speedtest-cli speedtest-cli.old sudo wget -O speedtest-cli https://raw.githubusercontent.com/jjziets/vasttools/main/speedtest-cli.py sudo chmod +x speedtest-cli
นี่เป็นการอัปเดตการทดสอบความเร็วของคุณเป็นเวอร์ชันที่ใหม่กว่าและแปลผลลัพธ์เพื่อให้ Vast Demon สามารถใช้งานได้ หากตอนนี้ความเร็วช้าลง ให้ทำตามนี้
## If migrating from prior bintray install instructions please first... # sudo rm /etc/apt/sources.list.d/speedtest.list # sudo apt-get update # sudo apt-get remove speedtest -y ## Other non-official binaries will conflict with Speedtest CLI # Example how to remove using apt-get # sudo apt-get remove speedtest-cli sudo apt-get install curl curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash sudo apt-get install speedtest
ระบบตรวจสอบ Prometheus Grafana ส่งการแจ้งเตือนและติดตามตัวชี้วัดทั้งหมดที่เกี่ยวข้องกับอุปกรณ์ของคุณ และยังติดตามรายได้และค่าเช่าอีกด้วย https://github.com/jjziets/DCMontoring
เรียกใช้สคริปต์ด้านล่างหากคุณมีปัญหากับตัวติดตั้งจำนวนมากในข้อผิดพลาด 22,24 และ nvml สคริปต์นี้อิงตาม Bo26fhmC5M ดังนั้นให้เครดิตกับเขา
sudo wget https://raw.githubusercontent.com/jjziets/vasttools/main/nvml_fix.py sudo หลาม nvml_fix.py
หากคุณมีข้อความแสดงข้อผิดพลาดสีแดงบนเครื่องของคุณซึ่งคุณยืนยันว่าได้รับการแก้ไขแล้ว การลบ /var/lib/vastai_kaalia/kaalia.log และรีบูตอาจช่วยได้
sudo rm /var/lib/vastai_kaalia/kaalia.log sudo systemctl restart vastai
หากคุณไม่ต้องการตั้งค่าแดชบอร์ด Analytics และเพียงต้องการดู Temps ทั้งหมดบน GPU ของคุณ คุณสามารถใช้เครื่องมือด้านล่าง
sudo wget https://github.com/jjziets/gddr6_temps/raw/master/nvml_direct_access sudo chmod +x nvml_direct_access sudo ./nvml_direct_access
การตั้งค่า OC ของ RTX 3090 จะต้องมีดังต่อไปนี้
บนโฮสต์ให้รันคำสั่งต่อไปนี้:
sudo apt-get install libgtk-3-0 && sudo apt-get install xinit && sudo apt-get install xserver-xorg-core && sudo update-grub && sudo nvidia-xconfig -a --cool-bits=28 --allow-empty-initial-configuration --enable-all-gpus wget https://raw.githubusercontent.com/jjziets/vasttools/main/set_mem.sh sudo chmod +x set_mem.sh sudo ./set_mem.sh 2000 # this will set the memory OC to +1000mhs on all the gpus. You can use 3000 on some gpu's which will give 1500mhs OC.
ตั้งค่าโปรแกรมตรวจสอบที่จะเปลี่ยนหน่วยความจำ oc ตามโปรแกรมที่กำลังทำงานอยู่ ออกแบบมาสำหรับ RTX3090 และกำหนดเป้าหมายไปที่นักขุดแร่ในขั้นตอนนี้ ต้องใช้ทั้ง set_mem.sh และ ocmonitor.sh เพื่อรันในรูท
wget https://raw.githubusercontent.com/jjziets/vasttools/main/ocminitor.sh sudo chmod +x ocminitor.sh sudo ./ocminitor.sh # I suggest running this in tmux or screen so that when you close the ssh connetion. It looks for ethminer and if it finds it it will set the oc based on your choice. you can also set powerlimits with nvidia-smi -pl 350
หากต้องการโหลดเมื่อรีบูตให้ใช้ crontab ด้านล่าง
sudo (crontab -l; echo "@reboot screen -dmS ocmonitor /home/jzietsman/ocminitor.sh") | crontab - #replace the user with your user
การขุดไม่ได้เน้นย้ำระบบของคุณเหมือนกับภาระงานของ Python ดังนั้นนี่จึงเป็นการทดสอบที่ดีในการทำงานเช่นกัน
ขั้นแรก ให้ตั้งค่าช่วงเวลาการบำรุงรักษา จากนั้นเมื่อคุณไม่มีไคลเอ็นต์ทำงานอยู่ คุณสามารถทำการทดสอบภาวะวิกฤตได้
https://github.com/jjziets/pytorch-benchmark-volta
สามารถดูการทดสอบความเครียดชุดเต็มได้ docker image jjziets/vastai-benchmarks:latest ในโฟลเดอร์ /app/
stress-ng - CPU stress stress-ng - Drive stress stress-ng - Memory stress sysbench - Memory latency and speed benchmark dd - Drive speed benchmark Hashcat - Benchmark bandwithTest - GPU bandwith benchmark pytorch - Pytorch DL benchmark
#test หรือ bash interface
sudo docker run --shm-size 1G --rm -it --gpus all jjziets/vastai-benchmarks /bin/bash apt update && apt upgrade -y ./benchmark.sh
#Run โดยใช้การตั้งค่าเริ่มต้น ผลลัพธ์จะถูกบันทึกไปที่ ./output
sudo docker run -v ${PWD}/output:/app/output --shm-size 1G --rm -it --gpus all jjziets/vastai-benchmarks Run with params SLEEP_TIME/BENCH_TIME sudo docker run -v ${PWD}/output:/app/output --shm-size 1G --rm -it -e SLEEP_TIME=2 -e BENCH_TIME=2 --gpus all jjziets/vastai-benchmarks
คุณยังสามารถทดสอบการเบิร์น GPU ได้ด้วย
sudo docker run --gpus all --rm oguzpastirmaci/gpu-burn
หากคุณต้องการรันสำหรับ GPU ตัวเดียว ให้รันคำสั่งด้านล่าง โดยแทนที่ x ด้วยหมายเลข GPU โดยเริ่มต้นที่ 0
sudo docker run --gpus '"device=x"' --rm oguzpastirmaci/gpu-burn
*อ้างอิงจาก Leona / Vast.ai-tools
นี่คือชุดสคริปต์สำหรับตรวจสอบการขัดข้องของเครื่อง รันไคลเอนต์บนเครื่องอันกว้างใหญ่ของคุณและเซิร์ฟเวอร์บนเครื่องระยะไกล คุณจะได้รับการแจ้งเตือนทาง Telegram หากไม่มีการส่งการเต้นของหัวใจภายในระยะหมดเวลา (ค่าเริ่มต้น 12 วินาที) https://github.com/jjziets/Telegram-Vast-Uptime-Bot
อิงตาม RTX 3090 120Mhs สำหรับ eth มันกำหนดราคาของโฮสต์ 2 ตัวของฉัน ใช้งานได้กับ Vast-cli ที่กำหนดเองซึ่งสามารถพบได้ที่นี่ https://github.com/jjziets/vast-python/blob/master/vast.py ผู้จัดการอยู่ที่นี่ https://github.com/jjziets/vasttools/ หยด/main/setprice.sh
สิ่งนี้ควรจะทำงานบน vps ไม่ใช่บนโฮสต์ อย่าเปิดเผยคีย์ Vast API ของคุณโดยใช้บนโฮสต์
wget https://github.com/jjziets/vast-python/blob/master/vast.py sudo chmod +x vast.py ./vast.py set api-key UseYourVasset wget https://github.com/jjziets/vasttools/blob/main/setprice.sh sudo chmod +x setprice.sh
วิธีที่ดีที่สุดในการจัดการงานว่างของคุณคือผ่าน cli อันกว้างใหญ่ ตามความรู้ของฉัน งานตั้งค่า GUI ใช้งานไม่ได้ ดังนั้นในการตั้งค่างานที่ไม่ได้ใช้งานให้ทำตามขั้นตอนต่อไปนี้ คุณจะต้องดาวน์โหลด wide cli และรันคำสั่งต่อไปนี้ แนวคิดคือการเช่าตัวเองเป็นงานที่ขัดจังหวะได้ cli ขนาดใหญ่ช่วยให้คุณสามารถตั้งค่างานที่ไม่ได้ใช้งานหนึ่งงานสำหรับ GPU ทั้งหมดหรือหนึ่ง GPU ต่ออินสแตนซ์ คุณยังสามารถตั้งค่าวิธีการเชื่อมต่อ SSH หรือวิธีอื่นใดก็ได้ ไปที่ https://cloud.vast.ai/cli/ และติดตั้ง cli flavour ของคุณ
ตั้งค่ารหัสบัญชีของคุณเพื่อให้คุณสามารถใช้ cli อันกว้างใหญ่ได้ คุณได้รับรหัสนี้จากหน้าบัญชีของคุณ
./vast set api-key API_KEY
คุณสามารถใช้ SetIdleJob.py scrip ของฉันเพื่อตั้งค่างานว่างของคุณตามราคาขั้นต่ำที่ตั้งไว้ในเครื่องของคุณ
wget https://raw.githubusercontent.com/jjziets/vasttools/main/SetIdleJob.py
นี่คือตัวอย่างวิธีที่ฉันขุดไปยัง nicehash
python3 SetIdleJob.py --args 'env | grep _ >> /etc/environment; echo "starting up"; apt -y update; apt -y install wget; apt -y install libjansson4; apt -y install xz-utils; wget https://github.com/develsoftware/GMinerRelease/releases/download/3.44/gminer_3_44_linux64.tar.xz; tar -xvf gminer_3_44_linux64.tar.xz; while true; do ./miner --algo kawpow --server stratum+tcp://kawpow.auto.nicehash.com:9200 --user 3LNHVWvUEufL1AYcKaohxZK2P58iBHdbVH.${VAST_CONTAINERLABEL:2}; done'
หรือคำสั่งเต็มหากคุณไม่ต้องการใช้ค่าเริ่มต้น
python3 SetIdleJob.py --image nvidia/cuda:12.4.1-runtime-ubuntu22.04 --disk 16 --args 'env | grep _ >> /etc/environment; echo "starting up"; apt -y update; apt -y install wget; apt -y install libjansson4; apt -y install xz-utils; wget https://github.com/develsoftware/GMinerRelease/releases/download/3.44/gminer_3_44_linux64.tar.xz; tar -xvf gminer_3_44_linux64.tar.xz; while true; do ./miner --algo kawpow --server stratum+tcp://kawpow.auto.nicehash.com:9200 --user 3LNHVWvUEufL1AYcKaohxZK2P58iBHdbVH.${VAST_CONTAINERLABEL:2}; done' --api-key b149b011a1481cd852b7a1cf1ccc9248a5182431b23f9410c1537fca063a68b1
แก้ไขปัญหาคำสั่ง bash -c ของคุณโดยใช้บันทึกบนหน้าอินสแตนซ์
หรือคุณสามารถเช่าตัวเองด้วยคำสั่งต่อไปนี้ จากนั้นเข้าสู่ระบบและโหลดสิ่งที่คุณต้องการเรียกใช้ ตรวจสอบให้แน่ใจว่าได้เพิ่มกระบวนการของคุณไปที่ onstart.sh เพื่อเช่าตัวคุณเองก่อน ค้นหาเครื่องของคุณด้วยรหัสเครื่อง
./vast search offers "machine_id=14109 verified=any gpu_frac=1 " # gpu_frac=1 will give you the instance with all the gpus.
หรือ
./vast search offers -i "machine_id=14109 verified=any min_bid>0.1 num_gpus=1" # it will give you the instance with one GPU
เมื่อคุณมี off_id แล้ว และในกรณีนี้ การค้นหาด้วยสวิตช์ -i จะทำให้คุณได้รับ instance_id ที่สามารถขัดจังหวะได้
สมมติว่าคุณต้องการขุดด้วย lolminer
./vast create instance 9554646 --price 0.2 --image nvidia/cuda:12.0.1-devel-ubuntu20.04 --env '-p 22:22' --onstart-cmd 'bash -c "apt -y update; apt -y install wget; apt -y install libjansson4; apt -y install xz-utils; wget https://github.com/Lolliedieb/lolMiner-releases/releases/download/1.77b/lolMiner_v1.77b_Lin64.tar.gz; tar -xf lolMiner_v1.77b_Lin64.tar.gz -C ./; cd 1.77b; ./lolMiner --algo ETCHASH --pool etc.2miners.com:1010 --user 0xYour_Wallet_Goes_Here.VASTtest"' --ssh --direct --disk 100
โดยจะเริ่มอินสแตนซ์ที่ราคา 0.2
./vast show instances # will give you the list of instance ./vast change bid 9554646 --price 0.3 # This will change the price to 0.3 for the instance
นี่คือ repo ที่มีสองโปรแกรมและสคริปต์บางตัวที่คุณสามารถใช้เพื่อจัดการแฟน ๆ ของคุณ https://github.com/jjziets/GPU_FAN_OC_Manager/tree/main
bash -c "wget https://github.com/jjziets/GPU_FAN_OC_Manager/raw/main/set_fan_curve; chmod +x set_fan_curve; CURRENT_PATH=$(pwd); nohup bash -c "while true; do $CURRENT_PATH/set_fan_curve 65; sleep 1; done" > output.txt & (crontab -l; echo "@reboot screen -dmS gpuManger bash -c 'while true; do $CURRENT_PATH/set_fan_curve 65; sleep 1; done'") | crontab -"
หากระบบของคุณอัปเดตในขณะที่ Vasant กำลังทำงานอยู่หรือแย่กว่านั้นเมื่อมีลูกค้าเช่าคุณ คุณอาจถูกยกเลิกการตรวจสอบหรือถูกแบน ขอแนะนำให้อัปเดตเมื่อระบบไม่ได้เช่าและเพิกถอนเท่านั้น ทางที่ดีที่สุดคือกำหนดวันที่สิ้นสุดรายการของคุณและดำเนินการอัปเดตและอัปเกรดในขั้นตอนนั้น หากต้องการหยุดการอัพเกรดแบบอัตโนมัติให้รันคำสั่งต่อไปนี้
sudo apt purge --auto-remove unattended-upgrades -y sudo systemctl disable apt-daily-upgrade.timer sudo systemctl mask apt-daily-upgrade.service sudo systemctl disable apt-daily.timer sudo systemctl mask apt-daily.service
เมื่อระบบไม่ได้ใช้งานและถูกเพิกถอนให้รันคำสั่งต่อไปนี้ บริการปีศาจและนักเทียบท่าจำนวนมหาศาลหยุดลง เป็นความคิดที่ดีที่จะอัพเกรดไดรเวอร์ของ Nvidia เช่นนี้ หากคุณไม่ทำเช่นนั้นและการอัพเกรดจะทำให้แพ็คเกจเสียหาย คุณอาจถูกยกเลิกการตรวจสอบหรือถูกแบนจากบริษัทมากมาย
bash -c ' sudo systemctl stop vastai; sudo systemctl stop docker.socket; sudo systemctl stop docker; sudo apt update; sudo apt upgrade -y; sudo systemctl start docker.socket ; sudo systemctl start docker; sudo systemctl start vastai'
คู่มือนี้จะแสดงวิธีสำรองข้อมูล Vastai Docker จากไดรฟ์ที่มีอยู่และถ่ายโอนไปยังไดรฟ์ใหม่ ในกรณีนี้คือไดรเวอร์การโจมตี /dev/md0
ไม่มีลูกค้าทำงานอยู่และคุณไม่ได้อยู่ในรายชื่อจากตลาดอันกว้างใหญ่
ข้อมูลนักเทียบท่ามีอยู่ในไดรฟ์ปัจจุบัน
ติดตั้งเครื่องมือที่จำเป็น :
sudo apt install pv pixz
หยุดและปิดการใช้งานบริการที่เกี่ยวข้อง :
sudo systemctl stop vastai docker.socket docker sudo systemctl disable vastai docker.socket docker
สำรองข้อมูลไดเร็กทอรี Docker : สร้างการสำรองข้อมูลแบบบีบอัดของไดเร็กทอรี /var/lib/docker
ตรวจสอบให้แน่ใจว่ามีพื้นที่ว่างเพียงพอบนไดรฟ์ระบบปฏิบัติการสำหรับการสำรองข้อมูลนี้ หรือย้ายข้อมูลไปยังเซิร์ฟเวอร์สำรอง ดูhttps://github.com/jjziets/vasttools/blob/main/README.md#backup-varlibdocker-to-another-machine-on-your-network
sudo tar -c -I 'pixz -k -1' -f ./docker.tar.pixz /var/lib/docker | pv #you can change ./ to a destination directory
หมายเหตุ: pixz
ใช้หลายคอร์เพื่อการบีบอัดที่รวดเร็วยิ่งขึ้น
ถอนติดตั้งไดเรกทอรี Docker : หากคุณวางแผนที่จะปิดระบบและติดตั้งไดรฟ์ใหม่:
sudo umount /var/lib/docker
อัปเดต /etc/fstab
: ปิดใช้งานการติดตั้งไดเร็กทอรี Docker ปัจจุบันโดยอัตโนมัติเมื่อเริ่มต้นระบบเพื่อป้องกันปัญหาการบู๊ต:
sudo nano /etc/fstab
ใส่เครื่องหมายความคิดเห็นในบรรทัดที่เกี่ยวข้องกับ /var/lib/docker
โดยเพิ่ม #
ที่จุดเริ่มต้นของบรรทัด
แบ่งพาร์ติชันไดรฟ์ใหม่ : (ปรับชื่ออุปกรณ์ตามระบบของคุณ คำแนะนำใช้ /dev/md0
สำหรับ RAID และ /dev/nvme0n1
สำหรับไดรฟ์ NVMe เป็นตัวอย่าง)
sudo cfdisk /dev/md0
ฟอร์แมตพาร์ติชันใหม่ด้วย XFS :
sudo mkfs.xfs -f /dev/md0p1
รับ UUID : คุณจะต้องมี UUID /etc/fstab
เพื่ออัปเดต
sudo xfs_admin -lu /dev/md0p1
อัปเดต /etc/fstab
ด้วย New Drive :
sudo nano /etc/fstab
เพิ่มบรรทัดต่อไปนี้ (แทนที่ UUID ด้วยบรรทัดที่คุณดึงมา):
UUID="YOUR_UUID_HERE" /var/lib/docker xfs rw,auto,pquota,discard,nofail 0 0
เมานต์พาร์ติชันใหม่ :
sudo mount -a
ยืนยันการเมานต์:
df -h
ตรวจสอบให้แน่ใจว่า /dev/md0p1
(หรือชื่ออุปกรณ์ที่เหมาะสม) ถูกเมาท์เข้ากับ /var/lib/docker
กู้คืนข้อมูล Docker : นำทางไปยังไดเร็กทอรีราก:
ซีดี /
คลายการบีบอัดและกู้คืน: ตรวจสอบให้แน่ใจว่าได้เปลี่ยนผู้ใช้เป็นชื่อที่เกี่ยวข้อง
sudo cat /home/user/docker.tar.pixz | pv | sudo tar -x -I 'pixz -d -k'
เปิดใช้บริการ :
sudo systemctl enable vastai docker.socket docker
รีบูต :
sudo reboot
ตรวจสอบว่าไดรฟ์ที่ต้องการติดตั้งอยู่ที่ /var/lib/docker
หรือไม่ และตรวจดูให้แน่ใจว่า vastai
ทำงานได้
/var/lib/docker
ไปยังเครื่องอื่นบนเครือข่ายของคุณ หากคุณต้องการย้ายการตั้งค่า Docker ไปยังเครื่องอื่น ไม่ว่าจะเป็นการเปลี่ยนไดรฟ์หรือการตั้งค่า RAID ให้ทำตามคำแนะนำนี้ ในตัวอย่างนี้ เราจะถือว่าที่อยู่ IP ของเซิร์ฟเวอร์สำรองคือ 192.168.1.100
เปิดใช้งานการเข้าสู่ระบบ Root SSH ชั่วคราว : จำเป็นอย่างยิ่งที่จะต้องแน่ใจว่าการสื่อสาร SSH อย่างต่อเนื่องในระหว่างกระบวนการสำรองข้อมูล โดยเฉพาะอย่างยิ่งเมื่อถ่ายโอนไฟล์ขนาดใหญ่ เช่น ข้อมูล Docker ที่ถูกบีบอัด ก. เปิดการกำหนดค่า SSH:
sudo nano /etc/ssh/sshd_config
ข. ค้นหาและเปลี่ยนบรรทัด:
PermitRootLogin no
ถึง:
PermitRootLogin yes
ค. โหลดการกำหนดค่า SSH อีกครั้ง:
sudo systemctl restart sshd
สร้างคีย์ SSH และถ่ายโอนไปยังเซิร์ฟเวอร์สำรอง : สร้างคีย์ SSH:
sudo ssh-keygen
ข. คัดลอกคีย์ SSH ไปยังเซิร์ฟเวอร์สำรอง:
sudo ssh-copy-id -i ~/.ssh/id_rsa [email protected]
ปิดการใช้งานการรับรองความถูกต้องรหัสผ่านรูท : ตรวจสอบให้แน่ใจว่าสามารถใช้คีย์ SSH เท่านั้นสำหรับการเข้าสู่ระบบรูท ช่วยเพิ่มความปลอดภัย ก. แก้ไขการกำหนดค่า SSH:
sudo nano /etc/ssh/sshd_config
ข. เปลี่ยนบรรทัดเป็น:
PermitRootLogin ห้ามใช้รหัสผ่าน
ค. โหลดการกำหนดค่า SSH อีกครั้ง:
sudo systemctl restart sshd
การเตรียมการสำรองข้อมูล : ก่อนการสำรองข้อมูล ตรวจสอบให้แน่ใจว่าบริการที่เกี่ยวข้องถูกระงับ:
sudo systemctl stop docker.socket sudo systemctl stop docker sudo systemctl stop vastai sudo systemctl disable vastai sudo systemctl disable docker.socket sudo systemctl disable docker
ขั้นตอนการสำรองข้อมูล : ขั้นตอนนี้จะบีบอัดไดเร็กทอรี /var/lib/docker
และถ่ายโอนไปยังเซิร์ฟเวอร์สำรองข้อมูล ก. สลับไปใช้ผู้ใช้รูทและติดตั้งเครื่องมือที่จำเป็น:
sudo su apt install pixz apt install pv
เป็นความคิดที่ดีที่จะรันคำสั่ง backup ใน tmux หรือ screen เพื่อที่ว่าหากคุณสูญเสียการเชื่อมต่อ ssh กระบวนการจะเสร็จสิ้น ข. ทำการสำรองข้อมูล:
tar -c -I 'pixz -k -0' -f - /var/lib/docker | pv | ssh [email protected] "cat > /mnt/backup/machine/docker.tar.pixz"
การคืนค่าข้อมูลสำรอง : ตรวจสอบให้แน่ใจว่าไดรฟ์ใหม่ของคุณติดตั้งอยู่ที่ /var/lib/docker
ก. สลับไปยังผู้ใช้รูท:
sudo su
ข. กู้คืนจากข้อมูลสำรอง:
cd / ssh [email protected] "cat /mnt/backup/machine/docker.tar.pixz" | pv | sudo tar -x -I 'pixz -d -k'
เปิดใช้งานบริการอีกครั้ง :
sudo systemctl enable vastai sudo systemctl enable docker.socket sudo systemctl enable docker sudo reboot
หลังรีบูต : ตรวจสอบให้แน่ใจว่าไดรฟ์เป้าหมายของคุณติดตั้งอยู่ที่ /var/lib/docker
และ vastai
นั้นใช้งานได้
การใช้อินสแตนซ์ที่มีพอร์ตเปิด หากจอแสดงผลมีความลึกของสีเป็น 16 ไม่ใช่ 16 บิต ให้ลองใช้โปรแกรมดู vnc ตัวอื่น TightVNC ทำงานให้ฉันบน windows
ขั้นแรกให้บอกเวสท์ให้เข้ายึดท่าเรือ ใช้ -p 8081:8081 และทำเครื่องหมายที่คำสั่ง direct
หาโฮสต์ที่มีพอร์ตเปิดแล้วเช่า โดยเฉพาะอย่างยิ่งตามความต้องการ ไปที่หน้าอินสแตนซ์ไคลเอนต์และรอปุ่มเชื่อมต่อ
ใช้ ssh เพื่อเชื่อมต่อกับอินสแตนซ์
รันคำสั่งด้านล่าง ส่วนที่สองสามารถวางไว้ใน onstart.sh เพื่อรันเมื่อรีสตาร์ท
bash -c 'apt-get update; apt-get -y upgrade; apt-get install -y x11vnc; apt-get install -y xvfb; apt-get install -y firefox;apt-get install -y xfce4;apt-get install -y xfce4-goodies' export DISPLAY=:20 Xvfb :20 -screen 0 1920x1080x16 & x11vnc -passwd TestVNC -display :20 -N -forever -rfbport 8081 & startxfce4
ในการเชื่อมต่อให้ใช้ ip ของโฮสต์และพอร์ตที่ให้มา ในกรณีนี้คือ 400010
จากนั้นเพลิดเพลินไปกับเดสคอป น่าเศร้าที่นี่ไม่ใช่การเร่งด้วยฮาร์ดแวร์ ดังนั้นจะไม่มีเกมใดทำงาน
เราจะใช้ ghcr.io/ehfd/nvidia-glx-desktop:latest
ใช้พารามิเตอร์ env นี้
-e TZ=UTC -e SIZEW=1920 -e SIZEH=1080 -e REFRESH=60 -e DPI=96 -e CDEPTH=24 -e VIDEO_PORT=DFP -e PASSWD=mypasswd -e WEBRTC_ENCODER=nvh264enc -e BASIC_AUTH_PASSWORD=mypasswd -p 8080:8080
ค้นหาระบบที่มีพอร์ตเปิด
เมื่อโหลดเสร็จแล้วให้คลิกเปิด
ชื่อผู้ใช้คือ ผู้ใช้ และรหัสผ่านคือสิ่งที่คุณตั้ง mypasswd ในกรณีนี้
กดเริ่ม
สภาพแวดล้อมเดสก์ท็อปแบบเร่งความเร็ว 3 มิติในเว็บเบราว์เซอร์
วิธีนี้จะช่วยลดจำนวนคำขอดึงจาก IP สาธารณะของคุณ นักเทียบท่าถูกจำกัดไว้ที่ 100 ครั้งต่อ 6 ชั่วโมงสำหรับการเข้าสู่ระบบโดยไม่ระบุชื่อ และสามารถช่วยเร่งเวลาเริ่มต้นสำหรับการเช่าของคุณได้ คู่มือนี้จะให้คำแนะนำเกี่ยวกับวิธีตั้งค่าเซิร์ฟเวอร์รีจิสทรี Docker โดยใช้ Docker Compose รวมถึงการกำหนดค่าไคลเอ็นต์ Docker เพื่อใช้รีจิสทรีนี้ ข้อกำหนดเบื้องต้น Docker และ Docker Compose ได้รับการติดตั้งบนเซิร์ฟเวอร์ที่มีพื้นที่จัดเก็บข้อมูลที่รวดเร็วจำนวนมากบน LAN ภายในเครื่องของคุณ มีการติดตั้ง Docker บนเครื่องไคลเอนต์ทั้งหมด
การตั้งค่า Docker Registry Server ให้ติดตั้ง docker-compose หากคุณยังไม่ได้ติดตั้ง
sudo su curl -L "https://github.com/docker/compose/releases/download/v2.24.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose apt-get update && sudo apt-get install -y gettext-base
สร้างไฟล์ docker-compose.yml: สร้างไฟล์ชื่อ docker-compose.yml บนเซิร์ฟเวอร์ของคุณโดยมีเนื้อหาดังต่อไปนี้:
version: '3' services: registry: restart: unless-stopped image: registry:2 ports: - 5000:5000 environment: - REGISTRY_PROXY_REMOTEURL=https://registry-1.docker.io - REGISTRY_STORAGE_DELETE_ENABLED="true" volumes: - data:/var/lib/registry volumes: data:
การกำหนดค่านี้ตั้งค่าเซิร์ฟเวอร์รีจิสทรี Docker ที่ทำงานบนพอร์ต 5000 และใช้ข้อมูลที่มีชื่อไดรฟ์ข้อมูลสำหรับจัดเก็บข้อมูล เริ่ม Docker Registry:
รันคำสั่งต่อไปนี้ในไดเร็กทอรีที่มีไฟล์ docker-compose.yml ของคุณ:
sudo docker-compose up -d
คำสั่งนี้จะติดดาว