ProHoster > Blog > Administración > Creación de infraestrutura de TI tolerante a fallos. Parte 1: Preparación para implementar un clúster oVirt 4.3
Creación de infraestrutura de TI tolerante a fallos. Parte 1: Preparación para implementar un clúster oVirt 4.3
Convídase aos lectores a familiarizarse cos principios de construción dunha infraestrutura tolerante a fallos para unha pequena empresa dentro dun único centro de datos, que se analizarán en detalle nunha pequena serie de artigos.
Parte introdutoria
En centro de datos (Centro de procesamento de datos) pode entenderse como:
propio rack na súa propia "sala de servidores" no territorio da empresa, que cumpre os requisitos mínimos para proporcionar enerxía e equipos de refrixeración e tamén ten acceso a Internet a través de dous provedores independentes;
un rack alugado co seu propio equipo, situado nun centro de datos real - o chamado. unha colocación de nivel III ou IV que garante unha alimentación fiable, refrixeración e acceso a Internet por falla;
equipos totalmente arrendados en un centro de datos de nivel III o IV.
Que opción de aloxamento escoller - en cada caso, todo é individual e normalmente depende de varios factores principais:
por que unha empresa necesita a súa propia infraestrutura de TI?
que quere exactamente a empresa da infraestrutura de TI (fiabilidade, escalabilidade, manexabilidade, etc.);
o importe do investimento inicial en infraestrutura de TI, así como o tipo de custos para iso: capital (o que significa mercar o seu propio equipo) ou operativo (o equipo adoita alugarse);
o horizonte de planificación da propia empresa.
Podes escribir moito sobre os factores que inflúen na decisión dunha empresa de crear e utilizar a súa infraestrutura de TI, pero o noso obxectivo é mostrar na práctica como crear esta mesma infraestrutura para que sexa tolerante a fallos e, ao mesmo tempo, sería posible aforrar cartos, reducir o custo da compra de software comercial ou evitalos por completo.
Como demostra a longa práctica, non paga a pena aforrar en ferro, xa que o avaro paga dúas veces, e aínda moito máis. Pero de novo: un bo hardware, isto é só unha recomendación e, ao final, que comprar exactamente e canto depende das capacidades da empresa e da "cobiza" da súa xestión. Ademais, a palabra "avaricia" debe entenderse no bo sentido da palabra, xa que é mellor investir en hardware na fase inicial, para que posteriormente non teñas serios problemas co seu posterior soporte e escalado, xa que unha planificación incorrecta inicialmente e un aforro excesivo poden levar a custos máis elevados no futuro que cando se inicia un proxecto.
Entón, os datos iniciais do proxecto:
hai unha empresa que decidiu crear o seu propio portal web e levar as súas actividades a Internet;
a empresa decidiu alugar un rack para acomodar os seus equipos nun bo centro de datos certificado segundo o estándar Tier III;
a empresa decidiu non aforrar moito en hardware e, polo tanto, comprou o seguinte equipo con garantías e soporte estendidos:
Lista de equipos
dous servidores físicos Dell PowerEdge R640 como segue:
dous procesadores Intel Xeon Gold 5120
512 Gb de RAM
dous discos SAS en RAID1, para instalación do SO
tarxeta de rede 4G de 1 portos integrada
dúas tarxetas de rede 2G de 10 portos
un FC HBA 2G de 16 portos.
Almacenamento do controlador Dell MD2f 3820 conectado mediante FC 16G directamente aos hosts Dell;
dous interruptores do segundo nivel - Cisco WS-C2960RX-48FPS-L apilado;
dous interruptores do terceiro nivel - Cisco WS-C3850-24T-E, combinados nunha pila;
Rack, UPS, PDU, servidores de consola - proporcionados polo centro de datos.
Como podemos ver, o equipamento existente ten boas perspectivas de escalado horizontal e vertical, no caso de que a empresa poida competir con outras empresas de perfil similar en Internet, e comeza a obter un beneficio que se pode investir en ampliar os recursos para unha maior competencia e un crecemento dos beneficios.
Que equipos podemos engadir se a empresa decide aumentar o rendemento do noso clúster de computación:
temos unha gran reserva en canto ao número de portos dos switches 2960X, o que significa que podemos engadir máis servidores de hardware;
comprar dous interruptores FC para conectar sistemas de almacenamento e servidores adicionais a eles;
os servidores existentes pódense actualizar: engade memoria, substitúe os procesadores por outros máis eficientes, conéctate a unha rede 10G con adaptadores de rede existentes;
pode engadir estantes de discos adicionais ao sistema de almacenamento co tipo de disco necesario: SAS, SATA ou SSD, dependendo da carga planificada;
despois de engadir conmutadores FC, podes mercar outro sistema de almacenamento para engadir aínda máis capacidade de disco, e se lle compras unha opción especial de replicación remota, podes configurar a replicación de datos entre sistemas de almacenamento tanto dentro dos límites dun centro de datos como entre centros de datos (pero isto xa está fóra do alcance do artigo);
tamén hai conmutadores de terceiro nivel: Cisco 3850, que se pode usar como núcleo de rede tolerante a fallos para o enrutamento de alta velocidade entre redes internas. Isto axudará moito no futuro, xa que a infraestrutura interna medre. O 3850 tamén ten portos 10G que se poden usar máis tarde cando se actualice o equipo de rede á velocidade 10G.
Dado que agora non hai ningún lugar sen virtualización, seguramente estaremos na tendencia, aínda máis esta é unha boa forma de reducir o custo de adquisición de servidores caros para elementos individuais da infraestrutura (servidores web, bases de datos, etc.), que non sempre se utilizan de forma óptima en caso de baixa carga, e isto é exactamente o que ocorrerá ao comezo do lanzamento do proxecto.
Ademais, a virtualización ten moitas outras vantaxes que nos poden ser moi útiles: tolerancia a fallos de VM por fallo dun servidor de hardware, migración en directo entre nodos de hardware do clúster para o seu mantemento, distribución manual ou automática de carga entre nodos do clúster, etc.
Para o hardware adquirido pola empresa, suxire a implantación dun clúster VMware vSphere de alta dispoñibilidade, pero dado que calquera software de VMware é coñecido polas súas etiquetas de prezo "cabalo", utilizaremos un software de xestión de virtualización absolutamente gratuíto. oVirt, sobre a base do cal se crea un produto coñecido, pero xa comercial - rhev.
Software oVirt é necesario combinar todos os elementos da infraestrutura nun todo para poder traballar convenientemente con máquinas virtuais de alta dispoñibilidade: son bases de datos, aplicacións web, servidores proxy, equilibradores, servidores para recoller rexistros e análises, etc., é dicir, en que consiste o portal web da nosa empresa.
Resumindo esta introdución, espéranos os seguintes artigos, que mostrarán na práctica exactamente como implementar toda a infraestrutura de hardware e software dunha empresa:
Lista de artigos
1 Comp. Preparación para implementar un clúster oVirt 4.3.
2 Comp. Instalación e configuración dun clúster oVirt 4.3.
3 Comp. Configurando un clúster de VyOS, organizando o enrutamento externo tolerante a fallos.
4 Comp. Configurando a pila Cisco 3850, organizando o enrutamento da intranet.
Parte 1. Preparación para implementar un clúster oVirt 4.3
Configuración básica do host
Instalar e configurar o sistema operativo é o paso máis sinxelo. Hai moitos artigos sobre como instalar e configurar correctamente o sistema operativo, polo que non ten sentido tentar dar algo exclusivo sobre isto.
Polo tanto, temos dous hosts Dell PowerEdge R640 nos que necesitamos instalar o sistema operativo e realizar axustes preliminares para utilizalos como hipervisores para executar máquinas virtuais nun clúster oVirt 4.3.
Dado que pensamos usar o software gratuíto non comercial oVirt, escollemos o sistema operativo para a implantación dos hosts CentOS 7.7, aínda que é posible instalar outros sistemas operativos en hosts para oVirt:
unha construción especial baseada en RHEL, o chamado. o Nodo Virt;
OS Oracle Linux Summer 2019 anunciouse sobre manter oVirt funcionando nel.
Antes de instalar o sistema operativo, recoméndase:
configurar a interface de rede do iDRAC en ambos os hosts;
actualizar o firmware para BIOS e iDRAC ás últimas versións;
configurar o Perfil do sistema do servidor, preferentemente en modo Performance;
configure RAID desde discos locais (recoméndase RAID1) para instalar o sistema operativo no servidor.
Despois instalamos o SO no disco creado anteriormente a través de iDRAC: o proceso de instalación é normal, non hai momentos especiais nel. Tamén podes acceder á consola do servidor para iniciar a instalación do SO a través de iDRAC, aínda que nada che impide conectar un monitor, teclado e rato directamente ao servidor e instalar o SO desde unha unidade flash.
Despois de instalar o sistema operativo, realizamos a súa configuración inicial:
systemctl enable network.service
systemctl start network.service
systemctl status network.service
systemctl stop NetworkManager
systemctl disable NetworkManager
systemctl status NetworkManager
Para a configuración inicial do SO, cómpre configurar calquera interface de rede no servidor para que poida acceder a Internet para actualizar o SO e instalar os paquetes de software necesarios. Isto pódese facer tanto durante o proceso de instalación do SO como despois.
Toda a configuración e o conxunto de software anteriores son unha cuestión de preferencia persoal, e este conxunto é só unha recomendación.
Dado que o noso anfitrión desempeñará o papel de hipervisor, activaremos o perfil de rendemento desexado:
systemctl enable tuned
systemctl start tuned
systemctl status tuned
tuned-adm profile
tuned-adm profile virtual-host
Podes ler máis sobre o perfil de rendemento aquí:Capítulo 4«.
Despois de instalar o sistema operativo, pasamos á seguinte parte: configurar interfaces de rede en hosts e unha pila de conmutadores Cisco 2960X.
Configuración dunha pila de conmutadores Cisco 2960X
No noso proxecto, utilizaranse os seguintes números de VLAN ou dominios de difusión illados entre si, para separar os diferentes tipos de tráfico:
VLAN 10 - Internet VLAN 17 – Xestión (iDRAC, almacenamento, xestión de switches) VLAN 32 – Rede de produción de VM VLAN 33 - Rede de interconexión (a contratistas externos) VLAN 34 – Rede de proba de VM VLAN 35 – Rede de desenvolvedores de VM VLAN 40 - Rede de vixilancia
Antes de comezar a traballar, imos dar un diagrama no nivel L2, ao que finalmente deberíamos chegar:
Para a interacción de rede de hosts oVirt e máquinas virtuais entre si, así como para xestionar o noso sistema de almacenamento, é necesario configurar unha pila de conmutadores Cisco 2960X.
Os hosts Dell teñen tarxetas de rede de 4 portos integradas, polo que é recomendable organizar a súa conexión co Cisco 2960X mediante unha conexión de rede tolerante a fallos, mediante a agrupación de portos físicos de rede nunha interface lóxica e o protocolo LACP (802.3ad):
os dous primeiros portos do host están configurados en modo de conexión e conectados ao switch 2960X; esta interface lóxica configurarase ponte cun enderezo para xestión de host, monitorización, comunicación con outros hosts no clúster oVirt, tamén se utilizará para a migración en directo de máquinas virtuais;
os dous segundos portos do host tamén están configurados en modo de enlace e conectados ao 2960X; nesta interface lóxica mediante oVirt, crearanse pontes máis tarde (nas VLAN correspondentes) ás que se conectarán as máquinas virtuais.
ambos os portos de rede dentro da mesma interface lóxica estarán activos, é dicir. o tráfico neles pódese transmitir simultaneamente, no modo de equilibrio.
a configuración de rede dos nodos do clúster debe ser exactamente a mesma, excepto para os enderezos IP.
Configuración básica da pila de interruptores 2960X e os seus portos
Anteriormente, os nosos interruptores deberían ser:
montado en rack;
conectado con dous cables especiais da lonxitude necesaria, por exemplo, CAB-STK-E-1M;
conectado á fonte de alimentación;
conectado á estación de traballo do administrador a través do porto da consola para a súa configuración inicial.
A orientación necesaria para iso está dispoñible en páxina oficial fabricante.
Despois de completar os pasos anteriores, configuramos os interruptores.
O que significa cada comando non debe ser descifrado no marco deste artigo; se é necesario, toda a información pódese atopar de forma independente.
O noso obxectivo é configurar rapidamente unha pila de conmutadores e conectar a ela hosts e interfaces de xestión de almacenamento.
1) Conectámonos ao interruptor principal, pasamos ao modo privilexiado, despois pasamos ao modo de configuración e realizamos a configuración básica.
Configuración básica do interruptor:
enable
configure terminal
hostname 2960X
no service pad
service timestamps debug datetime msec
service timestamps log datetime localtime show-timezone msec
no service password-encryption
service sequence-numbers
switch 1 priority 15
switch 2 priority 14
stack-mac persistent timer 0
clock timezone MSK 3
vtp mode transparent
ip subnet-zero
vlan 17
name Management
vlan 32
name PROD
vlan 33
name Interconnect
vlan 34
name Test
vlan 35
name Dev
vlan 40
name Monitoring
spanning-tree mode rapid-pvst
spanning-tree etherchannel guard misconfig
spanning-tree portfast bpduguard default
spanning-tree extend system-id
spanning-tree vlan 1-40 root primary
spanning-tree loopguard default
vlan internal allocation policy ascending
port-channel load-balance src-dst-ip
errdisable recovery cause loopback
errdisable recovery cause bpduguard
errdisable recovery interval 60
line con 0
session-timeout 60
exec-timeout 60 0
logging synchronous
line vty 5 15
session-timeout 60
exec-timeout 60 0
logging synchronous
ip http server
ip http secure-server
no vstack
interface Vlan1
no ip address
shutdown
exit
Garda a configuración co comando "wr meme" e reinicie a pila de interruptores co comando "recargar» no interruptor principal 1.
2) Configuramos os portos de rede do switch no modo de acceso (acceso) na VLAN 17, para conectar as interfaces de control dos sistemas de almacenamento e dos servidores iDRAC.
3) Despois de recargar a pila, comprobe que funciona correctamente:
Comprobando o funcionamento da pila:
2960X#show switch stack-ring speed
Stack Ring Speed : 20G
Stack Ring Configuration: Full
Stack Ring Protocol : FlexStack
2960X#show switch stack-ports
Switch # Port 1 Port 2
-------- ------ ------
1 Ok Ok
2 Ok Ok
2960X#show switch neighbors
Switch # Port 1 Port 2
-------- ------ ------
1 2 2
2 1 1
2960X#show switch detail
Switch/Stack Mac Address : 0cd0.f8e4.ХХХХ
Mac persistency wait time: Indefinite
H/W Current
Switch# Role Mac Address Priority Version State
----------------------------------------------------------
*1 Master 0cd0.f8e4.ХХХХ 15 4 Ready
2 Member 0029.c251.ХХХХ 14 4 Ready
Stack Port Status Neighbors
Switch# Port 1 Port 2 Port 1 Port 2
--------------------------------------------------------
1 Ok Ok 2 2
2 Ok Ok 1 1
4) Configurar o acceso SSH á pila 2960X
Para xestionar a pila de forma remota mediante SSH, utilizaremos a IP 172.20.1.10 configurada en SVI (interfaz virtual de cambio) VLAN 17.
Aínda que é desexable utilizar un porto dedicado no switch para fins de xestión, esta é unha cuestión de preferencia persoal e oportunidade.
Configurando o acceso SSH á pila de conmutadores:
ip default-gateway 172.20.1.2
interface vlan 17
ip address 172.20.1.10 255.255.255.0
hostname 2960X
ip domain-name hw.home-lab.ru
no ip domain-lookup
clock set 12:47:04 06 Dec 2019
crypto key generate rsa
ip ssh version 2
ip ssh time-out 90
line vty 0 4
session-timeout 60
exec-timeout 60 0
privilege level 15
logging synchronous
transport input ssh
line vty 5 15
session-timeout 60
exec-timeout 60 0
privilege level 15
logging synchronous
transport input ssh
aaa new-model
aaa authentication login default local
username cisco privilege 15 secret my_ssh_password
Configura un contrasinal para entrar no modo privilexiado:
enable secret *myenablepassword*
service password-encryption
Configurar NTP:
ntp server 85.21.78.8 prefer
ntp server 89.221.207.113
ntp server 185.22.60.71
ntp server 192.36.143.130
ntp server 185.209.85.222
show ntp status
show ntp associations
show clock detail
5) Configure interfaces Etherchannel lóxicas e portos físicos conectados aos hosts. Para facilitar a configuración, todas as VLAN dispoñibles estarán permitidas en todas as interfaces lóxicas, pero en xeral recoméndase configurar só o necesario:
Despois de completar a configuración da pila 2960 Х e hosts, reinicie a rede nos hosts e comprobe a operatividade da interface lóxica.
no host:
systemctl restart network
cat /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2+3 (2)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
...
802.3ad info
LACP rate: fast
Min links: 0
Aggregator selection policy (ad_select): stable
System priority: 65535
...
Slave Interface: em2
MII Status: up
Speed: 1000 Mbps
Duplex: full
...
Slave Interface: em3
MII Status: up
Speed: 1000 Mbps
Duplex: full
na pila de interruptores 2960 Х:
2960X#show lacp internal
Flags: S - Device is requesting Slow LACPDUs
F - Device is requesting Fast LACPDUs
A - Device is in Active mode P - Device is in Passive mode
Channel group 1
LACP port Admin Oper Port Port
Port Flags State Priority Key Key Number State
Gi1/0/1 SA bndl 32768 0x1 0x1 0x102 0x3D
Gi2/0/1 SA bndl 32768 0x1 0x1 0x202 0x3D
2960X#sh etherchannel summary
Flags: D - down P - bundled in port-channel
I - stand-alone s - suspended
H - Hot-standby (LACP only)
R - Layer3 S - Layer2
U - in use N - not in use, no aggregation
f - failed to allocate aggregator
M - not in use, minimum links not met
m - not in use, port not aggregated due to minimum links not met
u - unsuitable for bundling
w - waiting to be aggregated
d - default port
A - formed by Auto LAG
Number of channel-groups in use: 11
Number of aggregators: 11
Group Port-channel Protocol Ports
------+-------------+-----------+-----------------------------------------------
1 Po1(SU) LACP Gi1/0/1(P) Gi2/0/1(P)
Configuración inicial das interfaces de rede para xestionar os recursos do clúster, nos hosts Anfitrión 1 и Anfitrión 2
Configuración da interface lóxica BOND1 para a xestión en hosts e as súas interfaces físicas:
Reiniciamos a rede nos hosts e comprobamos a súa visibilidade entre si.
Isto completa a configuración da pila de conmutadores Cisco 2960X e, se todo se fixo correctamente, agora temos a conectividade de rede de todos os elementos da infraestrutura entre si no nivel L2.
Configuración de almacenamento Dell MD3820f
Antes de comezar a traballar na configuración do sistema de almacenamento, xa debe estar conectado á pila de conmutadores de Cisco 2960 Х interfaces de xestión, así como a hosts Anfitrión 1 и Anfitrión 2 vía FC.
O esquema xeral de como debe conectarse o sistema de almacenamento á pila de conmutadores deuse no capítulo anterior.
O esquema para conectar o almacenamento mediante FC aos anfitrións debería verse así:
Durante a conexión, é necesario anotar os enderezos WWPN dos hosts FC HBA conectados aos portos FC do sistema de almacenamento; isto será necesario para a configuración posterior da vinculación do host aos LUN do sistema de almacenamento.
Descarga e instala a utilidade de xestión de almacenamento Dell MD3820f na estación de traballo do administrador: Xestor de almacenamento de disco modular PowerVault (MDSM).
Conectámonos con ela a través dos seus enderezos IP predeterminados e despois configuramos os nosos enderezos desde VLAN 17, para xestionar controladores a través de TCP/IP:
Almacenamento1:
ControllerA IP - 172.20.1.13, MASK - 255.255.255.0, Gateway - 172.20.1.2
ControllerB IP - 172.20.1.14, MASK - 255.255.255.0, Gateway - 172.20.1.2
Despois de configurar os enderezos, imos á interface de xestión de almacenamento e establecemos un contrasinal, establecemos a hora, actualizamos o firmware para controladores e discos, se é necesario, etc.
Como se fai isto descríbese en guía de administración almacenamento.
Despois de facer a configuración anterior, só necesitamos facer algunhas cousas:
Configurar ID de porto FC do host - Identificadores de portos de host.
Crear un grupo de acollida − grupo anfitrión e engade os nosos dous hosts Dell.
Cree un grupo de discos e discos virtuais (ou LUN) nel, que se presentarán aos hosts.
Configure a presentación de discos virtuais (ou LUN) para hosts.
Engadir novos hosts e identificadores vinculantes dos portos FC do host realízase a través do menú - Mapeos de host -> Definir -> Anfitrións…
Os enderezos WWPN dos hosts FC HBA pódense atopar, por exemplo, no iDRAC do servidor.
Como resultado, deberíamos obter algo como esta imaxe:
Engadir un novo grupo de hosts e vincular hosts a el realízase a través do menú - Mapeos de host -> Definir -> Grupo de acollida…
Para hosts, seleccione o tipo de SO - Linux (DM-MP).
Despois de crear un grupo de acollida, a través da pestana Servizos de almacenamento e copia, crea un grupo de discos - Grupo de discos, cun tipo que depende dos requisitos de tolerancia a fallos, por exemplo, RAID10, e nel discos virtuais do tamaño necesario:
E, finalmente, a fase final é a presentación de discos virtuais (ou LUN) para hosts.
Para iso, a través do menú - Mapeos de host -> Mapeo Lun -> Engadir ... vinculamos discos virtuais a hosts asignándolles números.
Todo debería parecer a esta captura de pantalla:
Aquí é onde rematamos coa configuración do almacenamento e, se todo se fixo correctamente, os anfitrións deberían ver os LUN que se lles presentan a través dos seus FC HBA.
Obriguemos ao sistema a actualizar a información sobre as unidades conectadas:
ls -la /sys/class/scsi_host/
echo "- - -" > /sys/class/scsi_host/host[0-9]/scan
Vexamos que dispositivos están visibles nos nosos servidores:
Nos hosts, tamén podes configurar adicionalmente ruta múltiple, e aínda que pode facelo por si mesmo ao instalar oVirt, é mellor comprobar previamente a corrección do MP.
Como podes ver, os tres discos virtuais do sistema de almacenamento son visibles de dúas formas. Así, completouse todo o traballo preparatorio, o que significa que pode pasar á parte principal: configurar o clúster oVirt, que se comentará no seguinte artigo.