Жемчужины мудрости для облачных администраторов: знакомство с Azure Cloud Shell

Microsoft Azure можно управлять с помощью портала Microsoft Azure, PowerShell, межплатформенного интерфейса командной строки (CLI) и всех тех интерфейсов, которые используют Rest API для управления ресурсами. В настоящее время существует функция Azure Cloud Shell (предварительная версия), которая сочетает в себе возможности портала Azure и PowerShell. Таким образом, у нас может быть приглашение оболочки, работающее в сеансе портала Azure или в мобильном приложении Microsoft Azure. Cloud Shell будет использовать предпочитаемый нами метод (bash или PowerShell) и управлять ресурсами Azure с помощью команд в Azure Resource Manager (ARM). Кроме того, есть несколько дополнительных инструментов, которые могут помочь администратору облака.
Еще одним преимуществом использования Azure Cloud Shell является то, что он использует учетную запись хранения для хранения файлов и важной информации, хотя новый экземпляр виртуальной машины будет создаваться каждый раз, когда мы открываем Cloud Shell (в настоящее время Cloud PowerShell работает на Windows Server 2016). но все данные будут доступны, поскольку будет выполнено подключение к учетной записи хранения, что обеспечит согласованность и отказоустойчивость для пользователя Cloud Shell.
Начиная с Azure Cloud Shell
Первый шаг — это регистрация на портале Azure. Щелкните значок , расположенный в верхней части портала. Если это ваш первый раз, вам будет предложено выбрать тип оболочки, которую вы собираетесь использовать. Нажмите на ваши предпочтения.
Отобразится новая страница. Для требуется файловый ресурс в учетной записи хранения, или нам нужно выбрать подписку, а затем нажать «Создать хранилище».
Результатом первого запуска является создание группы ресурсов с именем cloud-shell-storage-<region>, а также с префиксом cs в той же группе ресурсов.
Учетная запись хранения будет иметь общую папку с префиксом cs и папку с именем .pscloudshell в этой общей папке, которая по умолчанию имеет три подпапки:.azure, PowerShell и WindowsPowerShell. Их можно использовать для хранения модулей и файлов в целом, которые можно использовать во время сеанса .
Мы можем использовать интерфейс ниже, чтобы добавить файлы, которые позже могут быть использованы Cloud Shell. В следующем разделе мы рассмотрим, как работать с этими папками с точки зрения .
Знакомство с Azure Cloud Shell
После первого запуска группа ресурсов, учетная запись хранения, файловый ресурс и папки будут созданы автоматически как часть процесса (элемент 2 на изображении ниже).
Примечание. Мы можем в любое время проверить информацию о хранилище, связанную с текущей Azure Cloud Shell, запустив командлет Get-CloudDrive.
имеет простое меню (пункт 1 ниже), которое позволяет администратору сменить оболочку (bash или PowerShell), перезапустить сеанс, изменить размер текста и шрифт, создать новую вкладку (он откроет вкладку на браузер в полноэкранном режиме) и загрузите файл, что очень удобно, когда у вас есть сценарий, готовый к работе на вашей рабочей станции, и его необходимо выполнить в .
Кстати, если вы используете приложение Microsoft Azure, вы заметите, что есть значок Cloud Shell, и все функции, доступные в обычном веб-браузере, также поддерживаются в приложении. На изображении ниже мы создали новую с помощью командлета New-AzureRMResourceGroup, а также перечислили все группы ресурсов по именам.
В предыдущем разделе мы видели, что некоторые папки создаются в общей папке Azure, и это хранилище всегда подключено к Azure Cloud Shell. Насущный вопрос, который вы, возможно, задаете себе прямо сейчас, звучит так: «Хорошо, но как я увижу это в ?»
Ответ прост. Мы можем просто ввести cd $HomeCloudDrive из , и мы будем в контексте этого Azure File Share, и мы сможем редактировать (да, мы можем использовать редакторы в Azure Cloud Shell!), загружать файлы и использовать их..
Имейте в виду, что по умолчанию вы находитесь в контексте Azure:. Когда вы перейдете к файловому ресурсу Azure, мы войдем в , который находится на виртуальной машине, поддерживающей текущий сеанс. Чтобы вернуться в контекст Azure, просто введите cd Azure: и вы вернетесь в исходное место.
Список ресурсов с помощью Azure Cloud Shell
Одной из замечательных функций Azure Cloud Shel является возможность использовать команды dir и cd для навигации по подписке/областям, а в рамках подписки мы можем перечислить все ресурсы, группы ресурсов, учетные записи хранения, виртуальные машины и веб-приложения, просто набрав cd VirtualMachines, а затем dir, чтобы вывести список всех ресурсов данного типа.
Еще один полезный ресурс — командлет Get-AzureRMCommand, в котором перечислены все команды, применимые в текущем контексте. Допустим, мы зашли на VirtualMachines. Когда мы запустим Get-AzureRMCommand, будут перечислены все командлеты, применимые к виртуальной машине.
Последний трюк, прежде чем двигаться вперед: мы можем получить список всех командлетов любого данного модуля, выполнив следующий командлет: Get-Command -Module AzureAD, в этом примере мы используем модуль AzureAD.
Использование инструментов Cloud Shell
Помимо предоставления простого доступа к Azure Resource Manager и командлетам PowerShell, у нас есть несколько инструментов, которые помогут администратору выполнять задачи без особых проблем со сбором инструментов для использования в любом конкретном сеансе.
Хорошим примером является кроссплатформенный интерфейс командной строки (CLI) Azure. Мы можем просто набрать AZ, и у нас будет к нему доступ.
Еще одна интересная функция — это текстовые редакторы, доступные в , а именно vim (мой любимый из моей предыдущей жизни, когда я компилировал ядра Linux) и nano, который более удобен для пользователя.
При использовании текстового редактора мы можем воспользоваться функцией IntelliSense для завершения командлетов, которые мы планируем использовать в нашем следующем сценарии, как показано на рисунке ниже.
Заметки с полей
В этой статье мы рассмотрели некоторые интересные функции Azure Cloud Shell и то, как они могут помочь администратору выполнять действия без использования локальной PowerShell, что упрощает администрирование.
Мы можем использовать shell.azure.com из поддерживаемого браузера, и после аутентификации учетной записи у нас есть доступ к Cloud Shell.
Еще одна приятная функция, которую мы не затронули в этой статье, потому что она заслуживает отдельной статьи, — это возможность запускать команды на виртуальных машинах с помощью Invoke-AzureRmVMCommand. Следите за обновлениями!