Qmail - HA Qmail in configurazione High Availability Daniele Duca

Slides:



Advertisements
Presentazioni simili
Shell: variabili di sistema PATH HOME USER PWD SHELL HOSTNAME HOSTTYPE Per visualizzare il valore di tutte le variabili dambiente si usa il comando set.
Advertisements

Tecnologie. Reti locati e reti globali Reti locali (LAN, Local Area Networks) –Nodi su aree limitate (ufficio, piano, dipartimento) Reti globali (reti.
Windows Server 2003: Tecnologie per lalta disponibilità Andrea Candian.
Sequential Statements. – Il VHDL simula lo svolgersi in parallelo di varie operazioni – Loggetto fondamentale e il PROCESS – Un PROCESS contiene una serie.
Shell: variabili di sistema PATH HOME USER PWD SHELL HOSTNAME … Per visualizzare il valore di tutte le variabili dambiente si usa il comando set.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Shell: uso avanzato e script Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Guida IIS 6 A cura di Nicola Del Re.
Roma, 28/03/2003 Telecommunication Manager edizione 2002/2003 Project Work Realizzato da: Vittorio Randazzo Angelo Ligorio Giuseppe ContinoGianluca Bellu.
Lezione 1 Approccio al sistema operativo : la distribuzione Knoppix Live Cd Knoppix 3.6 Interfacce a caratteri e grafica: console e windows manager File.
Programmazione della shell pt.2
BUSINESS CONTINUITY MISSION-CRITICAL EMC PER SAP
FTP File Transfer Protocol
Dischi in RAID  Redundant Array of Independent Disk Configurazione che permette di combinare più dischi secondo obiettivi di performance e ridondanza.
Script di shell (bash).
1 PROGRAMMAZIONE IN SHELL The Unix Programming Environment Kernigham - Pike.
Ancora sulla shell. Shell e comandi La shell e' un programma che interpreta i comandi dell'utente. I comandi possono essere dati da terminale, oppure.
Layered Grid Architecture. Application Fabric “Controlling elements locally”: Access to, & control of, resources Connectivity “Talking to Grid elements”:
BaBar Tier A Administration Workshop CCR, Paestum Giugno 2003 Alberto Crescente, INFN Sez. Padova.
Panoptes: cluster HA di monitoraggio della rete Giuseppe Sava, INFN Sez. di Catania, Netgroup Andrea Francesco Fornaia, INFN Sez. di Catania Gianni Mario.
Marco Esposito Antonio Forte - SICR1.
Servizio posta Situazione al 27/09/2012 Marco De Rossi Marco Esposito Antonio Forte.
High Avaliability with RHCS HA INFN CNAF 22 Marzo 2006 Bologna Ricci Pier Paolo, on behalf of INFN TIER1 Staff
Dipartimento di Ingegneria elettrica, elettronica e informatica - LAUREA IN INGEGNERIA INFORMATICA, C. GRECO 23/11/2011 S YSTEM R ECOVERY E A FFIDABILITÀ.
Attività e servizi di calcolo a Roma Tor Vergata R. Kwatera, R. Lulli, R. Sparvoli Roma Tor Vergata.
Script bash I file di comandi in Linux. BASH  Bourne Again Shell  Modalità interattiva o batch (file di comandi)  Ambiente di programmazione “completo”
INFN-AAI Stato dell’infrastruttura centrale Dael Maselli Workshop INFN CCR 2010.
Personal local Gmail Gianmauro Cuccuru
Corso di Alta formazione in TL&OS Modulo 1.3 Reti e Servizi - lezione 1 Modulo 1.3 Reti e servizi 1. Introduzione al Networking Connettere il PC in rete;
Gabriele Cerami, Cluster di server ad alta disponibilita' con Pacemaker Bologna, ERLUG: Emilia Romagna Linux Users Group - erlug.linux.it 1.
1 Virtualizzazione con KVM su sistemi operativi Ubuntu Francesco Stablum Studente di Informatica, sviluppatore software, talvolta sistemista.
Introduzione a GNU/Linux. GNU/Linux Caratteristiche Compatibile con UNIX ® Multitasking Multiutente Libero.
Orientamento. Il Kernel Il Kernel è un programma scritto in linguaggio vicino all'hardware che ha il compito di fornire ai processi in esecuzione sul.
User Mode Linux. Cos'è user mode linux ● User mode linux è un kernel linux che gira come un'applicazione nello spazio utente.
AoE - iScsi Come esportare un file o un disco in rete Configurazione della parte server (target) Configurazione della parte client (initiator)
Cos'e' e cosa ci si puo' fare Andrea Trentini
1 Amministrazione di base del sistema Cristina Moretto Corso Base LinuxTrent
20-21/03/2006Workshop sullo storage - CNAF Alessandro Brunengo.
SISTEMI DI SORVEGLIANZA IP Panasonic System Solutions
Infrastruttura cloud servizi realizzata nella Sezione di Napoli
Riccardo Veraldi - Massimo Donatelli CCR 3-4 Marzo 2008
I comandi principali di Linux
Summary di (quasi) tutti gli utenti non presentati…
Rete e comunicazione Appunti.
Servizio Calcolo e Reti
Engineering Faculty University of Messina, Italy Marco Scarpa
HackLab Catanzaro Installazione DEBIAN Lezione 2
Breve report su corso RedHat Enterprise Virtualization (RH318)
Cloud per HA nei Servizi
Metriche SE monitoring G.Donvito G.Cuscela INFN Bari
Persistent Storage Provisioning
Nuove funzionalità e futura implementazione nella Sezione di Trieste
INFN-TS INFN - Sezione di Trieste - C. Strizzolo - L. Strizzolo.
Stato dei lavori E. P..
Condivisione Documentazione Tecnica
Sistema Operativo - DietPI
ONEDATA - distributed data caching -
Scenario mail in Ateneo
Tipi di Shell sh – Bourne shell csh – C shell ksh – Korn shell
Domenico Diacono CNAF 22 Marzo 2006
Progetto di integrazione Enterprises Networks Data Centers
Organizzazione di una rete Windows 2000
Windows Admin Center La rivoluzione della gestione di Windows Server
Concetti introduttivi
© 2007 SEI-Società Editrice Internazionale, Apogeo
Job Management Systems ovvero
IA2 Massimo Sponza IA2 – Osservatorio Astronomico di Trieste 2018 ICT Workshop - Catania.
SAGE – Un sistema per l’accounting dello storage in gLite
ATLAS PRIN Roma1 - status Alessandro De Salvo
CLOUD.
Transcript della presentazione:

qmail - HA Qmail in configurazione High Availability Daniele Duca

qmail - HA ✗ I sistemi di posta classici ✗ I sistemi di posta in High Availability ✗ Il software ✗ Prerequisiti per un installazione felice ✗ DRBD ✗ Heartbeat ✗ Script di servizio ✗ Organizzazione del filesystem Sommario

qmail - HA I sistemi di posta classici Mail server esterni e spammer MX secondarioMX terziario MX primario (SMTP, POP, IMAP,...) (utenti )

qmail - HA Vantaggi di un sistema classico ✗ Facilita' di gestione e svantaggi.. ✗ Presenza di un single point of failure ✗ Possibilita' di overload

qmail - HA I sistemi di posta in high availability Mail server esterni e spammer MX secondarioMX terziario (sempre utenti) Interfaccia virtuale Nodo attivoNodo inattivo Storage condiviso

qmail - HA Vantaggi di un sistema high availability ✗ Affidabilita' ✗ Ridondanza dei dati.. svantaggi ✗ Piccole complicazioni nelle configurazioni ✗ Costo

qmail - HA Software utlizzato per il sistema HA ✗ qmail ( ✗ netqmail ( ✗ vpopmail ( ✗ drbd ( ✗ heartbeat ( ✗ Vari ed eventuali (clamav, spamassassin,...)

qmail - HA Prerequisiti per un installazione felice ✗ Due server sostanzialmente identici nell architettura ✗ Spazio su disco a sufficienza ✗ File di sistema principali con permessi e ownership uguali su entrambi i server ✗ Sono preferibili due schede di rete dedicate alla sincronizzazione ✗ La directory /etc identica su entrambe le macchine

qmail - HA DRBD – /etc/drbd.conf resource drbd0 { protocol C; // Protocollo di comunicazione tra i nodi incon-degr-cmd "echo '!DRBD! pri on incon-degr' | wall ; sleep 60 ; halt -f"; startup { wfc-timeout 10; // Wait for connect Timeout degr-wfc-timeout 120; // Wait for connect se il nodo e' l'unico rimasto attivo } disk { on-io-error detach; // Azione da intraprendere su errori I/O } net { max-buffers 8192; // Dimensione massima buffer } syncer { rate 70000K; //Velocita' massima sincronizzazione } on linuxclm { device /dev/drbd0; disk /dev/sda5; address :7788; meta-disk /dev/sda6[0]; } on linuxcls { device /dev/drbd0; disk /dev/sda5; address :7788; meta-disk /dev/sda6[0]; }

qmail - HA Heartbeat - /etc/ha.d/ha.cf debugfile /var/log/ha-debug logfile /var/log/ha-log logfacility daemon # Log to syslog as facility "daemon" node linuxclm linuxcls # List our cluster members keepalive 1 # Send one heartbeat each second deadtime 10 # Declare nodes dead after 10 seconds bcast eth1 # Broadcast heartbeats oneth1 interfaces ping # Ping our mate to monitor ethernet connectivity auto_failback no # Don't fail back to linuxclm automatically respawn hacluster /usr/lib/heartbeat/ipfail # Failover on network failures Heartbeat - /etc/ha.d/haresources linuxclm cluster services

qmail - HA Script di servizio - /etc/init.d/services #! /bin/sh prefix="/opt" exec_prefix=${prefix} sbindir="${exec_prefix}/sbin" case "$1" in start) # Start daemons. cd / /etc/init.d/qmail start sleep 30;/usr/bin/crontab /etc/cron.cluster & ;; stop) # Stop daemons. cd / killall -9 tcpserver killall -9 qmail-send /usr/bin/crontab -r ;; restart | reload | force-reload) $0 stop $0 start ;; *) echo "Usage: $0 {start|stop}" >&2 exit 1 ;; esac exit 0

qmail - HA Script di servizio - /etc/init.d/cluster (thanks to Alberto Cammozzo) #!/bin/bash SHARED_MOUNTPOINT="/home" DRBD="/etc/init.d/drbd" DRBDADM="/sbin/drbdadm" MOUNT="/bin/mount" UMOUNT="/bin/umount" case "$1" in start) echo -n "Starting cluster:" $UMOUNT $SHARED_MOUNTPOINT $DRBDADM disconnect all $DRBDADM primary all $MOUNT $SHARED_MOUNTPOINT echo "." ;; stop) echo -n "Stopping cluster:" $UMOUNT $SHARED_MOUNTPOINT $DRBDADM secondary all $DRBDADM wait_connect all echo "." ;; *) echo "Usage: /etc/init.d/cluster {start|stop}" exit 1 ;; esac exit 0

qmail - HA #!/bin/sh fuori() { rm -f /tmp/roundlock exit } if [ -f /tmp/roundlock ]; then exit fi DRBDADM="/sbin/drbdadm" mntd=`mount | grep "/dev/drbd0" | wc -l` ctcd=`cat /proc/drbd | grep StandAlone | grep Primary | wc -l` if [ $mntd = 1 ]; then if [ $ctcd = 1 ]; then $DRBDADM connect all fuori fi ctcd=`cat /proc/drbd | grep StandAlone | grep Secondary | wc -l` if [ $mntd = 0 ]; then if [ $ctcd = 1 ]; then touch /tmp/roundlock $DRBDADM connect all $DRBDADM wait_connect all fuori fi ctcd=`cat /proc/drbd | grep WFConnection | grep Secondary | wc -l` if [ $mntd = 0 ]; then if [ $ctcd = 1 ]; then touch /tmp/roundlock $DRBDADM wait_connect all fuori fi ctcd=`cat /proc/drbd | grep WFConnection | grep Primary | wc -l` if [ $mntd = 0 ]; then if [ $ctcd = 1 ]; then touch /tmp/roundlock $DRBDADM secondary all $DRBDADM connect all $DRBDADM wait_connect all fuori fi ctcd=`cat /proc/drbd | grep StandAlone | grep Primary | wc -l` if [ $mntd = 0 ]; then if [ $ctcd = 1 ]; then touch /tmp/roundlock $DRBDADM secondary all $DRBDADM connect all $DRBDADM wait_connect all fuori fi Script di servizio - /bin/connector

qmail - HA sync/etc/cron.cluster sync/var/qmail vpopmail opt / - /usr - /boot - /etc - cron.cluster - /home - - /opt - /var - qmail.... Organizzazione del filesystem sui nodi / - /usr - /boot - /etc - cron.cluster - /home - /opt - /var - qmail.... Storage sincronizzato Nodo attivoNodo passivo

qmail - HA Fine! Dubbi? Perplessita'?