Artwork

Contenido proporcionado por Eduardo Collado. Todo el contenido del podcast, incluidos episodios, gráficos y descripciones de podcast, lo carga y proporciona directamente Eduardo Collado o su socio de plataforma de podcast. Si cree que alguien está utilizando su trabajo protegido por derechos de autor sin su permiso, puede seguir el proceso descrito aquí https://es.player.fm/legal.
Player FM : aplicación de podcast
¡Desconecta con la aplicación Player FM !

Pssh con LinuxDoesMatter

56:10
 
Compartir
 

Manage episode 285462057 series 1898587
Contenido proporcionado por Eduardo Collado. Todo el contenido del podcast, incluidos episodios, gráficos y descripciones de podcast, lo carga y proporciona directamente Eduardo Collado o su socio de plataforma de podcast. Si cree que alguien está utilizando su trabajo protegido por derechos de autor sin su permiso, puede seguir el proceso descrito aquí https://es.player.fm/legal.

Hoy nos visita LinuxDoesMatter para hablarnos de pssh y de cómo utilizarlo en producción, en la vida real, para migrar un NAS.

pssh y el set completo de herramientas que viene con el paquete:

  • pssh command – Parallel ssh — comando ssh a muchas maquinas a la vez.
  • pscp command – Parallel scp — copiar fichero a conjunto de máquinas.
  • prsync command – Parallel rsync — sincronizar dir local con muchos remotos
  • pnuke command – Parallel nuke — matar en proceso por nombre en muchas máquinas a la vez.
  • pslurp command – Parallel slurp — traer fichero/s de máquinas remotas a la nuestra local.

Usando comandos ssh tradicionales podríamos realizar una tarea en 350 servidores simplemente dedicando una línea a cada uno, pero como se puede ver no es la forma más óptima.

ssh root@host01 ‘mkdir /ora_backup;chmod 0755 /ora_backup;chown -R group:oinstall /ora_backup’
ssh root@host02 ‘mkdir /ora_backup;chmod 0755 /ora_backup;chown -R group:oinstall /ora_backup’
….
ssh root@host350 ‘mkdir /ora_backup;chmod 0755 /ora_backup;chown -R group:oinstall /ora_backup’

Solución:

Antes de nada explicamos qué es el usuario para accionas masivas, útil tb para ansible/pssh/otros:

1.- Lo vamos a llamar por ejemplo linuxadm.

2.- Todas las máquinas tienen desplegado este usuario linuxadm y la máquina de salto desde donde voy a hacer la accion masiva accede con este usuario sin contraseña a todas las maquinas impactadas. La clave pública de linuxadm esta trasmitida en todas las maquinas a las que se da soporte.

Las máquinas se despliegan así, con la clave pública de linuxadm en

/home/linuxadm/.ssh/authorized_keys.

3.- En todas las máquinas de destino linuxadm es usuario sudoer y puede escalar sin contraseña

#cat /etc/sudoers.d/linuxadm o la lines de abajo tb en /etc/sudoers (visudo)

linuxadm ALL=(ALL) NOPASSWD: ALL en las máquinas de destino

Una vez hechos estos tres primeros pasos vamos a la máquina de salto:

Estamos en la máquina de salto…

me convierto en linuxadm $ sudo su – linuxadm (intro)

$whoami
linuxadm
$ cat hosts.txt
host01
host02

host350
$cat hosts.txt | wc -l
350
$

llegó el momento:

$ pssh -h hosts.txt -o out_mkdir -e error_mkdir -i “sudo mkdir /ora_backup”
$ pssh -h hosts.txt -o out_chmod -e error_chmod -i “sudo chmod 0755 /ora_backup”
$ pssh -h hosts.txt -o out_tchown -e error_chown -i “sudo chown oracle:oinstall /ora_backup”

Comprobar

$ pssh -X -q -h hosts.txt -i “sudo ls -l /ora_backup”

Recordatorio. Linea en /etc/fstab capturando un share NFS

server01:/usr/local/pub /pub nfs nfs auto,noatime,nolock,bg,intr,tcp,actimeo=1800 0 0

para desmontar a mano:

umount /pub o bien umount -l /pub (fozarlo) >>> comentar lsof o fuser

Tarea “migracion de nas”

La cabina (o el servidor NFS) server01 va a ser migrada a srvnew05

En esos 350 servidores toda linea como esta:

server01:/usr/local/pub /pub nfs nfs auto,noatime,nolock,bg,intr,tcp,actimeo=1800 0 0

tiene que acabar como esta:

srvnew05:/usr/local/pub /pub nfs nfs auto,noatime,nolock,bg,intr,tcp,actimeo=1800 0 0

Acciones a emprender…

1.- Crear una ventana de downtime para el cambio. Tal día a tal hora los aplicativos que usan esos shares NFS deben estar parados. El downtime o ventana de tiempo hay que a ser posible respetarlo. Puede prolongarse si fuerza mayor

2.- Copiamos un script para desmontar los shares en las 350 máquinas. pscp

$ pscp -h hosts.txt -o out_copy -e err_copy umount.sh /tmp

3.- Desmontamos todas la entradas implicadas. pssh

$ pssh -X -q -h hosts.txt -o out_umount -e error_umount -i sudo /tmp/umount.sh

Copiamos o copiarán los contenidos de la cabina server01 a la cabina srvnew05
Se respetan el nombre de los shares nfs.

Esto tomará su tiempo pueden ser horas… dentro del periodo de downtime o ventana de mantenimiento.

Recordad que sed -i cambiaría cada ocurrencia de server01 por srvnew05. En todfos los /etc/fstab impactados. El script a tal efecto hará esto cuando toque.

4.- Subimos el script que cambia server01 por srvnew05 en los /etc/fstab y vuelve a montar

$ pscp -h hosts.txt -o out_copy2 -e err_copy2 newname_remount.sh /tmp

Ejecutamos que acabamos de subir a todas las máquinas el script que cambia cada ocurrencia de server01 en cada /etc/fstab por srvnew05 y volverá a montar los filesystems

$ pssh -X -q -h hosts.txt -o out_newremo -e error_newremo -i sudo /tmp/newname_remount.sh

Y eso es todo… puedo comentar lo de la herramienta de tiquets las subtareas y dptos implicados

Comunicar el fin de la tarea a todos los “stakeholders”.

Los reponsables de los aplicativos impactados por el cambio arrancarán sus programas/aplicaciones para ver si todo funciona correctamente.

  continue reading

129 episodios

Artwork
iconCompartir
 
Manage episode 285462057 series 1898587
Contenido proporcionado por Eduardo Collado. Todo el contenido del podcast, incluidos episodios, gráficos y descripciones de podcast, lo carga y proporciona directamente Eduardo Collado o su socio de plataforma de podcast. Si cree que alguien está utilizando su trabajo protegido por derechos de autor sin su permiso, puede seguir el proceso descrito aquí https://es.player.fm/legal.

Hoy nos visita LinuxDoesMatter para hablarnos de pssh y de cómo utilizarlo en producción, en la vida real, para migrar un NAS.

pssh y el set completo de herramientas que viene con el paquete:

  • pssh command – Parallel ssh — comando ssh a muchas maquinas a la vez.
  • pscp command – Parallel scp — copiar fichero a conjunto de máquinas.
  • prsync command – Parallel rsync — sincronizar dir local con muchos remotos
  • pnuke command – Parallel nuke — matar en proceso por nombre en muchas máquinas a la vez.
  • pslurp command – Parallel slurp — traer fichero/s de máquinas remotas a la nuestra local.

Usando comandos ssh tradicionales podríamos realizar una tarea en 350 servidores simplemente dedicando una línea a cada uno, pero como se puede ver no es la forma más óptima.

ssh root@host01 ‘mkdir /ora_backup;chmod 0755 /ora_backup;chown -R group:oinstall /ora_backup’
ssh root@host02 ‘mkdir /ora_backup;chmod 0755 /ora_backup;chown -R group:oinstall /ora_backup’
….
ssh root@host350 ‘mkdir /ora_backup;chmod 0755 /ora_backup;chown -R group:oinstall /ora_backup’

Solución:

Antes de nada explicamos qué es el usuario para accionas masivas, útil tb para ansible/pssh/otros:

1.- Lo vamos a llamar por ejemplo linuxadm.

2.- Todas las máquinas tienen desplegado este usuario linuxadm y la máquina de salto desde donde voy a hacer la accion masiva accede con este usuario sin contraseña a todas las maquinas impactadas. La clave pública de linuxadm esta trasmitida en todas las maquinas a las que se da soporte.

Las máquinas se despliegan así, con la clave pública de linuxadm en

/home/linuxadm/.ssh/authorized_keys.

3.- En todas las máquinas de destino linuxadm es usuario sudoer y puede escalar sin contraseña

#cat /etc/sudoers.d/linuxadm o la lines de abajo tb en /etc/sudoers (visudo)

linuxadm ALL=(ALL) NOPASSWD: ALL en las máquinas de destino

Una vez hechos estos tres primeros pasos vamos a la máquina de salto:

Estamos en la máquina de salto…

me convierto en linuxadm $ sudo su – linuxadm (intro)

$whoami
linuxadm
$ cat hosts.txt
host01
host02

host350
$cat hosts.txt | wc -l
350
$

llegó el momento:

$ pssh -h hosts.txt -o out_mkdir -e error_mkdir -i “sudo mkdir /ora_backup”
$ pssh -h hosts.txt -o out_chmod -e error_chmod -i “sudo chmod 0755 /ora_backup”
$ pssh -h hosts.txt -o out_tchown -e error_chown -i “sudo chown oracle:oinstall /ora_backup”

Comprobar

$ pssh -X -q -h hosts.txt -i “sudo ls -l /ora_backup”

Recordatorio. Linea en /etc/fstab capturando un share NFS

server01:/usr/local/pub /pub nfs nfs auto,noatime,nolock,bg,intr,tcp,actimeo=1800 0 0

para desmontar a mano:

umount /pub o bien umount -l /pub (fozarlo) >>> comentar lsof o fuser

Tarea “migracion de nas”

La cabina (o el servidor NFS) server01 va a ser migrada a srvnew05

En esos 350 servidores toda linea como esta:

server01:/usr/local/pub /pub nfs nfs auto,noatime,nolock,bg,intr,tcp,actimeo=1800 0 0

tiene que acabar como esta:

srvnew05:/usr/local/pub /pub nfs nfs auto,noatime,nolock,bg,intr,tcp,actimeo=1800 0 0

Acciones a emprender…

1.- Crear una ventana de downtime para el cambio. Tal día a tal hora los aplicativos que usan esos shares NFS deben estar parados. El downtime o ventana de tiempo hay que a ser posible respetarlo. Puede prolongarse si fuerza mayor

2.- Copiamos un script para desmontar los shares en las 350 máquinas. pscp

$ pscp -h hosts.txt -o out_copy -e err_copy umount.sh /tmp

3.- Desmontamos todas la entradas implicadas. pssh

$ pssh -X -q -h hosts.txt -o out_umount -e error_umount -i sudo /tmp/umount.sh

Copiamos o copiarán los contenidos de la cabina server01 a la cabina srvnew05
Se respetan el nombre de los shares nfs.

Esto tomará su tiempo pueden ser horas… dentro del periodo de downtime o ventana de mantenimiento.

Recordad que sed -i cambiaría cada ocurrencia de server01 por srvnew05. En todfos los /etc/fstab impactados. El script a tal efecto hará esto cuando toque.

4.- Subimos el script que cambia server01 por srvnew05 en los /etc/fstab y vuelve a montar

$ pscp -h hosts.txt -o out_copy2 -e err_copy2 newname_remount.sh /tmp

Ejecutamos que acabamos de subir a todas las máquinas el script que cambia cada ocurrencia de server01 en cada /etc/fstab por srvnew05 y volverá a montar los filesystems

$ pssh -X -q -h hosts.txt -o out_newremo -e error_newremo -i sudo /tmp/newname_remount.sh

Y eso es todo… puedo comentar lo de la herramienta de tiquets las subtareas y dptos implicados

Comunicar el fin de la tarea a todos los “stakeholders”.

Los reponsables de los aplicativos impactados por el cambio arrancarán sus programas/aplicaciones para ver si todo funciona correctamente.

  continue reading

129 episodios

Todos los episodios

×
 
Loading …

Bienvenido a Player FM!

Player FM está escaneando la web en busca de podcasts de alta calidad para que los disfrutes en este momento. Es la mejor aplicación de podcast y funciona en Android, iPhone y la web. Regístrate para sincronizar suscripciones a través de dispositivos.

 

Guia de referencia rapida