Estender volume básico no Windows Server

Olá amigos, tudo bem?

Vejo muitos usuários com dificuldade em realizar o processo de expansão de disco em um servidor Windows Server, principalmente por usarem o Windows Server em algum provedor de cloud na qual o simples processo de realizar o upgrade de disco na vm não acaba realizando a expansão do disco dentro do SO.

O processo é bem simples, se você já realizou o upgrade do disco na maquina virtual você pode abrir o Server Manager conforme imagem abaixo que é encontrado no menu iniciar e no Windows Server o mesmo também está presente na barra de tarefas:

Com o server Manager aberto precisamos acessar o Computer Management aonde vamos ter acesso aos discos conforme a imagem abaixo:

No Computer Management você consegue encontrar o Disk Management aonde vai encontrar o disco na qual você pretende extender:

O disco deve aparecer como “Unallocated” pois o mesmo não está alocando ainda, ou caso a quantidade de disco adicionada não apareça você pode rodar um scan nos discos para validar:

Bem simples o processo até o momento né? Agora basta selecionar o seu disco e escolher a opção de “Extend Volume”

O processo vai abrir um Wizard conforme abaixo:

Dando sequencia nesse Wizard vamos ver que o disco que adicionamos vai estar como disponível , e você pode selecionar mesmo para realizar a expanção:


Prontinho, processo realizado e o disco foi expandido:

Simples não é, futuramente colocarei como realizar esse processo via PowerShell que tambem é simples.

Abraços

Continue Reading

Melhores praticas com Windows Server 2016 e 2019 no Vmware

Olá amigos, tudo bem?

Recentemente passamos por uma situação na qual tivemos que envolver tanto a engenharia da Vmware como fabricante de Hardware e engenharia da Microsoft.

Servidores rodando Windows Server 2019 e 2016 entrava em congelamento seguido de tela azul. Depois de quase um mês em trabalho em conjunto com todos os fornecedores chegamos a conclusão que o problema é a soma de varias boas praticas que precisavam ser adotadas no Windows.

Primeiro trabalho com o fabricante de Hardware e Vmware foi descartar qualquer problema vindo do SAN, Storage ou Servidores utilizados, vale apena comentar que o problema acontecia em clusters diferentes com modelos de servidores diferentes. Apos todos os meios físicos validados partimos para validação do SO juntamente com a Microsoft e o fabricante do Hardware, aonde foi encontrado o log do Windows que no momento do congelamento apresentava BugCheck .

Interessante comentar que no Vmware não gerava nenhum log de erro ou problema, a Vmware estava conectada no ambiente e não visualizava problema que poderia causar aquele sintoma.

Nesse momento começamos a identificar que existia updates e ajustes do lado do Vmware quanto da Microsoft como:

Executar o Windows Update nas VMs e garantir que o kb4550969 foi aplicado.
https://support.microsoft.com/en-us/help/4550969

Atualizar o VMware Tools para a versão mais recente.
https://docs.vmware.com/en/VMware-Tools/11.0.0/com.vmware.vsphere.vmwaretools.doc/GUID-B632D26F-410A-43C9-9BFD-21EBB21DE397.html

Verificar as propriedades das VMs e garantir que o VBS (Virtualization-based Security) está ativado.
https://docs.vmware.com/en/VMware-vSphere/6.7/com.vmware.vsphere.security.doc/GUID-84BDD44A-0588-492D-A312-A2648BEBA12C.html

Configurar as VMs para usar o Paravirtual controller conforme descrito no artigo abaixo:
https://kb.vmware.com/s/article/1010398

Utilizar adaptador de rede Vxnet3 (mais performático e não é emulado)
https://kb.vmware.com/s/article/1001805?lang=pt_PT

Outro ponto muito importante foi a remoção do Snapshot, mas porque? Muitos clientes pensam que Snapshot é backup, porem ele pode causar mais problema para a vm do que gerar segurança.
Por boa pratica uma maquina de produção ligada pode ter um snap de no máximo 72 horas, e isso não era uma verdade pois tínhamos clientes com snap maior de três meses.
Se o backup é necessário deve ser usado alguma ferramenta especifica como Veeam ou outros players com a finalidade de backup.

Deixo abaixo a KB sobre as melhores praticas que foram comentadas a cima de SnapShot.
https://kb.vmware.com/s/article/1025279?lang=pt_PT

Por entregarmos o Vmware Cloud para os clientes tivemos que adotar o bloqueio do deploy por ISO e adotar o template seguindo as melhores praticas, com isso não tivemos nenhum problema de congelamento que antes era frequente .

Essa documentação do Vmware é muito boa para ajudar a seguir as melhores praticas e performance do ambiente.

https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/performance/vsphere-esxi-vcenter-server-67-performance-best-practices.pdf

Qualquer duvida fico a disposição. Abraços

Continue Reading

VMware vSphere 7.0

Olá amigos, tudo bem?

Ontem dia 02/04/2020 saiu a nova versão tão aguardada do Vmware Vspher 7.0 juntamente com Vcenter Server e vSan.

Com ele muitas pessoas já estão atualizando seus laboratórios e hosts para estudar a nova versão disponibiliza. Porem achei valido vir falar sobre algumas novidade que achei interessante.

Gestão de atualizações do vCenter Server

Os principais recursos aqui incluem:

  • Notificações do cliente quando uma atualização está disponível.
  • Você pode ver o que a atualização impacta quando realizada.
  • Um verificador de pré-atualização está disponível para realizar uma validação completa na sua atualização.

Um novo validador interno de disponibilidade para verificar se uma versão de especifica do vCenter Server ainda é compatível com todas as suas soluções VMware existentes que estão integradas ao seu vCenter Server.

Achei essa parte muito bacana, principalmente por ter soluções como NSX, VCloud Director , Usage Meter entre outros.

Gerenciador de recursos distribuídos (DRS)

No passado, o DRS era aplicado no nível do cluster, que migrava Máquinas Virtuais a cada 5 minutos, se detectava um desequilíbrio do cluster.

Atualmente, é tudo sobre o aplicativo, portanto, a VMware fez muitas melhorias no DRS para se concentrar mais no aplicativo, e não no host.

Isso resulta em uma alteração na funcionalidade do DRS:

O DRS calcula uma pontuação de DRS da VM com base na capacidade de desempenho da VM. Esse cálculo é centrado na VM, e não no host.
Por exemplo, as métricas da VM são usadas para calcular a pontuação do DRS da VM.

Em resumo, isso significa que uma VM será movida para outro host no cluster, se ajudar no desempenho. Isso contrasta com o modo como funcionava no passado, onde o gatilho está se um host estiver ocupado

vSphere com Kubernetes

Uma das partes que mais esperava era essas novas funções no Vmware.

Nesta arquitetura do VMware vSphere, o VMware essencialmente combinou os recursos do software vSphere tradicional com o Kubernetes. Essa mudança foi fundamental para impulsionar a infraestrutura virtual do vSphere a permitirá que seja igualmente adepto da execução de contêineres e máquinas virtuais.

A nova funcionalidade que permite a integração do Kubernetes não é fornecida por uma VM do cluster como era implantado nas soluções anteriores do vSphere. Faz parte do próprio hypervisor. Além do suporte ao Kubernetes, existem muitos outros ótimos recursos encontrados na versão vSphere 7, incluindo os seguintes:

  • Gerenciamento simplificado do ciclo de vida
  • Recursos de segurança intrínseca
  • Aceleração de aplicativo
Nova Logo do Vmware com Kubernetes

Pensamentos

A VMware nunca decepciona e o vSphere 7 é uma versão na minha opnição que veio para revolucionar com muitos novos recursos excelentes. A VMware focou completamente o vSphere no Kubernetes. Isso atenderá às novas operações de TI e aos desenvolvedores.

O VMware vCenter Server 7 oferece ótimos novos recursos, incluindo perfis do vCenter Server, gerenciamento de ciclo de vida do vCenter Server e muitos outros aprimoramentos no DSR, Vmotion e gestão de rede.

O SDS fica ainda melhor nesta versão. A nova versão do vSAN continuará a simplificar as operações e o gerenciamento do ciclo de vida do vSAN, além de estender os serviços oferecidos nativamente pelo vSAN, como os novos serviços de arquivo.

Por fim , esta é uma excelente nova versão com muitos recursos de última geração para os datacenters.

Qualquer duvida estou a disposição

Abraços

Continue Reading

Instalando Docker CE no CentOS 8 / RHEL 8

Olá amigos, tudo certo?

Estou sumido a quase 7 meses depois de iniciar em meu novo emprego em um Datacenter 🙂

Vamos falar um pouco sobre Container e como instalar o Docker CE no CentOS 8 e RHEL 8 .

Oque na minha opinião foi um erro é que nas ultimas versões de ambas distribuições o pacote do docker foi removido de seus repositórios padrão. Detalhe, foi trocado pelo podam e buildah.

O Docker está disponível em duas versões.

  • Docker CE (Community Edition)
  • Enterprise Edition (EE)

Requisitos de sistema para o Docker CE

  • CentOS minimo 8 / RHEL 8
  • Privilegios sudo ou root
  • Conexao com internet

Vamos iniciar o processo de instalação.

Etapa 1: Habilitar o Repositório do Docker CE

Execute o comando dnf para ativar o repositório de pacotes Docker CE.

dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

Etapa 2: Instalar Docker CE com comando DNF

Depois que o repositório do Docker CE tiver sido configurado com êxito, execute o seguinte comando para verificar qual versão do docker está disponível para instalação:

dnf list docker-ce

Agora, use o comando abaixo dnf para instalar a versão mais recente do docker:

dnf install docker-ce --nobest -y

Após a instalação do docker, inicie e ative seu serviço usando os seguintes comandos systemctl:

systemctl start docker
systemctl enable docker

Execute o comando abaixo para verificar a versão do docker instalado:

docker --version

Sucesso amigos, assim vocês já estão com o Docker instalado em um servidor para começar a brincar com o Docker.

Nos próximos posts devemos ver como criar um cluster com Swarm.

Qualquer duvida só avisar.

Continue Reading

Squid no Linux CentOS 7

Olá amigos.

O Squid é um servidor proxy que suporta HTTP, HTTPS, FTP e outros. Ele reduz a utilização da conexão e melhora os tempos de resposta fazendo cache de requisições frequentes de páginas web numa rede de computadores. Ele pode também ser usado como um proxy reverso.

Hoje vamos ver como instalar e configurar o Squid no Centos 7. Em muitas das situações que me deparei referente a chamados de liberação de site em nosso firewall de produção a mais eficiente solução foi instalar um proxy em uma maquina virtual e apontar a aplicação ou site com problemas de acesso dentro da nossa rede para monitorar as conexões.Sei que não é o adequado mas o Squid te da uma visualização fácil dos logs de requisição que estão chegando no servidor, com isso conseguimos fazer as liberações no Firewall de produção de maneira adequada.

Vamos começar pelo SO:

  • Atualizando seu sistema

É importante sempre manter o sistema atualizado.

yum -y update
  • Instalando o Repositório Epel

Em seguida instalamos o repositório Epel para termos uma efetividade melhor na busca de pacotes no sistema do CentOS.

yum -y install epel-release
  • Desativando o Selinux e o FirewallD

Para desativar o SELinux no CentOS 7, digite:

sed -i 's/enforcing/disabled/g' /etc/selinux/config /etc/selinux/config

O próximo passo é desativar o FirewallD.

systemctl disable firewalld.service

Vamos aproveitar e dar um “stop” no serviço do FirewallD que está em execução.

systemctl stop firewalld.service
  • Instale o SQUID

Para realizar a instalação do squid é muito simples. Buscamos o pacote direto dos repositórios.

yum -y install squid
  • Configurando o SQUID

Agora vamos efetuar as configurações do SQUID no ambiente Linux CentOS. O primeiro passo a fazer é um backup do arquivo squid.conf.

cp -Rfa /etc/squid/squid.conf{,.bkp}

Agora vamos acessar o diretório de configuração do SQUID.

cd /etc/squid/

Vamos excluir o arquivo “squid.conf” para que possamos criar um arquivo novo e limpo.
Só não esqueça de efetuar o backup do arquivo original conforme explicado acima.

rm -rf squid.conf

Na sequência criamos um novo arquivo de configuração.

Você pode optar por criar o arquivo do modo mais tradicional, utilizando o comando “touch”, ou simplesmente criar um arquivo novo diretamente com o “vi/vim”.
Prefiro utilizar o “vim”.

vim squid.conf

Obs.: Lembrando que estamos no diretório de configuração do squid “/etc/squid/”.

Abaixo segue o conteúdo do “squid.conf”

## DEFINE A PORTA DE CONEXAO DO SQUID
http_port 3128
 
## DEFINE O TAMANHO MAXIMO DE UM OBJETO PARA SER ARMAZENADO EM CACHE ##
maximum_object_size 4096 KB
 
## DEFINE O TAMANHO MINIMO DE UM OBJETO PARA SER ARMAZENADO EM CACHE ## 
minimum_object_size 0 KB
 
## DEFINE O TAMANHO MAXIMO DE UM OBJETO PARA SER ARMAZENADO EM CACHE DE MEMORIA ## 
maximum_object_size_in_memory 64 KB
 
## DEFINE A QUANTIDADE DE MEMORIA RAM A SER ALOCADA PARA CACHE ## 
cache_mem 512 MB
 
## AJUSTA A PERFORMANCE EM CONEXOES PIPELINE ##
pipeline_prefetch on
 
## CACHE DE FQDN ##
fqdncache_size 1024
 
## OPCOES DE REFRESH PATTERN ##
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320
 
## DEFINE A PORCENTAGEM DO USO DO CACHE ## 
cache_swap_low 90
cache_swap_high 95
 
## ARQUIVO DE LOGS DO SQUID ## 
access_log /var/log/squid/access.log squid
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
 
## DEFINE O LOCAL DO CACHE ##
cache_dir ufs /var/spool/squid 1600 16 256
 
## CONTROLE DE ROTACAO DOS ARQUIVOS DE LOGS ##
logfile_rotate 10
 
## ARQUIVO ONDE CONTEM OS ENDERECOS LOCAIS DA REDE ##
hosts_file /etc/hosts
 
## ACLS - PORTAS PADROES LIBERADAS ##
acl SSL_ports port 80 #HTTP
acl SSL_ports port 443 #HTTPS
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT
 
### DEFININDO MODO DE AUTENTICACAO
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/usuarios
auth_param basic children 5
auth_param basic realm "DIGITE SEU USUARIO E SENHA PARA ACESSO A INTERNET:"
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
 
### ACL PARA GARANTIR A AUTENTICACAO DO USUARIO NOS SITES ###
acl autenticados proxy_auth REQUIRED
 
## BLOQUEIA O ACESSO UNSAFE PORTS ##
http_access deny !Safe_ports
 
## Deny CONNECT to other than secure SSL port ##
http_access deny CONNECT !SSL_ports
 
## SITES BLOQUEADOS PARA ACESSO ##
acl sites-bloqueados url_regex -i "/etc/squid/regras/sites_bloqueados"
 
## SITES LIBERADOS PARA ACESSO ##
acl sites-liberados url_regex -i "/etc/squid/regras/sites_liberados"
 
## DEFININDO A ORDEM DAS REGRAS - ACLS ##
http_access deny sites-bloqueados
http_access allow sites-liberados
http_access allow autenticados
http_access deny all
http_reply_access allow all
icp_access allow all
miss_access allow all
 
## NOME QUE IRA APARECER NA TELA DE ERRO OU BLOQUEIO DO SQUID ##
visible_hostname proxy.techpoli.info
 
## DIRETORIO DAS PAGINAS DE ERROS ##
error_directory /usr/share/squid/errors/pt-br
 
## OUTRAS OPCOES DE CACHE ##
cache_effective_user squid
coredump_dir /var/spool/squid

Após salvar o arquivo (Se você utilizou o vi/vim para salvar e sair do arquivo utilize: ESC + as teclas :wq)

O próximo passo é criar um diretório para armazenar as regras, ou seja, as ACL’s do nosso squid.

 mkdir /etc/squid/regras

Se você leu o “squid.conf” notou que temos duas ACL’s prontas na configuração.

ACL para sites bloqueados => /etc/squid/regras/sites_bloqueados
ACL para sites liberados => /etc/squid/regras/sites_liberados

Vamos criar esses arquivos dentro do diretório de regras.

touch /etc/squid/regras/sites_bloqueados
touch /etc/squid/regras/sites_liberados

Vamos colocar alguns sites na lista de bloqueados.

echo ".techpoli." >> /etc/squid/regras/sites_liberados
echo ".uol." >> /etc/squid/regras/sites_liberados
echo ".terra." >> /etc/squid/regras/sites_liberados

Veja o conteúdo do arquivo:

cat sites_liberados 

O mesmo procedimento vamos estar efetuando para os sites_bloqueados.

echo ".globo." >> /etc/squid/regras/sites_bloqueados
echo ".facebook." >> /etc/squid/regras/sites_bloqueados
echo ".web.whatsapp.com." >> /etc/squid/regras/sites_bloqueados

Veja o conteúdo do arquivo de sites bloqueados.

cat sites_bloqueados 

Note que utilizei o formato “.site.” o ponto antes da palavra pega qualquer sub-domínio do site, e o mesmo após o domínio pega qualquer sub-página por exemplo.

Vamos ajustar a permissão na pasta “regras” para o squid.

chown -Rf squid:squid /etc/squid/regras/
  • Configurando a Autenticação Local

No squid teremos a autenticação local, ou seja, teremos um arquivo responsável por armazenar os logins e senhas dos usuários.

Para criar esse arquivo vamos precisar instalar o Apache2 no CentOS, vamos utilizar um complemento do Apache2 chamado “htpasswd”.

yum -y install httpd

Não é necessário nem iniciar o serviço do Apache, vamos criar o arquivo de logins e senhas.

Criando os usuários com o comando “htpasswd”

Utilize o comando abaixo, somente pela primeira vez, para criar o arquivo:

O parâmetro “-c” na linha abaixo indica que o comando crie o arquivo e em seguida o usuário informado.

htpasswd -c /etc/squid/usuarios geraldo

Para os demais usuários utilize:

htpasswd /etc/squid/usuarios geraldo.poli

Analisando o arquivo criado:

cat /etc/squid/usuarios 
geraldo:$apr1$bkV/Ho2E$lTFiX31f.GUPnXHbOUuqd.
geraldo.poli:$apr1$wuTx5YlN$EbVodnSgzKdrFpYANo7I21
  • Iniciando o SQUID

Agora vamos criar o diretório de cache do squid.

squid -z

Em seguida iniciamos o serviço do Squid.

systemctl start squid

Verificando o Status do sistema:

 systemctl status squid
● squid.service - Squid caching proxy
   Loaded: loaded (/usr/lib/systemd/system/squid.service; enabled; vendor preset: disabled)
   Active: active (running) since Wed 2019-06-19 13:29:19 EDT; 19h ago
  Process: 5229 ExecStart=/usr/sbin/squid $SQUID_OPTS -f $SQUID_CONF (code=exited, status=0/SUCCESS)
  Process: 5218 ExecStartPre=/usr/libexec/squid/cache_swap.sh (code=exited, status=0/SUCCESS)
 Main PID: 5243 (squid)
   CGroup: /system.slice/squid.service
           ├─5243 /usr/sbin/squid -f /etc/squid/squid.conf
           ├─5245 (squid-1) -f /etc/squid/squid.conf
           └─5274 (unlinkd)

Jun 19 13:29:19 bra01squid01.local systemd[1]: Starting Squid caching proxy...
Jun 19 13:29:19 bra01squid01.local squid[5243]: Squid Parent: will start 1 kids
Jun 19 13:29:19 bra01squid01.local systemd[1]: Started Squid caching proxy.
Jun 19 13:29:19 bra01squid01.local squid[5243]: Squid Parent: (squid-1) proce...d
Hint: Some lines were ellipsized, use -l to show in full.

Vamos deixar o squid configurado para iniciar junto ao boot do sistema linux.

systemctl enable squid
  • Testando o funcionamento do SQUID

Para testar o servidor Squid insira o IP e porta nas configurações de proxy do navegador.

Visite um site na lista de bloqueados, globo.com por exemplo, veja o resultado abaixo:

Digite o login e senha de acesso criado nos passos anteriores:

Acessando o site globo.com que está na lista de bloqueados.

Acompanhe os logs de acessos.

tail -f /var/log/squid/access.log 

1561035035.315      0 192.168.0.209 TCP_DENIED/403 4157 GET http://g1.globo.com/favicon.ico - HIER_NONE/- text/html
1561035035.318      0 192.168.0.209 TCP_DENIED/403 4157 GET http://g1.globo.com/favicon.ico - HIER_NONE/- text/html

Veja nos logs que o acesso foi negado pelo SQUID, TCP_DENIED/403 no domínio na lista de proibidos.

A configuração do SQUID é em cima de ACL, sabendo o funcionamento e a ordem de como utilizar as ACL no SQUID é possível bloquear downloads, liberar ou bloquear usuários ou endereços IPs e muito mais.

Dúvidas, comentário e sugestões só avisar.
Valeu! e até a próxima!

Continue Reading