Как получить доступ к Vultr VPS
Vultr предоставляет несколько различных способов доступа к вашему VPS для настройки, установки и использования. Учетные данные для доступа Учетные данные для доступа к вашему VPS по умолчанию
Официальная библиотека Vultr Go может использоваться для взаимодействия с API Vultr . API Vultr позволяет вам управлять ресурсами, связанными с вашей учетной записью, включая серверы, DNS, брандмауэр, снимки, сеть и многое другое. Из этого туториала вы узнаете, как использовать официальный клиент Go API, создав простое приложение для получения информации о ваших серверах.
Сначала мы начнем с создания нового модуля (проекта). Обычно вы используете URL-адрес хранилища для своего кода в качестве имени модуля, но это выходит за рамки данного руководства. На данный момент мы будем использовать serverinfo в качестве имени модуля.
Чтобы создать проект, выполните следующие команды:
# Create the folder in the current directory.
mkdir serverinfo
# Enter the new folder.
cd serverinfo
# Initialize the module.
go mod init serverinfo
Далее мы загрузим библиотеку API с GitHub (сайт хостинга кода). Для загрузки библиотек необходимо использовать go get
команду. Это автоматически загрузит библиотеку и ее зависимости при добавлении ее в файл go.mod . В том же терминале, который вы открыли ранее, введите следующую команду:
go get github.com/vultr/govultr
Чтобы использовать клиент 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 имеет доступ ко всей вашей учетной записи, включая биллинг, серверы и хранилище.
Теперь мы собираемся начать работать над программой. Откройте папку, которую мы создали в выбранном вами редакторе, и создайте файл с именем main.go
.
Внутри файла введите или скопируйте и вставьте следующий код:
package main
import (
"context"
"fmt"
"os"
"github.com/vultr/govultr"
)
func main() {
}
package main
Говорит Go , что мы создаем команду, а не библиотека. Оператор import объявляет зависимости, которые мы будем использовать. func main()
это функция, вызываемая при запуске нашей программы
Следующим шагом является инициализация API-клиента. Для этого нам нужно использовать функцию govultr.NewClient (http.Client, string) . Добавьте следующий код внутри функции main () :
client := govultr.NewClient(nil, "YOURAPIKEY")
Замените YOURAPIKEY
ключом API, который вы получили ранее.
Давайте посмотрим на этот код немного ближе. На левой стороне у :=
нас есть client
. Это имя переменной . Переменная хранит значения. На правой стороне у нас есть вызов функции govultr.NewClient . Первый параметр - nil, потому что нам не нужно менять HTTP-клиента по умолчанию. Второй параметр - это ключ API, который мы используем для аутентификации. :=
Оператор присваивает правую сторону на левую сторону, в этом случае результат вызова функции к client
.
Наша программа еще ничего не делает. Чтобы сделать его полезным, мы собираемся получить информацию о наших серверах от Vultr. Мы будем использовать функцию govultr.Client.Server.List (context.Context) ([] govultr.Server, error) . Добавьте следующий код в конец функции 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 () возвращает пустой контекст . После того, как мы извлекаем информацию о сервере в две переменные, server и err , мы проверяем, была ли ошибка. Если это так, мы сообщаем пользователю сообщить об ошибке и завершаем работу с кодом 1 (ошибка).
Теперь, когда у нас есть массив серверов в переменной Servers ( [] 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 -х знаков после запятой. Остальная строка формата печатается буквально (как есть).
На этом этапе ваш код должен выглядеть следующим образом:
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 предоставляет несколько различных способов доступа к вашему VPS для настройки, установки и использования. Учетные данные для доступа Учетные данные для доступа к вашему VPS по умолчанию
Создание Windows ISO (только для версий сервера) Получите последние двоичные драйверы VirtIO для Windows, упакованные в виде файла ISO, для
Пожалуйста, прочитайте: Vultr теперь предлагает CoreOS на странице заказа - это руководство объясняет, как настроить CoreOS вручную. Эти инструкции проведут вас через бег
Функция Vultrs BGP позволяет вам использовать свое собственное IP-пространство и использовать его в любом из наших мест. Начало работы Для использования BGP вам потребуется: развернутый Vult
По умолчанию системному времени Vultr VPS с Windows Server 2012 установлено значение часового пояса UTC. Вы можете изменить часовой пояс по своему желанию, но изменить его
Как я могу загрузить данные моего облака из Vultr? Переносимость данных на платформе Vultr Мы предлагаем вам ряд простых решений для загрузки.
При загрузке некоторые старые экземпляры Ubuntu 16.04 могут отображать следующее предупреждение: ************************************ **************************************
Vultr предлагает сетевое решение брандмауэра, которое можно включить для защиты одного или нескольких вычислительных экземпляров. Наличие набора правил брандмауэра для ваших серверов я
Чтобы сбросить пароль root вашего сервера, вам нужно будет загрузиться в однопользовательском режиме. Получите доступ к вашему серверу на портале для клиентов Vultr, затем выполните шаг
Vultr позволяет объединить две наши функции (плавающие IP-адреса и BGP) для достижения высокой доступности. Настройка Вам понадобятся два экземпляра в СЭМ
Пожалуйста, используйте следующий шаблон при запросе авторизации для объявлений BGP. АВТОРИЗАЦИОННОЕ ПИСЬМО [ДАТА] К кому это может относиться,
Введение в Vultr Обратный DNS Чтобы добавить PTR или Обратный DNS-запись для IP-адреса ваших экземпляров, вам необходимо выполнить шаги, описанные ниже:
Вероятно, многие люди будут использовать свои Vultr VPS в качестве веб-серверов, хорошим выбором будет Nginx в качестве веб-сервера. В этой теме я собираюсь описать
S3-совместимое * хранилище объектов теперь доступно в облаке Vultr. Наша технология хранения объектов является доступной, масштабируемой и легко интегрируемой в вас.
Ваша корпоративная система входа в систему может быть интегрирована с системой учетных записей Vultrs с помощью функции единого входа (SSO). SSO помогает упростить управление паролями
Ключ SSH позволяет вам войти на ваш сервер без пароля. Ключи SSH могут автоматически добавляться на серверы в процессе установки.
Примечание. Это руководство будет работать для экземпляров Windows 2012 R2 и Windows 2016. Серверы Windows по умолчанию не имеют включенной службы Windows Audio.
Двухфакторная аутентификация, или 2FA, - это метод, который добавляет уровень безопасности, требуя дополнительного шага аутентификации для входа в систему. Для надежной безопасности
Когда серверу назначено более одного IP-адреса, Postfix случайным образом выбирает IP-адрес для исходящих электронных писем. Это поведение Postfix по умолчанию может привести к
Изучение 26 методов анализа больших данных: часть 1
Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.
Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.
Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.
Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.
CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?
По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.
Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!
Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.
Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше