Automatização de ambiente com Ansible

ansible

Você que tem ambientes grandes e complexos, ambiente com muitas maquinas hoje é até um pecado não automatizar ambiente.

Com o advento de Nuvem e virtualização cada vez mais teremos mais servidores e serviços separados com elasticidade.

O Ansible veio para automatizar ambiente e facilitar as tarefas chatas de atualização ou instalação de patchs e muito mais.

Eu não vou mostrar como instalar o Ansible pois é uma tarefa relativamente facil

yum install ansible ou apt-get e blá blá blá o google mostra o caminho a você que se interessar.

header2

Introdução

Ansible é um sistema de gerenciamento de configuração fácil que pode ser usada para automatizar e organizar suas tarefas de configuração do sistema para uma grande rede de computadores. Enquanto alguns outros sistemas de gerenciamento de configuração exigem muitos pacotes diferentes para ser instalado nos sistemas de servidor e cliente, com Ansible, você só precisa instalar um componente do servidor e ter acesso SSH para as máquinas clientes.

Neste guia, vamos discutir playbooks ansible, que são forma de criar scripts automatizados para configurar computadores clientes do Ansible.

Vamos supor que você tem um servidor Ansible configurado e alguns clientes.

No nosso guia, o servidor é um Ubuntu 12.04 máquina, e os clientes que vão ser configuração também são Ubuntu 12.04 máquinas, para facilidade de explicação.

Quais são Playbooks ansible?

Playbooks ansible são uma forma de enviar comandos para computadores remotos via script através do SSH. Em vez de usar comandos Ansible individualmente para configurar remotamente os computadores a partir da linha de comando, você pode configurar ambientes complexos inteiros por meio de um script para um ou mais sistemas.

Playbooks ansible estão escritos no formato de serialização de dados YAML. Se você não sabe o que é um formato de dados, pense nisso como uma maneira de traduzir uma estrutura de dados (listas, matrizes, dicionários, etc) em um formato que pode ser facilmente armazenado no disco. O arquivo pode então ser utilizada para criar a estrutura em um momento posterior. JSON é um outro formato  de dados popular, mas YAML é muito mais fácil de ler.

Cada cartilha contém uma ou mais peças, que mapeiam hosts para uma determinada função. Ansible faz isso através de tarefas, que são basicamente as chamadas em módulos.

Explorando um Playbook Básico

Veja o comando.

--- - hosts: droplets tasks: - name: Installs nginx web server apt: pkg=nginx 
state=installed update_cache=true notify: - start nginx handlers: 
- name: start nginx service: name=nginx state=started 

Vamos em seções para que possamos entender como esses arquivos são construídos e que cada peça significa.

O arquivo começa com:

 --- 

Este é um requisito para YAML para interpretar o arquivo como um documento adequado. YAML permite que vários “documentos” em um arquivo, cada um separado por --- , mas Ansible só quer um por arquivo, de modo que este só deve estar presente na parte superior do arquivo.

YAML é muito sensível ao espaço em branco, e usa isso para agrupar diferentes peças de informação em conjunto. Você deve usar apenas espaços e não tabs e você deve usar espaçamento consistente para o arquivo a ser lido corretamente. Itens no mesmo nível de recuo são considerados elementos irmãos.

Os itens que comecem com um - são considerados itens da lista. Os itens que têm o formato de key: value operar como hashes ou dicionários. Isso é muito bonito tudo o que há para YAML básica.

Documentos YAML, basicamente, definir uma estrutura de árvore hierárquica com os que contêm elementos mais à esquerda.

Na segunda linha, temos o seguinte:

 --- - hosts: droplets 

Este é um item de lista no YAML como aprendemos acima, mas uma vez que é no mais à esquerda do nível, é também uma “peça” Ansible. Peças são basicamente grupos de tarefas que são executadas em um determinado conjunto de hosts, que lhes permitam cumprir a função que deseja atribuir a eles. Cada jogo deve especificar um host ou grupo de exércitos, como fazemos aqui.

Em seguida, temos um conjunto de tarefas:

 --- - hosts: droplets tasks: - name: Installs nginx web server 
apt: pkg=nginx state=installed update_cache=true notify: - start nginx 

No nível superior, temos “tarefas:” no mesmo nível “hosts:”. Este contém uma lista (porque começa com um “-“), que contém pares chave-valor.

O primeiro, “nome”, é mais do que uma descrição do que um nome. Você pode chamar isso de qualquer coisa que você gostaria.

A próxima chave é “apto”. Esta é uma referência a um módulo Ansible, assim como quando usamos o comando ansible e digitar algo como:

 ansible -m apt -a 'whatever' all 

Este módulo permite especificar um pacote e o estado que ele deve estar em, que é “instalado” no nosso caso. O update-cache=true parte diz a nossa máquina remota para atualizar seu cache de pacotes (apt-get update) antes de instalar o software.

O item “notificar” contém uma lista com um item, o que é chamado de “começar nginx”. Este não é um comando interno Ansible, é uma referência a um manipulador, que pode executar determinadas funções quando é chamado a partir de uma tarefa. Vamos definir o “start nginx” manipulador abaixo.

 --- - hosts: droplets tasks: - name: Installs nginx web server 
apt: pkg=nginx state=installed update_cache=true notify: - 
start nginx handlers: - name: start nginx service: name=nginx state=started 

A seção “manipuladores” existe ao mesmo nível que os “hosts” e “tarefas”. Manipuladores são como tarefas, mas eles só correr quando lhes foi dito por uma tarefa que ocorreram alterações no sistema do cliente.

Por exemplo, temos um manipulador aqui que inicia o serviço Nginx após o pacote é instalado. O manipulador não é chamado a menos que o “Instal servidor web nginx” resultados da tarefa em mudanças no sistema, o que significa que o pacote teve de ser instalado e já não estava lá.

Nós podemos salvar este em um arquivo chamado algo como “nginx.yml”.

Só por algum contexto, se você fosse escrever esse mesmo arquivo em JSON, que poderia ser algo como isto:

 [ { "hosts": "droplets", "tasks": [ { "name": "Installs nginx web server", 
"apt": "pkg=nginx state=installed update_cache=true", "notify": [ "start nginx" ] } ], 
"handlers": [ { "name": "start nginx", "service": "name=nginx state=started" } ] } ] 

Como você pode ver, YAML é muito mais compacto e maioria das pessoas diria mais legal.

Executando um Ansible Playbook

Depois de ter um guia estratégico construído, você pode chamá-lo facilmente usando este formato:

 playbook.yml ansible-playbook

Por exemplo, se queríamos para instalar e iniciar o Nginx em todos os nossos servidores, poderíamos emitir este comando:

 ansible-playbook nginx.yml 

No entanto, se nós gostaríamos de filtrar a lista , aplicar-se apenas a um desses hospedeiros, podemos adicionar um sinalizador para especificar um subconjunto dos arquivos:

 ansible-playbook -l host_subset playbook.yml

Então, se nós só quesermos instalar e executar o Nginx em um servidor, por exemplo “host3”, que poderia digitar o seguinte:

 ansible-playbook -l host3 nginx.yml 

Adicionando recursos ao Playbook

Agora a nossa cartilha tem esta aparência:

---
- hosts: droplets
  tasks:
    - name: Installs nginx web server
      apt: pkg=nginx state=installed update_cache=true
      notify:
        - start nginx

  handlers:
    - name: start nginx
      service: name=nginx state=started

É simples e funciona, em vários hosts ou em um só.

Podemos começar a expandir a funcionalidade através da adição de tarefas.

Adicionar um padrão Index Arquivo

Podemos dizer-lhe para transferir um arquivo do nosso servidor Ansible no host, adicionando algumas linhas como este abaixo:

---
- hosts: droplets
  tasks:
    - name: Installs nginx web server
      apt: pkg=nginx state=installed update_cache=true
      notify:
        - start nginx

    - name: Upload default index.html for host
      copy: src=static_files/index.html dest=/usr/share/nginx/www/ mode=0644

  handlers:
    - name: start nginx
      service: name=nginx state=started

Podemos, então, fazer um diretório chamado static_files em nosso diretório atual e coloque um arquivo index.html dentro.

 mkdir static_files nano static_files/index.html 

Dentro desse arquivo, vamos apenas criar uma estrutura básica html:

 <html> <head> <title>This is a sample page</title> </head> <body> 
<h1>Here is a heading!</h1> <p>Here is a regular paragraph. Wow!</p> 
</body> </html> 

Salve e feche o arquivo.

Agora, quando executar novamenter o playbook, Ansible irá verificar cada tarefa. Vai ver que Nginx já está instalado no host, por isso vai deixá-lo ser. Ele vai ver a nova seção tarefa e substituir o arquivo index.html padrão com o do nosso servidor.

Resultados

Quando instalar e configurar os serviços manualmente, é quase sempre necessário saber se suas ações foram bem-sucedidas ou não. Podemos cozinhar essa funcionalidade em nossos playbooks usando “registrar”.

Para cada tarefa, que pode, opcionalmente, registrar seu resultado (sucesso ou falha) em uma variável que podemos verificar mais tarde.

Ao utilizar esta funcionalidade, também temos de dizer Ansible para ignorar erros para essa tarefa, já que normalmente ele aborta a execução cartilha para aquela máquina se qualquer problema acontece.

Assim, se quiser verificar se uma tarefa falhou ou não para decidir sobre os passos subsequentes, podemos usar a funcionalidade de registo.

Por exemplo, poderíamos dizer o nosso guia estratégico para carregar um index.php  se ele existir. Se essa tarefa falhar, poderíamos em vez de tentar carregar um index.html. Vamos verificar a condição de falha na outra tarefa, porque nós só queremos fazer o upload do arquivo HTML se o arquivo PHP falhar:

---
- hosts: droplets
  tasks:
    - name: Installs nginx web server
      apt: pkg=nginx state=installed update_cache=true
      notify:
        - start nginx

    - name: Upload default index.php for host
      copy: src=static_files/index.php dest=/usr/share/nginx/www/ mode=0644
      register: php
      ignore_errors: True

    - name: Remove index.html for host
      command: rm /usr/share/nginx/www/index.html
      when: php|success

    - name: Upload default index.html for host
      copy: src=static_files/index.html dest=/usr/share/nginx/www/ mode=0644
      when: php|failed

  handlers:
    - name: start nginx
      service: name=nginx state=started

 

Esta nova versão tenta carregar um arquivo de índice PHP para o local indicado. Ela regista com sucesso da operação em uma variável chamada “PHP”.

Se esta operação foi bem sucedida, a tarefa ira remover o arquivo index.html é executado em seguida.

Se a operação falhar, o arquivo index.html é carregado em vez disso.

Conclusão

Agora, você deve ter um bom controle sobre como automatizar tarefas complexas usando Ansible.

Este é um exemplo básico de como você pode começar a construir a sua biblioteca de configuração.

Combinando definições de host e do grupo como nós aprendemos sobre este tutorial, e com variáveis disponíveis para preencher as informações, podemos começar a montar sistemas complexos que interagem uns com os outros. Em um artigo futuro, vamos discutir como implementar variáveis em nossos playbooks e criar funções para ajudar a gerenciar tarefas complexas.

Como ainda falamos de nuvem o Ansible em ambiente IaaS publico ou não é ideal.

Teste no Azure e Amazon e não precisa falar que ambiente Onpremisses, todos funcionaram.

Tem um demo sensacional no site oficial:

https://www.ansible.com/

Veja um howto facil.

Se você quer seguir para um caminho de DEVOPS o Ansible é a porta de entrada.

Espero ter ajudado.

Abraços

 

DNS do Azure

Pessoal

Um serviço legal do Azure que recomendo a usar semelhante ao ROUTE 53 do Amazon é o Azure DNS.

Como eu já tenho um domínio eu vou criar um subdomínio, mas é o mesmo conceito.

O Serviço do Azure DNS é um dos mais intuitivos.

Vamos adicionar

Eu criei um subdomínio azure.fabiosilva.com.br pois já tenho serviço de DNS ativo.

Crie o Resource Group ou grupo de recursos do Azure e crie o subdomínio.

Como meu DNS fica em outra localidade eu fiz um redirecionamento como CNAME para que funcione corretamente.

Fiz o redirecionamento de azure.fabiosilva.com.br para CANONICAL NAME ns1-02.azure-dns.com

Veja que a configuração ocorreu corretamente

Pronto o serviço de DNS está pronto para ser usado.

Podemos agora apontar para uma URL ou ip e serviços MX, WWW, SVR.

Abraços

Openstack Day – São Paulo – 08 de Outubro

openstackday.PNG

Dia 08 de Outubro o evento mais esperado para os entusiastas de Openstack.

Agora finalmente em SP.

Você administrador, Sysadmin, Influenciador e entusiasta vá ao evento, seja cloud na veia.

ingresso

Se você não sabe o que é o Openstack veja em https://fabiosilva.com.br/2015/04/12/introducao-ao-openstack/

Vai ser o teste de fogo do evento em SP.

Estarei la e convido a vocês estarem lá.

Obrigado.

Multicloud Summit

Pessoal

Dia 22 teremos um encontro raro aqui no Brasil sobre o tema multicloud.

Microsoft, Amazon e Google com apresentações de seus CIOS sobre Cloud Computing.

Inscreva-se e não percam este evento.

http://www.multicloudsummit.com.br

AZURE, GOOGLE CLOUD E AWS no mesmo evento é imperdivel. 

Valeu.

Docker no Azure

docker_azure

Pessoal.

Hoje irei mostrar a vocês DOCKER no AZURE.

Em resumo o que gosto de falar do DOCKER é uma aplicação isolada em forma de CONTEINER em uma maquina virtual ou física.

Você pode compartilhar vários recursos dentro de uma mesma maquina virtual ou física.

Para criar uma DOCKER MACHINE você deve usar o comando  docker-machine create –driver azure.

Eu usei autenticação multifator no Azure.

Exemplo:

dockermachine create d azure \ azuresshuser ops \ azuresubscriptionid <Your AZURE_SUBSCRIPTION_ID> \ azureopenport 80 \ machine

Onde tem AZURE_SUBSCRIPTION_ID utilize sua subscrição ou assinatura do AZURE.

Depois de autenticado digite o comando abaixo:

dockermachine env nomedamaquina

Ele vai exibir no console este exemplo abaixo:

export DOCKER_TLS_VERIFY=“1” export DOCKER_HOST=“tcp://ipdamaquina:porta” export DOCKER_CERT_PATH=“/Users/rasquill/.docker/machine/machines/machine” export DOCKER_MACHINE_NAME=“nomedamaquina” # Run this command to configure your shell: # eval $(docker-machine env nomedamaquina)

Eu executei um servidor web NGINX para ver se estava tudo funcionando corretamente.

docker run d p 80:80 restart=always nginx

Para testar execute o comando abaixo:

docker os

Resultado:
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                         NAMES

d5b78f27ak228        nginx               “nginx -g ‘daemon off”   5 minutes ago       Up 5 minutes        0.0.0.0:80->80/tcp, 443/tcp   nomedamaquina

Se você esqueceu o ip digite este comando:

docker-machine ip nomedamaquina

Depois acesse no navegador

nginx.PNG

Pronto! Sua aplicação simples sem instalação de servidor está pronta.

 

Licenciamento Windows Server 2016

3252.windows-server-2016

O Windows Server 2016 mudou a forma de licenciamento.

A forma de licenciamento privilegia levar as maquinas de forma mais facil para nuvem utilizando o Hyper-V.

O licenciamento é baseado em núcleo, e não em cores fisicos.

Inicialmente é liberado 2 cores fisicos com 8 nucleos cada core, e depois em resumo é cobrado por núcleo adicional.

nucleos

Olhando em forma de gráfico se você tiver um servidor físico com 2 processadores físicos totalizando 16 núcleos você estará a nível de auditoria correto.

Vamos analisar se você tiver 2 processadores e se cada processador tiver 16 núcleos vamos resumir que o segundo processador você vai pagar por núcleo adicional.

Esta outra tabela que esta no site da MICROSOFT faz um outro resumo.

Edições do Windows Server 2016

 

 

 

 

Datacenter Edition Standard Edition
Funcionalidade básica do Windows Server

Contêineres de OSEs/Hyper-V*

Ilimitado

2

Contêineres do Windows Server

Ilimitado

Ilimitado

Nano Server

Novos recursos de armazenamento que incluem Espaços de Armazenamento Diretos e Réplica de Armazenamento**

Novas máquinas virtuais blindadas

Nova pilha de rede

Modelo de licenciamento

Core + CAL

Core + CAL

Preço+

$6,155

$882

A tendencia para empresas que querem virtualizar o ambiente e ter soluções hibridas vai facilitar.

O Windows Server 2016 versão datacenter vai te dar o poder de não ter limite de instalação de sistemas operacionais Windows Server 2016 datacenter.

Comparando com sistemas de virtualização concorrentes como Vmware, Citrix XenServer você teria que pagar para ter cada sistema operacional Windows Server 2016 Datacenter instalado.

Exemplo:

host

O custo final na aquisição em relação aos concorrentes sema mais baratos, sem comparação técnica.

As comparações técnicas e gostos técnicos estão muito equiparados e neste post não esta levando em consideração e sim o entendimento do licenciamento e como será econômico ao virtualizar um ambiente com Hyper-V e Windows Server 2016.

Sem sombra de dúvida vai dar um nó na cabeça de como o olhar for o licenciamento do Windows Server 2012.

Mas é um passo importante a virtualizar e mesclar seu ambiente para modelo Hibrido.

Espero que tenham gostado.

Maiores informações no site da Microsoft e white papers sobre os licenciamentos.

https://www.microsoft.com/pt-br/server-cloud/products/windows-server-2016/#MenuItem4

Abraços

 

PROXMOX! O Virtualizador fácil de instalar e utilizar.

Olá Pessoal

Hoje tive uma grata surpresa de um Virtualizador muito legal.

Chama-se PROXMOX.

Fundada em 2005 a empresa Austriaca nasceu do mundo Open Source com operações de serviços de e-mail.

Os únicos investidores são os próprios clientes que apoiam a empresa e seus serviços de e-mail e virtualizador.

A Empresa é bem completa em relação a fóruns, comunidade e suporte técnico.

Eu fiz um LAB com DEBIAN no Hyper-V que ficou muito legal.

Quem está a fim de não gastar e montar seu pequeno provedor fiquei maravilhado com está maravilha de virtualizador.

Ele é baseado em Java e KVM que é o virtualizador no Linux bastante usado.

Veja que é bem simples:

Primeiro passo

Instalação do Debian:

Como LAB usei o hyper-v

Siga os passos

O Debian já é homologado para Hyper-V


Usei 1g como LAB

O foco não é a instalação do Debian

Depois de instalado o Debian vamos preparar o PROXMOX.

Dentro do Debian temos algumas alterações a serem feitas no Source List do APT.

Muita gente tem alteração de partição ou prepara de forma diferente.

Eu preparei a máquina com um HD só em LVM.

Maiores informações vejam no site do PROXMOX.

Eu uso VIM, tem gente que gosta do NANO

vim /etc/apt/sources.list
deb http://ftp.at.debian.org/debian squeeze main contrib
# PVE packages provided by proxmox.com
deb http://download.proxmox.com/debian squeeze pve
# security updates
deb http://security.debian.org/ squeeze/updates main contrib
  1. Adicione o repositório do Proxmox VE repository key
  2. De um update do apt-get

wget -O- “http://download.proxmox.com/debian/key.asc&#8221; | apt-key add –

aptitude update

aptitude full-upgrade

Instale Proxmox VE Kernel

aptitude install pve-firmware

aptitude install pve-kernel-2.6.32-19-pve

Reinicie o computador e certifique-se de selecionar o Proxmox VE Kernel sobre o carregador de inicialização (Grub2).

reboot

Opcional – instale Kernel:

aptitude install pve-headers-2.6.32-19-pve

Instale os pacotes do Proxmox

Certifique-se de que você está executando os Proxmox VE Kernel, caso contrário, a instalação falhará.

Verifique o Kernel atualmente ativo:

uname -a

Linux 2.6.32-19-pve …

a. Instale os pacotes do Proxmox
b. Configure pve-redirect do apache2
c. restart o apache

aptitude install proxmox-ve-2.6.32

a2ensite pve-redirect.conf

/etc/init.d/apache2 restart

Instale o resto pacotes necessários:

aptitude install ntp ssh lvm2 postfix ksm-control-daemon vzprocps open-iscsi

Aceite a sugestão para remover Exim e configurar postfix de acordo com a sua rede.

Conectar-se à Proxmox VE interface web

Conecte-se à interface de administração web (https: // seuEndereçoIP: 8006) e configurar o vmbr0 e rever todos os outros ajustes, finalmente reiniciar para verificar se tudo está funcionando conforme o esperado.


Dica: Tenha o java instalado

Opcional: estações de trabalho do desenvolvedor com Proxmox VE e X11

Proxmox VE é usado principalmente como plataforma de virtualização com nenhum software adicional instalado. Em alguns casos, faz sentido ter um desktop completo em execução no Proxmox VE, por exemplo, para desenvolvedores que usam Proxmox VE como sua principal estação de trabalho / área de trabalho.

Por exemplo, basta instalar área de trabalho lxde:

  aptitude install lxde libcurl3

Certifique-se de network-manager não é usado, o mais PVE-cluster não será iniciado

  purga de aptidão network-manager

Para obter um navegador moderno, o Google Chrome é uma boa idéia – baixar o 64-bit Chrome do Google, também instalar o Oracle (Sun) Java, consulte Java_Console_ (Ubuntu)

Veja também vídeos sobre PROXMOX.

http://www.proxmox.com/en/training/video-tutorials/item/install-updates

Leia mais: Web: http://www.proxmox.com
Wiki Proxmox VE: http://pve.proxmox.com/wiki

Roteiro: http://pve.proxmox.com/wiki/Roadmap
Fórum Comunitário de Apoio: http://forum.proxmox.com
Daniela Hasler, Proxmox Servidor Solutions GmbH
daniela@proxmox.com
Siga-nos no Google+: https://plus.google.com/+proxmox

Comentário: Sensacional!!!


Abra sua empresa e assine o Azure parte I

Hoje sabemos que não é fácil abrir um negócio aqui no Brasil e mante-lo financeiramente com saúde.

azure

Então reduza seus custos assinando serviços de nuvem. Não faça nenhuma contratação sem ver este vídeo que está na parte I.
Manter hardware, nobreak, serviços de backup, contratação de serviços de gerenciamento e custoso manter dentro de seu escritório.

Tudo isso na nuvem simplifica, sem dor de cabeça centralizado.

Eu irei demonstrar com Azure, Active Directory e VPN que tudo pode ser simplificado e com acesso de qualquer lugar.

Manter um só servidor internamente no minimo plausível é:

  • Orçamento de hardware Servidor
  • Orçamento de switch
  • Orçamento de PatchPanel
  • Orçamento de Rack
  • Orçamento de cabeamento
  • Orçamento para Nobreak
  • Orçamento de Sistema Operacional
  • Orçamento de Licenciamento de usuários
  • Orçamento para implantação física de todos equipamentos
  • Orçamento para implantação e configuração lógica do sistema operacional, e os serviços para manter no ar.
  • Orçamento para Sistemas e banco de dados caso for usar.

    Caso a empresa for um pouco maior precisará ter um Nobreak redundante ou até um gerador.

Mas estamos lhe dando com coisas básicas para manter um servidor no ar.
Tudo isso sem contar caso você não saiba fazer tudo isso você vai ter que contratar um profissional, ou uma empresa para fazer e manter no ar. Com manutenção preventiva e melhorias.

Com o tempo há a depreciação de tudo e ainda o lifecicle do software e do sistema operacional.

Ainda vem uma melhoria do tempo que é a virtualização com Hyper-V da Microsoft, Vmware da Dell, XenServer da Citrix que melhorou em redução de espaço fisico e nivel energético no gasto de custos.

Bota tudo isso no lápis e vê o quanto custa manter um parque tecnológico. E depois em 5 ou 6 anos atualiza-lo.

A nuvem vem para simplificar e manter você com seu Core Business que é seu negócio e usar a inteligencia da Nuvem ao seu favor com redução de custos e menos dor de cabeça.

Veja na arquitetuta que é simples de administrar e manter.

untitled

No video estou explicando um modo facil de qualquer pessoa entender como é simples manter um Active Directory no Azure com VPN.

Veja a primeira parte do video que vai ser legal e proveitoso.

 

 

Powershell agora é OpenSource

Microsoft: PowerShell agora é open-source | Fonte do windows_powershell-696x522BABOO

A Microsoft anunciou hoje que o PowerShell agora é open-source e que ele também terá versões para Mac OS e Linux.

O repositório já está disponível no GitHub. Confira aqui.

A versão para Linux é compatível inicialmente com o Ubuntu, CentOS e Red Hat e a versão para Mac OS é compatível com o OS X 10.11.

PowerShell

O PowerShell é um shell de linha de comando e uma linguagem de script criado para ajudar os profissionais de TI no controle e automação da administração de sistemas operacionais Windows/Windows Server e de aplicativos executados nestes sistemas operacionais, como o Office.

Para os desenvolvedores, ele usa um conjunto extensível de classes do .NET Framework que permite a criação de cmdlets personalizados, aplicativos de host e utilitários.

Microsoft: PowerShell agora é open-source
PowerShell no Windows 10 v1607

De acordo com a Microsoft o núcleo e os cmdlets serão os mesmos no PowerShell para Windows, Linux e Mac. Alguns cmdlets que usam recursos do Windows não estarão disponíveis nas outras plataformas e scripts escritos para Windows terão que ser modificados para que funcionem no Linux e Mac.

A empresa confirmou que ainda está trabalhando para finalizar os recursos com foco em acesso remoto na versão para Linux. Quando este trabalho for concluído, os administradores poderão usar o PowerShell no Windows para gerenciar remotamente múltiplos sistemas com Linux.

Eles também poderão gerenciá-los no AWS (Amazon Web Services), graças à uma parceria entre a Microsoft e a Amazon, seu maior concorrente no mercado de computação em nuvem. Os novos cmdlets do AWS possibilitarão o gerenciamento de serviços na nuvem.

A VMware também firmou uma parceria com a Microsoft para lançar novos cmdlets que funcionarão nas outras plataformas e não apenas no Windows.

Vídeo falando sobre o PowerShell open-source e a versão para Linux:

Azure RemoteApp será descontinuado

Olá pessoal.

A microsoft decidiu com o time do Azure RemoteApp descontinuar a plataforma.

Terá um periodo de migração para seus clientes e a aliança com A Citrix XenApp.

landing_xenapp

Esta aliança foi feita para melhorar a experiencia de vistualização de aplicações no qual a Citrix é especialista e virtualização de Desktop.

A oferta ainda será até 01 de Outubro e manter até 31 de Agosto do ano que vem seus clientes.

A opção atual é migrar para solução de RDS IaaS ou migrar já para solução da Citrix.

Veja na integra o anuncio abaixo:

https://view.email.microsoftemail.com/?j=fe9910747360057f74&m=fe621570756503797d1c&ls=fe211276716d067d711d76&l=fec21c767365017e&s=fe1c1c757c670775731677&jb=ff901378&ju=fe581d73736106747410

Veja no Blog:

Application remoting and the Cloud

 

landing_xenapp