DOMINANDO O AZURE COM CLOUD SHELL

Existem várias maneiras de interagir e gerenciar recursos no Microsoft Azure . Você pode usar o Portal do Azure ou ferramentas de linha de comando, como o módulo do Azure PowerShell ou a CLI do Azure, que pode instalar em sua máquina local. No entanto, para configurar uma estação de trabalho de gerenciamento de nuvem para administradores e desenvolvedores pode ser bastante trabalho.Especialmente se você tiver várias máquinas, manter a consistência entre essas máquinas pode ser um desafio. Outro desafio é manter o ambiente seguro e todas as ferramentas atualizadas. Isso muitas outras coisas são abordadas pelo Cloud Shell.

O Cloud Shell não é novo, a Microsoft anunciou o Cloud Shell no Build 2017. Este post é sobre como você pode dominar o Azure com o Cloud Shell e fornecer uma visão geral sobre as possibilidades do Cloud Shell.

O que é o Cloud Shell?

Portal do Cloud Shell do Azure

O Cloud Shell oferece uma experiência de shell pré-configurada, acessível ao navegador, para gerenciar recursos do Azure sem a sobrecarga de instalação, controle de versão e manutenção de uma máquina. O Azure Cloud Shell é atribuído por conta de usuário exclusiva e autenticado automaticamente a cada sessão.Isso torna um ambiente privado e seguro.

Você obtém uma experiência de linha de comando baseada na Web moderna que pode ser acessada de vários pontos de extremidade, como o Portal do Azure, o shell.azure.com e o aplicativo móvel do Azure, o código do Visual Studio ou diretamente nos documentos do Azure.

No back-end, o Azure usa contêineres e anexa automaticamente um compartilhamento de arquivos do Azure ao contêiner. Você pode armazenar os dados nele, portanto, seus dados são persistentes. Isso mantém seus dados em diferentes sessões do Cloud Shell.

Cloud Bash e PowerShell

Você pode escolher sua experiência de shell preferida. O Cloud Shell suporta Bash e PowerShell e incluiu suas ferramentas de terceiros e ferramentas e linguagens comuns. Se algo como um módulo está faltando, você pode simplesmente adicioná-lo.

Azure PowerShell vs CLI do Azure

Muitas das perguntas que recebo dos clientes são, qual opção de linha de comando do Azure devemos usar, o Azure PowerShell ou o Azure CLI. Para ser honesto, tudo se resume a preferências pessoais. Ambas as opções têm equipes de desenvolvimento dedicadas e crescentes. Sim, existem atualmente algumas inconsistências entre as duas opções, em que alguns comandos não estão disponíveis na CLI, mas estão disponíveis no PowerShell. A Microsoft está trabalhando com as equipes de recursos na consistência. Além disso, os dois shells são de código aberto e você pode encontrá-los no GitHub ( Azure PowerShell e Azure CLI ).

Eu sou obviamente mais um rapaz do Azure PowerShell, já que estou vindo do mundo do Windows. No entanto, como o novo módulo do Az PowerShell é baseado no PowerShell Core, os dois shells funcionam em todas as plataformas, como Windows, macOS e Linux. Eu ainda prefiro o modelo de objeto do PowerShell versus os fluxos de texto da CLI.

Primeiros passos com o Cloud Shell

Introdução ao Shell do Azure Cloud

Para começar, se você não usou o Cloud Shell antes, será necessário configurá-lo pela primeira vez.Quando abrir o shell pela primeira vez no portal do Azure, no site dedicado do Cloud Shell ou até mesmo no código do Visual Studio, você será solicitado a configurar o armazenamento e o grupo de recursos em que o Cloud Shell será hospedado.

Configurando o Cloud Shell

Se você quiser dar uma olhada rápida, recomendo clicar no link de configurações avançadas. Isso permitirá que você defina o nome para o grupo de recursos, a conta de armazenamento e também para o compartilhamento de arquivos do Azure.

Você sempre pode remover o Cloud Shell excluindo o grupo de recursos do Azure, usado durante esse processo de instalação.

Gerenciamento do Cloud Shell

Gerenciamento do Cloud Shell e Arquivo de Exportação

Você não pode apenas configurar a experiência do shell escolhendo qual shell você quer usar, você também pode configurar a fonte e o tamanho da fonte. Você também pode fazer upload e download de arquivos e, se necessário, reiniciar o contêiner.

Os arquivos também podem ser enviados usando arrastar e soltar diretamente no navegador.

Na experiência do PowerShell, você também obtém o cmdlet Export-File , que permite baixar rapidamente um arquivo.

SSH no Cloud Shell

Cloud Shell SSH

Um dos grandes recursos do Cloud Shell é que você encontrará muitas ferramentas já instaladas, uma delas é SSH. Se você quiser se conectar à sua VM diretamente do portal do Azure usando o SSH, basta ativar o Cloud Shell e fazê-lo. Isso facilita muito o gerenciamento do Linux. Você pode criar, implantar e gerenciar máquinas virtuais diretamente do seu navegador da web.

Armazenamento Persistente do Cloud Shell

Cloud Shell CloudDrive

Existem duas maneiras de persistir arquivos nos seguintes métodos:

  • Há uma imagem de disco criada para o seu diretório $ HOME para persistir todos os dados e conteúdos dentro do diretório. Essa imagem de disco é salva no compartilhamento de arquivos do Azure como acc_ <nomedousuário> .img (exemplo acc_thomas.img) no seguinte caminho: https: // <storageaccountname> .file.core.windows.net / <filesharename> /.cloudconsole /acc_<User>.img
  • O Cloud Shell anexa um compartilhamento de arquivos do Azure para manter seus dados. No primeiro uso, ele solicitará a criação de um compartilhamento de arquivos no Azure Files (ou a anexação de um arquivo existente) para persistir os dados nas sessões, e o Cloud Shell o anexará automaticamente para sessões subsequentes. Isso significa que todas as suas configurações e arquivos que você deseja manter, você deve armazenar nesse compartilhamento persistente. Por padrão, ele monta clouddrive em seu diretório $ HOME, o que significa que mapeia / Home / <User> / clouddrive para https: // <storageaccount> .file.core.windows.net / <filesharename>

Gerenciar o CloudDrive no Cloud Shell

Disco de armazenamento na nuvem

Na experiência bash você tem um comando chamado “ clouddrive ” para gerenciar seu CloudDrive, no PowerShell você tem os cmdlets Get-CloudDrive e Dismount-CloudDrive .

Cloud Shell Editor

Cloud Shell Editor

O Cloud Shell vem com editores comuns como o nano e o vi, mas ainda mais legal é o editor do Cloud Shell , que lhe dará um ótimo editor. é um editor baseado no projeto de código aberto do Visual Studio Code Monaco. O Monaco é o mesmo editor baseado em padrões da Web que dá suporte ao Visual Studio Code, e o editor agora está integrado diretamente ao Cloud Shell. Para abrir o editor, você pode simplesmente digitar “ código ” ou usar o botão no menu.

Como você pode ver, você também obtém realce de sintaxe com vários idiomas e modelos ARM.

Gerenciar VMs do Azure do Cloud Shell – Remoting do AzVM

Cloud Remoting do VM Shell do Az

O PowerShell no Cloud Shell tem um comando remoto que permite embutir no módulo PSCloudShellUtility. Esses módulos permitem que você instale remotamente rapidamente em máquinas virtuais Linux e Windows em execução no Azure.

Você pode executar o cmdlet Enable-AzVMPSRemoting para habilitar o remoting para uma VM específica.Isso irá configurar e configurar o remoting e os NSGs no Azure.

Com o Invoke-AzVMCommand, você pode simplesmente enviar um comando para o sistema operacional.

O comando Enter-AzVM permite que você tenha uma sessão interativa com a máquina virtual.

Para máquinas virtuais Linux, você pode usar a autenticação por senha ou certificado.

Unidade do Azure do PowerShell

Unidade do Azure do PowerShell

O Cloud Shell baseado no Azure PowerShell, tem algo chamado de Azure Drive. O Azure Drive é baseado em um provedor do PowerShell chamado ShiPS . A Unidade do Azure permite navegar pelos recursos do Azure como um sistema de arquivos.

Um provedor do PowerShell permite que qualquer armazenamento de dados seja exposto como um sistema de arquivos como se fosse uma unidade montada. Em outras palavras, os dados em seu armazenamento de dados podem ser tratados como arquivos e diretórios para que um usuário possa navegar pelos dados via cd ou dir. O SHiPS é um provedor do PowerShell. Para ser mais preciso, é um utilitário provedor que simplifica o desenvolvimento de provedores do PowerShell.

Ferramentas no Cloud Shell

Não há apenas a ferramenta da Microsoft pré-instalada no Cloud Shell. Você não apenas tem várias alternativas ao editor do Cloud Shell, como o emacs, o Nano ou o vi instalado. Existem vários aplicativos de terceiros, como o Git, o Terraform, o Ansible, o Docker, o Kubectl e muitas outras ferramentas e idiomas de terceiros instalados.

Aqui está uma pequena lista de diferentes ferramentas, pré-instaladas e prontas para você usar.

CATEGORIA NOME
Ferramentas Linux bater
zsh
sh
tmux
escavação
Ferramentas do Azure CLI do Azure
AzCopy
CLI do Service Fabric
Estaleiro de Lote
blobxfer
Editores de texto vim
nano
emacs
código
Fonte de controle git
Construir ferramentas faço
maven
npm
pip
Contianers Máquina de ancoragem
Kubectl
Leme
CLI do DC / OS
Bancos de dados MySQL clinet
Cliente PostgreSql
utilitário sqlcmd
mssql-scripter
outras cliente iPython
CLI Cloud Foundry
Terraform
Ansible
Chef InSpec
Módulos do PowerShell Az
AzureAD (visualização)
Exchange Online (em desenvolvimento)
MicrosoftPowerBIMgmt
Servidor SQL

 

Cloud Shell no código VS

Cloud Shell no código do Visual Studio

Se você estiver trabalhando em seu dispositivo no Visual Studio Code, poderá abrir e usar diretamente o Cloud Shell no terminal Visual Studio Code . Isso permite manter a consistência, mesmo se você estiver trabalhando diretamente no editor do seu dispositivo. Você pode executar seus scripts e comandos diretamente do código do Visual Studio. Para fazer isso, você precisará instalar a extensão da conta do Azure para o código VS.

  1. Pressione CTRL + SHIFT + P
  2. Entre no Microsoft Azure, digitando Azure: Entrar
  3. Uma janela do navegador será aberta para efetuar login no Azure
  4. Pressione CTRL + SHIFT + P
  5. Digite Open PowerShell no Cloud Shell ou Open Bash no Cloud Shell
  6. Isso conectará você diretamente ao seu Cloud Shell em execução no Azure.

Gerenciar serviços adicionais da Microsoft

Módulos do PowerShell

Como mencionado anteriormente, o Cloud Shell possui muitas ferramentas de terceiros instaladas. Ele também possui alguns módulos e ferramentas extras do Microsoft PowerShell para gerenciar não apenas o Azure, mas também outros serviços da Microsoft. Isso significa que ele se torna um verdadeiro Microsoft Cloud Shell para gerenciar todos os tipos de serviços, servidores, aplicativos e ferramentas.

A partir de hoje, você obtém os seguintes módulos do PowerShell:

  • Gerenciamento do AD do Azure (visualização)
  • Exchange Online (em desenvolvimento)
  • MicrosoftPowerBIMgmt
  • Servidor SQL

Use repositórios Git no Cloud Shell

Cloud Shell Git Repo

No início deste post do blog, mostrei como você pode fazer upload e download de arquivos. Isso é ótimo se você quiser executar um script rápido, mas se você quiser trabalhar um pouco mais sério, você pode ter um repositório Git, onde você armazena seus arquivos. Eu armazeno meus scripts pessoais em um repositório do AzOer DevOps . O Cloud Shell vem com o Git por instalado e você pode simplesmente clonar um repositório para sua unidade de nuvem.

Obviamente, você também pode usar o GitHub ou qualquer outro repositório, desde que ele seja acessado pelo Azure.

Para clonar um repositório Git, você precisa criar um token de acesso pessoal e usá-lo como nome de usuário. Você pode clonar o repo assim:

Aplicativo móvel do Azure

Cloud Shell no aplicativo móvel do Azure

Se você tiver o aplicativo para dispositivos móveis do Azure para iOS ou Android, poderá gerenciar seus recursos do Azure diretamente de seu celular. Se você olhar mais de perto, também encontrará a opção de executar o Cloud Shell no aplicativo para dispositivos móveis do Azure, que fornece basicamente acesso ao shell de qualquer lugar.

Integração com o Microsoft Docs

Cloud Shell no Azure Docs

Outra grande coisa é a integração direta nas páginas de documentos da Microsoft. Se você estiver abrindo a documentação do Azure, não só encontrará as informações, mas sim um botão ” experimentar “, que abre diretamente o Cloud Shell na página de documentação.

Microsoft Learn

Microsoft Learn Sandbox

Se você quiser saber mais sobre o Cloud Shell ou outros serviços da Microsoft, confira a plataforma Microsoft Learn . Este não é apenas um guia que mostra como usar os serviços específicos, ele se integra diretamente no Microsoft Learn. Você pode usar os links a seguir para aprender sobre o Azure PowerShell e o Azure CLI:

  • aka.ms/LearnPS
  • aka.ms/LearnCLI

Custos e Preços

O Cloud Shell é basicamente gratuito, os custos por trás dele são provenientes do Compartilhamento de arquivos do Azure e do armazenamento que você consome. O faturamento é baseado apenas no compartilhamento de arquivos do Azure usado para persistir seus dados. Seus custos totais dependem de quanto você armazena, do volume e tipo de transações de armazenamento e transferências de dados de saída e qual opção de redundância de dados você escolhe.

Espero que isso tenha sido útil e que você tenha aprendido mais sobre o Cloud Shell. Vá experimentá-lo e se você tiver alguma dúvida, me avise!

Deixe um comentário

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.

Blog no WordPress.com.

Acima ↑

Crie um site como este com o WordPress.com
Comece agora