Начало работы с интерфейсом командной строки
Интерфейс командной строки Yandex.Cloud (CLI) — скачиваемое программное обеспечение для управления вашими облачными ресурсами через командную строку.
Установка
-
Выполните команду:
$ curl https://storage.yandexcloud.net/yandexcloud-yc/install.sh | bash
Скрипт установит CLI и добавит путь до исполняемого файла в переменную окружения
PATH
.Примечание
Скрипт дополнит переменную
PATH
только если его запустить в командных оболочкахbash
илиzsh
.Если вы запустили скрипт в другой оболочке, добавьте путь до CLI в переменную
PATH
самостоятельно. -
После завершения установки перезапустите командную оболочку.
-
Выполните команду:
$ curl https://storage.yandexcloud.net/yandexcloud-yc/install.sh | bash
Скрипт установит CLI и добавит путь до исполняемого файла в переменную окружения
PATH
. -
Перезапустите командную оболочку, чтобы перезагрузить переменные окружения.
CLI поддерживает автодополнение команд в командной оболочке bash
. Чтобы автодополнение заработало:
-
Установите менеджер пакетов Homebrew.
-
Установите пакет
bash-completion
:$ brew install bash-completion
Скрипт установки автоматически дополнит файл
~/.bash_profile
:# The next line updates PATH for Yandex.Cloud CLI. if [ -f '/Users/<username>/yandex-cloud/path.bash.inc' ]; then source '/Users/<username>/yandex-cloud/path.bash.inc'; fi # The next line enables shell command completion for yc. if [ -f '/Users/<username>/yandex-cloud/completion.bash.inc' ]; then source '/Users/<username>/yandex-cloud/completion.bash.inc'; fi
-
После завершения установки добавьте в файл
~/.bash_profile
следующие строки. Расположите их выше строк, автоматически добавленных скриптом установки.if [ -f $(brew --prefix)/etc/bash_completion ]; then . $(brew --prefix)/etc/bash_completion fi
-
Перезапустите командную оболочку.
Для Windows CLI можно установить с помощью PowerShell и cmd
:
-
Для установки с помощью PowerShell:
-
Выполните команду:
iex (New-Object System.Net.WebClient).DownloadString('https://storage.yandexcloud.net/yandexcloud-yc/install.ps1')
-
Скрипт установки спросит, нужно ли добавить путь до
yc
в переменную PATH:Add yc installation dir to your PATH? [Y/n]
-
Введите
Y
. После этого CLI Yandex.Cloud можно пользоваться, командную оболочку перезапускать не нужно.
-
-
Для установки с помощью
cmd
:-
Выполните команду:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://storage.yandexcloud.net/yandexcloud-yc/install.ps1'))" && SET "PATH=%PATH%;%USERPROFILE%\yandex-cloud\bin"
-
Скрипт установки спросит, нужно ли добавить путь до
yc
в переменную PATH:Add yc installation dir to your PATH? [Y/n]
-
Введите
Y
. -
Перезапустите командную оболочку, чтобы перезагрузить переменные окружения.
-
Создание профиля
-
Получите OAuth-токен в сервисе Яндекс.OAuth. Для этого перейдите по ссылке и нажмите Разрешить.
-
Запустите команду
yc init
, чтобы выполнить настройку вашего профиля CLI. -
По запросу команды введите свой OAuth токен.
Please go to https://oauth.yandex.ru/authorize?response_type=token&client_id=1a6990aa636648e9b2ef855fa7bec2fb in order to obtain OAuth token. Please enter OAuth token: AaAaBbBbCcCcDdDdEeEeFfFfGgGg
-
Выберите одно из предложенных облаков, в которых у вас есть права доступа:
Please select cloud to use: [1] cloud1 (id = aoe2bmdcvatao4frg22b) [2] cloud2 (id = dcvatao4faoe2bmrg22b) Please enter your numeric choice: 2
Если вам доступно только одно облако, оно будет выбрано автоматически.
-
Выберите каталог по умолчанию:
Please choose a folder to use: [1] folder1 (id = cvatao4faoe2bmdrg22b) [2] folder2 (id = tao4faoe2cvabmdrg22b) [3] Create a new folder Please enter your numeric choice: 1
-
Выберите зону доступности по умолчанию для сервиса Yandex Compute Cloud:
Do you want to configure a default Yandex Compute Cloud availability zone? [Y/n] Y Which zone do you want to use as a profile default? [1] ru-central1-a [2] ru-central1-b [3] ru-central1-c [4] Don't set default zone Please enter your numeric choice: 2
-
Проверьте настройки вашего профиля CLI:
$ yc config list
Примеры команд
Ниже описана последовательность действий для создания облачной сети, подсети и виртуальной машины, подключенной к этой подсети.
- Посмотрите описание команд CLI для работы с облачными сетями:
$ yc vpc network --help
- Создайте облачную сеть в каталоге, указанном в вашем профиле CLI:
$ yc vpc network create \ --name my-yc-network \ --labels my-label=my-value \ --description "my first network via yc"
- Создайте подсеть в облачной сети
my-yc-network
:$ yc vpc subnet create \ --name my-yc-subnet-b \ --zone ru-central1-b \ --range 10.1.2.0/24 \ --network-name my-yc-network \ --description "my first subnet via yc"
- Получите список всех облачных сетей в каталоге, указанном в вашем профиле CLI:
$ yc vpc network list +----------------------+------------------+-------------------------+ | ID | NAME | DESCRIPTION | +----------------------+------------------+-------------------------+ | skesdqhkc6449hbqqar1 | my-ui-network | my first network via ui | | c6449hbqqar1skesdqhk | my-yc-network | my first network via yc | +----------------------+------------------+-------------------------+
$ yc vpc network list --format yaml - id: skesdqhkc6449hbqqar1 folder_id: ijkl9012 created_at: "2018-09-05T09:51:16Z" name: my-ui-network description: "my first network via ui" labels: {} - id: c6449hbqqar1skesdqhk folder_id: ijkl9012 created_at: "2018-09-05T09:55:36Z" name: my-yc-network description: "my first network via yc" labels: my-label: my-value
- Создайте виртуальную машину и подключите к подсети
my-yc-subnet-b
:- Подготовьте пару ключей (открытый и закрытый) для SSH-доступа на виртуальную машину.
- Создайте виртуальную машину:
$ yc compute instance create \ --name my-yc-instance \ --network-interface subnet-name=my-yc-subnet-b,nat-ip-version=ipv4 \ --zone ru-central1-b \ --ssh-key ~/.ssh/id_rsa.pub
ssh-key
передайте путь к открытому ключу для SSH-доступа. В ОС виртуальной машины будет автоматически создан пользовательyc-user
с указанным открытым ключом.
- Подключитесь к виртуальной машине по SSH:
- Узнайте публичный IP-адрес виртуальной машины. Для этого посмотрите подробную информацию о вашей виртуальной машине:
$ yc compute instance get my-yc-instance
one_to_one_nat
:one_to_one_nat: address: 130.193.32.90 ip_version: IPV4
- Подключитесь к виртуальной машине по SSH от имени пользователя
yc-user
, используя закрытый ключ:$ ssh yc-user@130.193.32.90
- Узнайте публичный IP-адрес виртуальной машины. Для этого посмотрите подробную информацию о вашей виртуальной машине:
- Удалите виртуальную машину
my-yc-instance
, подсетьmy-yc-subnet-b
и сетьmy-yc-network
:$ yc compute instance delete my-yc-instance $ yc vpc subnet delete my-yc-subnet-b $ yc vpc network delete my-yc-network