Qu’est ce qu’un serveur de stockage NBD ?
Un disque dur virtuel en réseau
Le stockage NBD permet d’une part, de sécuriser vos données et d’autre part d’apporter de la transparence à l’utilisateur.
Nous allons créer un tunnel entre deux serveurs et permettre un flux sécurisé entre les deux points.
sur le serveur “serveur 1” (à connecter)
création du volume
root@serveur:/# dd if=/dev/zero of=/home/disque_nbd.bin bs=100M count=100100+0 records in
100+0 records out
10485760000 bytes (10 GB) copied, 261,189 s, 40,1 MB/s
root@serveur:/# losetup -f
/dev/loop0
root@serveur:/# mkfs.ext3 -j /dev/loop0
mke2fs 1.40.8 (13-Mar-2008)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
642112 inodes, 2560000 blocks
128000 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2621440000
79 block groups
32768 blocks per group, 32768 fragments per group
8128 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 33 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
Installer « gnbd-server » # aptitude install gnbd-server Et lancer le serveur: # gnbd_serv -n gnbd_serv: startup succeeded # netstat -tpan|grep gnbd tcp6 0 0 :::14567 :::* LISTEN 10660/gnbd_serv # gnbd_export -d /dev/loop0 -e BACKUP_DISK -c gnbd_export: created GNBD BACKUP_DISK serving file /dev/loop0 # gnbd_export Server[1] : BACKUP_DISK ————————– file : /dev/loop0 sectors : 20480000 readonly : no cached : yes timeout : no
sur le client “serveur 2”
# aptitude install gnbd-client à mettre en place les clés publiques ssh si elle ne sont pas en place entre le serveur et le client # modprobe gnbd # ssh -C -L 14567:127.0.0.1:14567 -N root@serveur & # gnbd_import -e 127.0.0.1 -n BACKUP_DISK # gnbd_import -i 127.0.0.1 -n gnbd_import: created directory /dev/gnbd gnbd_import: created gnbd device BACKUP_DISK gnbd_recvd: gnbd_recvd started # ls -l /dev/gnbd/ brw-r–r– 1 root root 254, 0 2009-11-24 22:55 BACKUP_DISK # mount /dev/gnbd/BACKUP_DISK /mnt/BACKUP_DISK/ # df … /dev/gnbd/BACKUP_DISK 10159032 153696 9493336 2% /mnt/BACKUP_DISK … # mkdir /var/lock/subsys
# cat /etc/init.d/BACKUP_DISK
#!/bin/bash # /etc/rc.d/init.d/BACKUP_DISK # Monte mon disque « BACKUP_DISK # chkconfig: 235 90 10 # description: BACKUP_DISK / GNBD # pidfile: /var/run/BACKUP_DISK.pid # # Source function library. . /lib/lsb/init-functions RETVAL=0 prog= »BACKUP_DISK /GNBD » PID_FILE=/var/run/BACKUP_DISK.pid start() { echo -n $ »Starting $prog: « /sbin/modprobe gnbd ssh -C -L 14567:127.0.0.1:14567 -N root@serveur & PID=$(ps ax | grep « ssh -C -L 14567: » | grep -v grep | awk ‘{ print $1 }’ | tail -1) echo $PID > $PID_FILE gnbd_import -i 127.0.0.1 -n mount /dev/gnbd/BACKUP_DISK /mnt/BACKUP_DISK RETVAL=$? [ $RETVAL -eq0 ] && touch /var/lock/subsys/BACKUP_DISK echo } stop() { echo -n $ »Stopping $prog: « umount /mnt/BACKUP_DISK/ gnbd_import -R -n /sbin/rmmod gnbd kill $(cat $PID_FILE) RETVAL=$? [ $RETVAL -eq 0 ] && rm /var/lock/subsys/BACKUP_DISK echo } # # see how we were called # case « $1″ in start) start ;; stop) stop ;; restart) stop start RETVAL=$? ;; *) echo $ »Usage: $0 {start|stop|restart} » exit 1 esac exit $RETVAL
root@serveur2:/etc/init.d# ./BACKUP_DISK start
Starting BACKUP_DISK /GNBD: gnbd_import: created gnbd device BACKUP_DISK gnbd_recvd: gnbd_recvd started bind: Address already in use channel_setup_fwd_listener: cannot listen to port: 14567 Could not request local forwardingroot@serveur2:/etc/init.d# ./BACKUP_DISK stop
Stopping BACKUP_DISK /GNBD: gnbd_import: removed gnbd device BACKUP_DISK
les plus….
Pour installer LVM2
- apt-get install lvm2
Pour la gestion Raid
- apt-get install mdadm
Related……
[...]just beneath, are numerous totally not related sites to ours, however, they are surely worth going over[...]……