Прикачване на блоково съхранение
Блоковите обеми за съхранение се прикрепват към екземпляри като допълнителни дискове. Трябва да прикачите тома към екземпляр, преди да може да се използва. Множество тома могат да б
Въведение
Официалната библиотека Vultr Go може да се използва за взаимодействие с API на Vultr . Vultr API ви позволява да контролирате ресурсите, свързани с вашия акаунт, включително сървъри, dns, защитна стена, моментни снимки, мрежа и др. Този урок ще даде въведение в използването на официалния клиент Go API, като създаде просто приложение за получаване на информация за вашите сървъри.
Предпоставки
Цели
Стъпка 1: Създаване на проекта
Първо, ще започнем със създаване на нов модул (проект). Обикновено бихте използвали URL адреса към хранилище за вашия код като име на модул, но това е извън обхвата на този урок. Засега ще използваме serverinfo като име на модула.
За да създадете проекта, изпълнете следните команди:
# Create the folder in the current directory. mkdir serverinfo # Enter the new folder. cd serverinfo # Initialize the module. go mod init serverinfo
Стъпка 2: Изтегляне на библиотеката
След това ще изтеглим библиотеката на API от GitHub (сайт за хостинг на кодове). За да изтеглите библиотеки, трябва да използвате go get
командата. Това автоматично ще изтегли библиотеката и нейните зависимости, докато я добавя към файла go.mod . В същия терминал, който отворихте по-рано, въведете следната команда:
go get github.com/vultr/govultr
Стъпка 3: Получаване на вашия API ключ
За да използвате API клиента, ще ви е необходим вашия API ключ. Можете да извлечете своя API ключ от раздела API на секцията Акаунт на вашето табло за управление . Ще трябва също да упълномощите своя IP адрес, за да използвате API ключа. Можете да намерите своя IP адрес, като отидете на ifconfig.me . Имайте предвид, че търсите своя публичен IP, а не частния. Вашият частен IP е това, което бихте намерили във вашите мрежови настройки на вашия компютър и е в един от следните диапазони CIDR: 10.0.0.0/8 , 172.16.0.0/12 или 192.168.0.0/16 .
След като получите своя IP адрес, добавете го в секцията Контрол на достъпа . В полето след / въведете 32
. /32
е значение на мрежова маска 255.255.255.255
. Това означава, че само вашият IP е включен в диапазона.
Предупреждение: Защитете своя API ключ, както бихте защитили паролата си. API ключът има достъп до целия ви акаунт, включително таксуване, сървъри и съхранение.
Стъпка 4: Създаване на програмния файл
Сега започваме да работим по програмата. Отворете папката, която създадохме в избрания от вас редактор, и създайте файл с име main.go
.
Във файла въведете или копирайте и поставете следния код:
package main import ( "context" "fmt" "os" "github.com/vultr/govultr" ) func main() { }
Най package main
казва Go, че ние сме за създаване на команда, а не библиотека. Инструкцията за импортиране декларира зависимостите, които ще използваме. func main()
е функцията, извикана, когато стартираме нашата програма.
Стъпка 5: Инициализация на API клиента
Следващата стъпка е да инициализирате API клиента. За да направим това, трябва да използваме функцията govultr.NewClient(http.Client, string) . Добавете следния код във функцията main() :
client := govultr.NewClient(nil, "YOURAPIKEY")
Заменете YOURAPIKEY
с API ключа, който сте изтеглили по-рано.
Нека разгледаме този код малко по-отблизо. От лявата страна на :=
, имаме client
. Това е името на променлива . Променливата съхранява стойности. От дясната страна имаме извикване на функция към govultr.NewClient . Първият параметър е нула, защото не е необходимо да променяме HTTP клиента по подразбиране. Вторият параметър е API ключът, който използваме, за да се удостоверим. На :=
оператора задава дясно към лявата страна, в този случай, в резултат на извикването на функция за client
.
Стъпка 6: Използване на API
Нашата програма все още не прави нищо. За да го направим полезен, ще извлечем информация за нашите сървъри от Vultr. Ще използваме функцията govultr.Client.Server.List(context.Context) ([]govultr.Server, грешка) . Добавете следния код в края на функцията main() :
servers, err := client.Server.List(context.Background()) if err != nil { fmt.Fprintf(os.Stderr, "Error: %v\n", err) os.Exit(1) }
В този код ние извикаме функцията на API, за да извлечем информацията за сървъра. Все още не се притеснявайте за значението на контекста , тъй като това е по-напреднала тема. Засега всичко, което трябва да знаем, е, че контекстът контролира как работи API клиентът. context.Background() връща празен контекст . След като извлечем информацията за сървъра в двете променливи, servers и err , проверяваме дали е имало грешка. Ако е така, уведомяваме потребителя за грешката и излизаме с код 1 (грешка).
Стъпка 7: Показване на информацията
Сега, когато имаме масив от сървъри в променливата на сървърите ( []govultr.Server ), всъщност можем да го покажем. Добавете следния код в края на функцията main() :
fmt.Println("Servers:") for _, server := range servers { fmt.Printf(" %s (%s) - %s - $%s pending charges - %.2f/%s GB bandwidth\n", server.Label, server.MainIP, server.Location, server.PendingCharges, server.CurrentBandwidth, server.AllowedBandwidth, ) }
Първо отпечатваме (показваме) заглавка, Servers:
. След това преминаваме през масива от сървъри , като игнорираме индекса, като го присвояваме на _
, и присвояваме текущия сървър на променливата на сървъра . В рамките на цикъла показваме етикета на сървъра, IP адреса, местоположението, предстоящите такси, текущата честотна лента и разрешената честотна лента. За да направим това ефективно, използваме форматни низове , низът, който изглежда като " %s (%s) - %s - $%s pending charges - %.2f/%s GB bandwidth\n"
. В %s
средствата за заместване на следващия низ, а %.2f
средствата за отпечатване (десетичен знак) на следващия поплавък закръглени до 2 знака след десетичната запетая. Останалата част от форматния низ се отпечатва буквално (както е).
Стъпка 8: Бягане
В този момент вашият код трябва да изглежда по следния начин:
package main import ( "context" "fmt" "os" "github.com/vultr/govultr" ) func main() { client := govultr.NewClient(nil, "YOURAPIKEY") servers, err := client.Server.List(context.Background()) if err != nil { fmt.Fprintf(os.Stderr, "Error: %v\n", err) os.Exit(1) } fmt.Println("Servers:") for _, server := range servers { fmt.Printf(" %s (%s) - %s - $%s pending charges - %.2f/%s GB bandwidth\n", server.Label, server.MainIP, server.Location, server.PendingCharges, server.CurrentBandwidth, server.AllowedBandwidth, ) } }
Сега можем да стартираме кода. Върнете се в терминала, който отворихме по-рано и въведете командата go run
. Резултатът ще прилича на следното:
Servers: server1 (198.51.100.4) - New Jersey - $3.70 pending charges - 17.64/1000 GB bandwidth server2 (198.51.100.9) - Toronto - $1.70 pending charges - 3.24/500 GB bandwidth
Ако получите грешка, уверете се, че вашият API ключ и IP адрес са правилни.
Заключение
В този момент ще сте научили успешно основите как да използвате официалния API клиент и ще сте написали програма, която ще показва информация за сървърите във вашия акаунт.
Допълнителни стъпки
От тук можете да направите много повече. Например, можете да напишете програма за предоставяне на нов сървър, когато нямате достатъчно памет. Можете да напишете приложение за автоматично надграждане на вашия сървър, когато имате ниска честотна лента или място за съхранение. Можете дори да напишете инструмент за автоматично актуализиране на DNS записи въз основа на текущия ви IP.
За повече информация относно библиотеката govultr, можете да намерите документацията на библиотеката govultr на godoc .
govultr е проект с отворен код . Ако откриете грешки в govultr, можете да докладвате за тях в GitHub . Можете също да допринесете директно за кода, като изпратите заявка за изтегляне .
Блоковите обеми за съхранение се прикрепват към екземпляри като допълнителни дискове. Трябва да прикачите тома към екземпляр, преди да може да се използва. Множество тома могат да б
VULTR наскоро направи промени от своя страна и вече всичко трябва да работи добре от кутията с активиран NetworkManager. Ако желаете да деактивирате
Изграждане на Windows ISO (само за сървърни версии) Вземете най-новите двоични драйвери VirtIO за Windows, пакетирани като ISO файл, оттук
При достъп до режим за възстановяване на Windows Server 2016 може да получите грешка при спиране (син екран). Решението е да получите достъп до опцията Repair Computer
Вероятно много хора ще използват своите Vultr VPS като уеб сървъри, добър избор би бил Nginx като уеб сървър. В тази тема ще опиша o
S3-съвместимо* съхранение на обекти вече е достъпно в облака Vultr. Нашата технология за съхранение на обекти е достъпна, мащабируема и лесна за интегриране във вас
Забележка: Това ръководство ще работи за екземпляри на Windows 2012 R2 и Windows 2016. Windows сървърите по подразбиране нямат активирана услугата Windows Audio.
Моля, използвайте следния шаблон, когато искате оторизация за BGP съобщения. ПИСМО ЗА РАЗРЕШЕНИЕ [ДАТА] До когото може да се отнася, Thi
Въведение във Vultr Reverse DNS За да добавите PTR или Reverse DNS запис за IP адреса на вашите инстанции, трябва да следвате стъпките, описани по-долу:
Vultr предлага безплатен DNS хостинг за домейни на клиенти. Сървърите на имена са в мрежа AnyCAST и осигуряват бърза DNS резолюция. За да използвате Vultrs DNS, бихте искали
За да нулирате root паролата на вашия сървър, ще трябва да стартирате в режим на един потребител. Достъп до вашия сървър в клиентския портал на Vultr, след което следвайте стъпката
Vultr въведе поддръжка за множество частни мрежи в началото на 2018 г. Тази функция се предлага като подобрение на стандартната частна мрежа. кога
Въведение Официалната библиотека Vultr Go може да се използва за взаимодействие с API на Vultr. Vultr API ви позволява да контролирате ресурсите, свързани с вас
Vultr ви позволява да комбинирате две от нашите функции (Floating IPs и BGP), за да постигнете висока наличност. Настройка Ще ви трябват два екземпляра в sam
В тази статия ще научите за селекция от решения за мониторинг, налични за вашия Vultr сървър. В зависимост от избора на операционна система, тер
SSH ключ ви позволява да влезете във вашия сървър, без да имате нужда от парола. SSH ключовете могат да се добавят автоматично към сървърите по време на инсталационния процес.
След като възстановите моментна снимка на нова машина, може да срещнете проблеми, причинени от промяната на MAC адреса на мрежовия адаптер. Обикновено, к��гато мрежата
Vultr предлага уеб-базирано решение за защитна стена, което може да бъде активирано за защита на един или повече компютърни екземпляри. Наличие на набор от правила за защитна стена за вашите сървъри i
Ако присвоявате частна мрежа на съществуваща машина (или разгръщате собствена операционна система), ще трябва да конфигурирате IP адресите на частната
Всеки от тези примери предполага IPv6 подмрежа от 2001:db8:1000::/64. Ще трябва да ги актуализирате с подмрежата, която ви е назначена. Ние ще бъдем полезни
Изкуственият интелект не е в бъдещето, тук е точно в настоящето. В този блог Прочетете как приложенията за изкуствен интелект са повлияли на различни сектори.
Вие също сте жертва на DDOS атаки и сте объркани относно методите за превенция? Прочетете тази статия, за да разрешите вашите запитвания.
Може би сте чували, че хакерите печелят много пари, но чудили ли сте се някога как печелят такива пари? нека обсъдим.
Искате ли да видите революционни изобретения на Google и как тези изобретения промениха живота на всяко човешко същество днес? След това прочетете в блога, за да видите изобретенията на Google.
Концепцията за самоуправляващи се автомобили да тръгват по пътищата с помощта на изкуствен интелект е мечта, която имаме от известно време. Но въпреки няколкото обещания, те не се виждат никъде. Прочетете този блог, за да научите повече…
Тъй като науката се развива с бързи темпове, поемайки много от нашите усилия, рискът да се подложим на необяснима сингулярност също нараства. Прочетете какво може да означава сингулярността за нас.
Методите за съхранение на данните може да се развиват от раждането на данните. Този блог обхваща развитието на съхранението на данни на базата на инфографика.
Прочетете блога, за да разберете различни слоеве в архитектурата на големи данни и техните функционалности по най-простия начин.
В този дигитално задвижван свят устройствата за интелигентен дом се превърнаха в решаваща част от живота. Ето няколко невероятни предимства на интелигентните домашни устройства за това как те правят живота ни струващ и по-опростен.
Наскоро Apple пусна macOS Catalina 10.15.4 допълнителна актуализация за отстраняване на проблеми, но изглежда, че актуализацията причинява повече проблеми, водещи до блокиране на mac машини. Прочетете тази статия, за да научите повече