-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathha-schema.tex
116 lines (84 loc) · 6.16 KB
/
ha-schema.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
% HA Schema
\chapter{High availability schema}
\label{chap:ha-schema}
This chapter explains the high availability system that will be tested through the Thesis.
\section {Purpose}
The proposed HA system is an Active/passive configuration. An Active/passive cluster provides a fully redundant instance of each node, which is only brought online when its associated primary node fails (\cite{HAClusterNodeConfigurations}).
In our case, the primary node will act as the active server and it will provide Zimbra services such as web server, smtp, imap, etc. The secondary node will be idle just waiting for the primary node to fail and bring Zimbra services online when that event happens. In addition the secondary node also mirrors Zimbra data partition in the background thanks to DRBD.
\section {Main schema}
There are two servers which we will be named as the primary one and the secondary one. They are linked by means of two connections: The service and the communication link.
The service link is the main network interface which is connected via a normal switch. It will serve content to the final users. The communication link, which is used for the cluster management and synchronization is done via a crossover cable.
We can see the main schema, where we have added two final clients at figure \ref{fig:main-schema}.
\begin{figure}
\centering
\includegraphics[width=0.8\textwidth]{img/ha_main_schema.eps}
\caption{High Availability main schema}
\label{fig:main-schema}
\end{figure}
\section {Primary server}
\subsection {Specifications}
The primary server specifications are as follow:
\begin{itemize}
\item RAM: 4 GB
\item Hard disk: 100 GB
\item Processor: 2 x 2,40 Ghz
\end{itemize}
\section {Secondary server}
\subsection {Specifications}
The primary server specifications are as follow:
\begin{itemize}
\item RAM: 4 GB
\item Hard disk: 100 GB
\item Processor: 2 x 2,40 Ghz
\end{itemize}
\section {\label{sec:virtualbox-implementation}Virtualbox implementation}
\subsection {Introduction}
Although in production environments High Availability systems are implemented in Physical servers or highly optimized virtualized servers, we are going to use Oracle VM Virtualbox software to emulate the described system. This section summarizes how to create both virtual machines and link them.
\subsection {\label{subsec:primary-virtual-machine-creation}Primary Virtual Machine creation}
We click on \textit{Machine} menu and select \textit{New} option. The Create Virtual Machine wizard will appear.
\subsubsection {Name and operating system}
\begin{itemize}
\item Name: PrimaryZimbraHA
\item Type: Linux
\item Ubuntu (64 bit)
\end{itemize}
\subsubsection {Memory size}
Zimbra needs: 2048 MB as a minimum.
\subsubsection {Hard drive}
We select \textit{Create a virtual hard drive now}, \textit{Virtualbox Disk Image} as the hard drive file type, Dynamically allocated (so that the hard drive file only uses space as it fills up).
We leave the default File location and select hard disk size as 110 GB which is quite bigger than the strictly needed for our HA system.
\subsection {\label{subsec:service-link-primary}Service link network on Primary Virtual Machine}
We select \textit{PrimaryZimbraHA} virtual machine and click on \textit{Machine} menu and then in \textit{Settings} option. We will make sure we are in \textit{Network} section.
We will use default \textit{Adapter 1} for service link. We are going to summarize its setup:
\begin{itemize}
\item Attached to: \textit{Internal Network}
\item Name: ZimbraHAService
\end{itemize}
Finally we click on OK for saving changes.
\subsubsection {Secondary Virtual Machine creation}
In order to create secondary virtual machine we can either repeat the same steps as in \textbf{\ref{subsec:primary-virtual-machine-creation} Primary Virtual Machine creation}. Or we can make a linked clonation of the original machine. We will describe the latter option.
We select PrimaryZimbraHA virtual machine and then in \textit{Machine} menu we select \textit{Clone} option.
\textbf{New machine name}
\begin{itemize}
\item New machine name: SecondaryZimbraHA
\item Reinitialize the MAC address of all network cards: Checked
\end{itemize}
We select \textit{Linked clone} as Clone type.
Finally we click on \textit{Clone} button so that cloning is performed.
\subsection {Service link network on Secondary Virtual Machine}
As we did in subsection \textbf{\ref{subsec:service-link-primary} Service link network on Primary Virtual Machine} we select \textit{SecondaryZimbraHA} virtual machine and click on \textit{Machine} menu and then in \textit{Settings} option. We will make sure we are in \textit{Network} section.
We will use default \textit{Adapter 1} for service link. We are going to summarize its setup:
\begin{itemize}
\item Attached to: \textit{Internal Network}
\item Name: \textit{ZimbraHAService}
\end{itemize}
If we have cloned the virtual machine settings might be correct by default.
Finally we click on OK for saving changes.
\subsection {Communication link}
For both PrimaryZimbraHA and SecondaryZimbraHA virtual machines we will perform a very similar operation than the one done in subsection \textbf{\ref{subsec:service-link-primary} Service link network on Primary Virtual Machine}.
But now we make sure that we \textit{Adapter 2} is enabled as an \textit{Internal Network} which name is \textit{ZimbraHACommunication}.
\subsection {NAT link}
In order to make installation easier we will enable \textit{Adapter 3} in both virtual machines so that it can use the host Internet in order to fetch packages and perform post installation setup.
Similarly to subsection \textbf{\ref{subsec:service-link-primary} Service link network on Primary Virtual Machine} we make sure that \textit{Adapter 3} is enabled and that it is attached to NAT.
\subsection {Email client Virtual Machine}
A Virtual Machine whose only purpose is to test HA from a service link point of view might be added if needed. We are not to cover the installation and its setup here. We will just mention its network setup is similar to PrimaryZimbraHA and SecondaryZimbraHA but removing the second interface which serves for communication link and that, of course, does not make sense in an Email client VM.