Postagens

Mostrando postagens de janeiro, 2023

Migrar Replicação do SYSVOL de FRS para DFS

Imagem
Com do lançamento do Windows Server 2019, começamos a ter contato com a primeira versão do ADDS (Active Directory Domain Services) que não suporta a execução da replicação do SYSVOL utilizando FRS. Até a versão 2016, havia um aviso de que o FRS estava descontinuado, mas ainda assim era permitido incluir um servidor Domain Controller com Windows Server 2016 em um domínio que ainda usava o FRS. A partir da versão 2019 isso não é mais possível. Quando você tenta incluir um servidor executando o Windows Server 2019 em um domínio em que o SYSVOL está sendo replicado via FRS, será exibida a mensagem de erro abaixo. Verification of replica failed. The specified domain {Domain-Name} is still using the File Replication Service (FRS) to replicate the SYSVOL share. FRS is depreciated. The server being promoted does not support FRS and cannot be promoted as a replica into the specified ...

Como Realizar Backups Manuais com Shadow Copy

O Shadow Copy é uma funcionalidade que foi introduzida inicialmente no Windows Server 2003 e permite gerar uma espécie de imagem (foto) de um estado de um disco. Essa imagem permite que todos os arquivos possam ser lidos, mesmo quando estão abertos por outros processos. Para garantir que não apenas os arquivos possam ser lidos enquanto abertos por outros processos, mas que também contenham dados íntegros, foram criados os 'Writers'. Existem diversos 'Writers' que são como drivers que fornecem uma interação do Shadow Copy com aplicações e módulos específicos do sistema. Como por exemplo, existem Writers para SQL Server, Exchange, IIS, Registry, etc. Esses Writers interagem com as respectivas aplicações e seus arquivos de dados, instruindo as aplicações e sistemas a descarregarem os dados que estão em memória para o disco e deixando os arquivos em um estado consistente. Dessa forma, os arquivos podem ser copiados e armazenados como back...

Atualizando Hosts Standalone do VMware ESXi

Imagem
Quando se está utilizando o VMware ESXi como virtualizador sem o auxilio do vCenter para fazer a gestão, o processo de atualização e aplicação de patches pode ser um pouco complicada. Nesse post vou mostrar duas formas de fazer essa atualização. As duas formas precisam ser executadas via linha de comando no host, portanto habilite o acesso SSH no ESXi antes de iniciar. Também é necessário que o host esteja em modo de manutenção e todas as VMs desligadas. A primeira forma, que teoricamente é a mais simples, envolve atualizar automaticamente baseado no profile do host. Identifique a versão atual do VMware ESXi: # esxcli system version get Depois verifique qual o Image Profile do Host: # esxcli software profile get Habilite o acesso internet a partir do host ESXi, liberando nas regras de firewall local. Caso necessário, libere também o acesso no seu firewall de borda. # esxcli network firewall ruleset set -e true -r httpClient ...

Configurando Proxy Reverso para Websocket no Apache

Em um post anterior mostramos como configurar o Apache como um Proxy Reverso, permitindo publicar sites hospedados em um servidor interno ou em sua DMZ externamente, sem expor diretamente esse servidor para acessos externos. No entanto, caso a aplicação web hospedada no servidor de backend utilize o protocolo Websocket para manter uma conexão permanente entre cliente e servidor, são necessárias algumas configurações adicionais. Basicamente, para que o Apache possa fazer corretamente o Proxy desse protocolo, é necessário utilizar o RewriteEngine para que quando seja identificado no cabeçalho HTTP enviado pelo cliente uma solicitação de "Upgrade" para Websocket, seja realizada a reescrita da requisição usando o endereço do servidor backend da aplicação. RewriteEngine on RewriteCond %{HTTP:Upgrade} websocket [NC] RewriteCond %{HTTP:Connection} upgrade [NC] RewriteRule ^/?(.*) "wss://localhost:8443%{REQUEST_URI}" [P,L] As c...

Configurando Proxy Reverso no Apache

Existem diversas situações que podem requerer a configuração de um proxy reverso. As mais comuns que encontramos no nosso dia-a-dia são para criar uma camada adicional de proteção para um servidor que pode estar rodando um software mais antigo e não apresentar nível de segurança suficiente para ficar exposto na internet. Outra situação é configurar um balanceamento de carga entre servidores de aplicação, ficando o proxy reverso na função de centralizar as conexões e distribuí-las para os servidores de aplicação disponíveis. A configuração mais simples é a que possui apenas um servidor de aplicação como backend sendo acessado pelo proxy reverso. Sua configuração requer apenas as instruções abaixo. ProxyPass "/" "http://localhost:8080/" ProxyPassReverse "/" "http://localhost:8080/" Essas instruções devem, preferencialmente, estar dentro de um VirtualHost, para evitar confusões com outros sites que o Apache poss...

Redimensionando partições de disco no Linux

Recomendo usar o utilitário "parted", pois o "fdisk" precisa remover e recriar a partição. O risco é muito maior de dar problema. No exemplo abaixo vamos redimencionar a partição 2 do disco /dev/sda para ocupar todo o espaço livre existente no disco. Esse espaço foi gerado quando o disco foi aumentado no VMware (ou outro virtualizador qualquer) ou quando fez um clone para um disco maior. # parted /dev/sda GNU Parted 3.2 Using /dev/sda Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) print Model: VMware Virtual disk (scsi) Disk /dev/sda: 268GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 1049kB 1075MB 1074MB primary ext4 boot 2 1075MB 172GB 171GB primary lvm (parted) resizepart 2 100% (parted) print Model: VMware Virtual disk (scsi) Disk /dev/sda: 268GB Sector size (logical/physical): 512B/512B Part...

Como alterar configurações de Filesystems exportados via NFS sem reiniciar o serviço

Nesse post vou mostrar como você pode alterar as configurações de um filesystem exportado via NFS, adicionar novos filesystems para exportar, ou removê-los sem ter que reiniciar o serviço do NFS. Como os caros colegas já devem estar cansados de saber, para exportar filesystems via NFS (vulgo compartilhar diretórios), deve-se criar entradas no arquivo  /etc/exports . Cada filesystem exportado deve ser colocado em uma nova linha do arquivo juntamente com as configurações de exportação. Algo como o exemplo abaixo. [root@linuxserver01 ~]# cat /etc/exports /bkp/dumps 192.168.0.21(rw,no_root_squash) /isoimagem *(ro,no_root_squash) /publico *(rw,no_root_squash) A questão é que não basta alterar esse arquivo para que as alterações entrem em vigor. De uma forma geral o processo do NFS Server lê as configurações desse arquivo apenas quando ele é iniciado. Dessa forma vejo vários colegas reiniciando o serviço NFS para que as alterações sejam efetivadas. O p...

Linux: Alterando discos e partições sem reiniciar

Caso tenha alterado o tamanho de um disco, por exemplo, aumentando o tamanho de um disco já existente em uma VM, use o comando abaixo para forçar o kernel do linux a reler as informações do disco. # echo 1 > /sys/class/block/sdd/device/rescan Sendo que "sdd" no comando acima é o dispositivo do disco que teve o tamanho alterado. Caso tenha incluído ou removido um ou mais discos do servidor, utilize o comando abaixo para forcar uma releitura nos barramentos das controladoras por alterações de dispositivos. É importante ressaltar que o comando abaixo não tem nenhum efeito no caso de alteração de tamanho para um disco já reconhecido previamente pelo sistema. # for host in /sys/class/scsi_host/*; do echo "- - -" | tee $host/scan; lsblk -S ; done Após utilizar os comandos acima e os discos estarem devidamente reconhecidos com os tamanhos corretos, é possível seguir com a criação e/ou redimensionamento do sistema de arquivos.

Configurar RedHat 5 para utilizar o repositório do CentOS 5 no Vault

Antes de mais nada é preciso dizer que não é recomendado utilizar uma versões tão antiga do RedHat/CentOS, principalmente se ela estiver acessível publicamente na Internet, visto que são versões já sem suporte à algum tempo e que não estão recebendo atualizações de segurança que podem ser críticas. Mas se por qualquer necessidade você precisa utilizar essa versão, este procedimento pode ser útil. Principalmente se você utiliza o RedHat e não possui uma subscription ativa. Aviso: Não execute esse procedimento em instalações RedHat que estejam em produção. Apesar do CentOS ser teoricamente uma 'cópia' do RedHat, compilado a partir dos mesmos códigos fonte, ainda assim é possível que em nível binário existam diferenças que quebrem a aplicação que está rodando no servidor. Limpando cache local do yum: # yum clean all Baixando pacotes mais recentes do release do CentOS 5, do YUM e da lista de mirrors: # wget http://vault.cento...

Criar ASM Diskgroups dentro de volumes NFS

Imagem
Neste artigo vou abordar a utilização de arquivos em volumes NFS como discos ASM. A ideia dessa configuração surgiu da minha necessidade de montar um ambiente de laboratório com Oracle 12c em RAC usando o Hyper-V do meu notebook. Como o Hyper-V não suporta (até o momento em que este post foi criado, em 2016) o compartilhamento de discos entre VMs quando usados apenas discos locais, foi necessário buscar um método alternativo para criar o ambiente. Dessa forma, além das duas máquinas virtuais para os hosts do RAC, criei mais uma para ser o servidor NFS. Aviso: Apesar da utilização de arquivos em volumes NFS como discos ASM ser uma configuração suportada pela Oracle, ela deve ser utilizada com muita cautela, principalmente se pretende usá-la em produção. A utilização de volumes NFS requer a montagem no modo "hard", o que faz com que a instância ASM ou o Database esperem indefinidamente por uma resposta do servidor NFS quando este fica...

Configurar Instâncias Oracle com Linux HugePages

Os Sistemas Operacionais Linux possuem uma funcionalidade muito interessante chamada de HugePages, que quando usada por um banco Oracle oferece grandes ganhos de performance. HugePages consiste em tornar os blocos de alocação de memória muito maiores do que os 4KB padrão. No Linux os HugePages possuem 2MB por padrão. Outra vantagem é que os HugePages são sempre alocados na memória física e nunca vão para a área de swap. Na verdade esses blocos de memória sequer são considerados como candidatos a ir para swap. Configuração A primeira coisa a ser feita para a configuração é identificar quanta quantidade de memória você necessita para ser usada como HugePages. No caso de uma instância Oracle você deve alocar uma quantidade de memória suficiente para acomodar todo o seu SGA. Para isso use a fórmula abaixo. X = Y / Z Onde: X: Quantidade de HugePages necessárias Y: Tamanho do seu SGA também em KB Z: Tamanho do HugePage em KB Obs.: Uma dica é ...

Duplicando um Database Oracle à partir de um backup

Imagem
Essa atividade é normalmente referida como Duplicação da base (duplicate database) ou Clone da base (clone database) e consiste basicamente em criar uma copia do database em uma outra instância, sem afetar o database original. A duplicação pode ser feita de duas formas A partir do database original ativo, chamado de from active database; ou A partir de um backup do database original. Existem várias situações que podem exigir que você crie uma cópia de um Database, entre as mais comuns está a duplicação de uma base de produção para validar a aplicação de um patch importante e de alto risco no ambiente. Outra situação que pode solicitar essa atividade é restaurar uma versão antiga do banco para recuperação de dados que podem ter sido deletados ou expurgados, sendo que essa recuperação tem que ser feita em paralelo à base atual. Nota: Com o lançamento da versão 12c e da feature Multitenant, o processo de duplicação de CDB (container d...

Converter um certificado PFX para o formato PEM

Podemos converter um arquivo de certificado PFX em dois tipo de arquivos PEM: deixando o certificado e a chave privada no mesmo arquivo, conhecido como PEM combinado, ou separando o certificado e a chave privada em arquivos separados. Nos dois casos iremos utilizar o utilitário OpenSSL que possui compilações tanto para Linux quando para Windows. Para converter um certificado PFX em um arquivo PEM combinado, utilize o comando abaixo. # openssl pkcs12 -in certificado.pfx -out certificado.pem -nodes Onde: - certificado.pfx: o arquivo de entrada no formato PFX. - certificado.pem: o arquivo PEM que será gerado, contendo tanto o certificado quando a chave privada. Para converter o certificado PFX para arquivos PEM separados (certificado + chave privada), utilize os comandos abaixo. Extraindo a chave privada: # openssl pkcs12 -in certificado.pfx -nocerts -out certificado.key -nodes Onde: - certificado.pfx: o arquivo de entrada no formato PFX. - c...

Converter um certificado PEM/CRT + KEY para PFX

Para converter um certificado que está no formato PEM/CRT juntamente com o arquivo de chave privada (KEY) em um arquivo PFX, que pode ser usado de forma mais simplificada em ambientes Windows/IIS, precisamos do OpenSSL . Caso esteja usando uma máquina com Linux, ele já estará disponível. Para instalar no Windows baixe a partir deste site . O comando abaixo é que faz a mágica. # openssl pkcs12 -export -out certificado.pfx -inkey privateKey.key -in certificado.pem -certfile CACert.crt Onde: - certificado.pfx: arquivo a ser gerado. - certificado.pem: arquivo com o certificado no formato PEM. Pode estar com a extensão .crt também. - privateKey.key: arquivo com a chave privada do certificado. - CAcert.crt: arquivo com o certificado da entidade certificadora e os certificados intermediários. Este item não é obrigatório. Obs.: um erro que costuma ocorrer é quando algum dos arquivos de entrada (pem, key ou crt) estão codificados com UTF8 BOM. O OpenSSL não...

Conectar em Instâncias BLOCKED ou RESTRICTED via listener

Eventualmente você pode se deparar com a seguinte mensagem de erro: ORA-12528: TNS:listener: all appropriate instances are blocking new connections Essa mensagem ocorre quando você está tentando conectar via listener em um database que foi colocado no estado RESTRICTED ou que foi iniciado no modo NOMOUNT. Obs.: Esse erro não ocorre se você conectar localmente ao database usando o protocolo bequeath (BEQ), ou seja, quando conecta usando "# sqlplus /", pois nessa situação você não está usando o listener. Nas conexões locais o próprio client (sqlplus) realiza um  fork  no  dedicated process  do Oracle e estabelece uma comunicação com ele usando 2 pipes, um para escrita e outro para leitura. Essencialmente é a mesma ação que seria realizada pelo listener para atender uma solicitação de conexão. Esse erro é comum de ocorrer quando está clonando um database devido à necessidade de fazer o RMAN conectar no database "auxiliary" enqua...