Site Tools


continuidad_procedimientos

Continuidad y procedimientos

Los scripts usados se encuentran en /root/bin/

total 23
drwxr-xr-x   2 root  wheel     5B Dec 29 17:24 .
drwxr-xr-x  11 root  wheel    31B Dec 29 17:24 ..
-rwxr-xr-x   1 root  wheel   518B Oct  4 23:08 renew_certs.sh
-rw-r--r--   1 root  wheel   520B Jul 30 11:28 upgrade_freebsd.sh
-rwxr-xr-x   1 root  wheel   2.6K Aug  8 19:10 upgrade_jails.sh

Renovación de certificados web - renew_certs.sh

Renueva los certificados de las jails y actualiza el del dominio brutalix.org en exim y murmur.

Actualización sistema host - upgrade_freebsd.sh

Script comentado con instrucciones para upgradear:

  • Actualizar paquetes instalados en el host
  • Actualizar paquetes instalados en una Jail
  • Actualizar version menor del host FreeBSD (ej: de 13.0 a 13.1)
  • Actualizar version mayor del host FreeBSD (ej: de 12.3 a 13.0-RELEASE)

Jails

Estructura básica

root@brutalix:~ # zfs list
NAME                                          USED  AVAIL  REFER  MOUNTPOINT
zroot                                         620G  1.15T    88K  /zroot
zroot/ROOT                                    223G  1.15T    88K  none
zroot/ROOT/default                            223G  1.15T   223G  /
zroot/jails                                   398G  1.15T    88K  /srv/jails
zroot/jails/releases                          551M  1.15T    88K  /srv/jails/releases
zroot/jails/releases/12.1-RELEASE             551M  1.15T   551M  /srv/jails/releases/12.1-RELEASE
zroot/jails/services                          397G  1.15T    88K  /srv/jails/services
zroot/jails/services/db                       699M  1.15T   703M  /srv/jails/services/db
zroot/jails/services/nginx                    396G  1.15T   396G  /srv/jails/services/nginx
zroot/jails/services/services                 445M  1.15T   450M  /srv/jails/services/services
zroot/jails/services/web                     1.32M  1.15T  5.62M  /srv/jails/services/web
zroot/jails/templates                        4.73M  1.15T    88K  /srv/jails/templates
zroot/jails/templates/base-12.1-RELEASE       184K  1.15T   546M  /srv/jails/templates/base-12.1-RELEASE
zroot/jails/templates/skeleton-12.1-RELEASE  4.46M  1.15T  4.46M  /srv/jails/templates/skeleton-12.1-RELEASE
  • El slice zroot/jails/template contiene 'templates' de las partes ro y rw. Se usa para poder desplegar nuevos jails limpios rapidamente con 'zfs clone' o rsync
  • El slice zroot/jails/releases alberga la configuración que se usará como solo léctura para cada una de las jails
  • El slice zroot/jails/servicios alberga la configuración que se usará como escribible para cada una de las jails

Falta documentar

  • Todas Jails tiene una parte solo lectura común en su slice zfs
  • Cada Jail tiene una parte única montada como rw (skeleton)
  • Una vez montada la Jail queda tal que así, siendo las partes pertenecientes a skeleton las únicas con permisos de escritura
drwxr-xr-x  15 root  wheel    24B Oct 13 20:35 .
drwxr-xr-x   6 root  wheel     6B Sep 24 21:23 ..
-rw-r--r--   1 root  wheel   957B Jul 21 04:11 .cshrc
-rw-r--r--   1 root  wheel   249B Jul 21 04:11 .profile
-r--r--r--   1 root  wheel   6.1K Jul 21 04:11 COPYRIGHT
drwxr-xr-x   2 root  wheel    47B Jul 21 04:09 bin
drwxr-xr-x   8 root  wheel    51B Jul 21 04:11 boot
dr-xr-xr-x   7 root  wheel   512B Dec 10 00:18 dev
lrwxr-xr-x   1 root  wheel    12B Oct 13 20:35 etc -> skeleton/etc
lrwxr-xr-x   1 root  wheel    13B Oct 13 20:35 home -> skeleton/home
drwxr-xr-x   4 root  wheel    56B Jul 21 04:09 lib
drwxr-xr-x   3 root  wheel     5B Oct 13 20:23 libexec
drwxr-xr-x   2 root  wheel     2B Jul 21 04:08 media
drwxr-xr-x   2 root  wheel     2B Jul 21 04:08 mnt
drwxr-xr-x   2 root  wheel     2B Jul 21 04:08 net
dr-xr-xr-x   2 root  wheel     2B Jul 21 04:08 proc
drwxr-xr-x   2 root  wheel   148B Jul 21 04:09 rescue
lrwxr-xr-x   1 root  wheel    13B Oct 13 20:35 root -> skeleton/root
drwxr-xr-x   2 root  wheel   137B Jul 21 04:10 sbin
drwxr-xr-x   9 root  wheel     9B Oct 13 20:35 skeleton
lrwxr-xr-x   1 root  wheel    11B Jul 21 04:11 sys -> usr/src/sys
lrwxr-xr-x   1 root  wheel    12B Oct 13 20:35 tmp -> skeleton/tmp
drwxr-xr-x  14 root  wheel    15B Oct 13 21:17 usr
lrwxr-xr-x   1 root  wheel    12B Oct 13 20:35 var -> skeleton/var
  • Cada Jail tiene su propio fstab en /usr/local/jails/jail.fstab.d/$name.fstab donde $name es el nombre definido en la configuración de cada jail (web,db)
  • Cada Jail tiene su directorio en /usr/local/jails/$name donde $name es el nombre definido en la configuración de cada jail (web,db).

Procedimientos

Generar estructura zfs para jails

Actualizar version sistema Jails

Cuando se hace una actualización de sistema menor o mayor del host, hay que actualizar las Jails también, ya que el sistema Jails comparte recursos con el host. Antes de ejecutar el script, hay que editarlo y definir la nueva versión a la que se ha actualizado el sistema.

setenv USED_RELEASE="13.0-RELEASE-p3"

Para saber la version actual del sistema:

[root@brutalix ~/bin]# freebsd-version 
13.0-RELEASE-p3

Crear nueva Jail

Enlaces

continuidad_procedimientos.txt · Last modified: by victor