Como remover placas de redes no CentOS (Vmware ESXi)

No procedimento de clonagem de uma máquina virtual pode acontecer da eth0 não iniciar, este erro foi comentado aqui.

Pois bem, existe ainda o problema de NICs diferentes, ou seja, suponhamos que na máquina de origem havia 2 placas de rede (eth0 e eth1) e na máquina clone, você só irá utilizar uma única placa (eth0).

Ao realizar o clone, normalmente nenhuma das interfaces de rede é levantada, vejamos como corrigir isso.

1. Utilizando o VSphere Cliente, edite as configurações da máquina virtual e remova todas os Networks Adapters e adicione um novo VMXNET 3 ou E1000.

2. Inicialize a máquina.

3. Estando logado na máquina virtual pelo VCenter Console, execute os seguintes comandos:

# rm -rf /etc/udev/rules.d/70-persistent-net.rules
# rm -rf /etc/sysconfig/networking/devices/ifcfg-eth*
# rm -rf /etc/sysconfig/networking/profiles/default/ifcfg-eth*
# rm -rf /etc/sysconfig/network-scripts/ifcfg-eth*

4. Renicie a máquina. Mesmo que você tente adicionar uma interface de rede neste momento utilizando o comando system-config-network não será possível, pois não será detectado uma interface de rede.

5. Simplesmente crie o arquivo ifcfg-eth0, com o seguinte conteúdo:

# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
ONBOOT=yes
BOOTPROTO=static
NETWORK=192.168.0.0
IPADDR=192.168.0.199
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=192.168.0.2

6. Reinicie novamente a máquina, e ao retornar a eth0 estará ativa e nem sinal da NICs legadas. Você pode inclusive agora usar o setup do CentOS para configurar a rede, normalmente.

Referência:

MySQL ORDER BY RAND() – Qual a melhor forma de fazer?

Essa é uma dúvida que volta e meia aparece nos fóruns, como obter linhas aleatórias em uma query. Normalmente o que vemos é algo assim:

SELECT * FROM tabela ORDER BY rand();

Contudo, o que muitos não sabem é que uma query dessa forma causa um grande impacto na performance do SGBD.

A maneira correta para ordenar os resultados por um número aleatório é:

SELECT *, RAND() as rand FROM tabela ORDER BY rand;

Por quê? Bem, a resposta é realmente muito simples, ORDER BY RAND () faz com que a ordem seja recalculada a cada vez que é buscado uma nova linha pois cada linha RAND () retorna um valor diferente.

Quando usado na seleção o valor é calculado apenas uma vez por linha e os resultados só são ordenados.

Inspiração:
http://www.mysqlperformanceblog.com/2006/09/01/order-by-limit-performance-optimization/

Gerenciar Máquina Virtual no VMware ESXi via console (SSH)

Basicamente para controlar as VMs utiliza-se o comando vim-cmd vmsvc

Primeira coisa, você deve saber o ID da máquina virtual que você deseja manipular:

Listar máquinas registradas:
# vim-cmd vmsvc/getallvms

Visualizar o sumário da máquina:
# vim-cmd vmsvc/get.summary [ID]

Para ligar uma VM:
# vim-cmd vmsvc/power.on [ID]

Para desligar uma VM: 
# vim-cmd vmsvc/power.off [ID]

Para suspender uma VM
# vim-cmd vmsvc/power.suspend [ID]

Existem muitos outros…

Fontes:
http://blogs.vmware.com/vsphere/2011/03/ops-changes-part-6-quick-troubleshooting-tips.html
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1038043

Resolvendo problema de conexão entre servidores ESXi para transferência de VMs

Vamos ao problema:

1. Você tem habilitado o acesso SSH, e a conexão entre um cliente desktop (putty, ssh secure shell…) e o servidor funciona normalmente. OK

2. Estando conectado ao servidor ESXI você resolve transferir uma VM para outro servidor ESXI utilizando SCP, algo como isto:

# cd /vmfs/volumes/datastore1

# scp -r vmxpto root@192.168.100.20:/vmfs/volumes/datastore1

porém a conexão não é estabelecida e o único erro exibido é:

# ssh: connect to host 192.168.100.20 port 22: Connection timed out

O problema é o perfil de segurança em cada um dos servidores ESXi.

Para resolver:

1. Conecte via cliente vSphere

2. Clica no servidor (lateral esquerda), em seguida vá até aba Configuration e clique em Security Profile no grupo Software e depois em Properties do Firewall.

3. Então, você só precisa marcar o SSH Client em Secure Shell. Isto irá abrir a comunicação SSH entre os servidores ESXi. Você pode restringir as configurações, acessando as configurações de firewall para qualquer um dos serviços.

Você também pode habilitar via linha de comando, diretamente do console dos servidores, utilizando o esxcli:

Para listar a configuração atual:
# esxcli network firewall ruleset list

Para habilitar o SSH Client e permitir a cópia usando SSH:
# esxcli network firewall ruleset set –ruleset-id sshClient –enabled yes

Se você estiver utilizando o ESXI 5.1 você faz assim:
# esxcli network firewall ruleset set -e true -r sshClient

Para atualizar a configuração:
# esxcli network firewall refresh

Fontes: