source: trunk/website/monitas.shtml

Last change on this file was 932, checked in by bruno, 13 years ago

merge -r913:931 $SVN_M/branches/stable

File size: 11.5 KB
Line 
1<H1 ALIGN=CENTER>
2Latest</H1>
3<P>
4New documentation (<A HREF="monitas/stefan/html/monitasconcepts.html">HTML</A>
5and <A HREF="monitas/stefan/monitasconcepts.pdf">PDF</A>) by Stefan
6Huebner. Nice job!</P>
7<P ALIGN=RIGHT>
8- Hugo, 08/26/2002</P>
9<P>
10New <A HREF="monitas/monitas-latest.tgz">snapshot</A>, hacked by a
11user. Looks good.</P>
12<P ALIGN=RIGHT>
13- Hugo, 08/01/2002</P>
14<P>
15To report a bug, please go to the <A HREF="http://geek.j2solutions.net/bugzilla/">Bugzilla</A>
16page. (Nice work, KP!)</P>
17<P ALIGN=RIGHT>
18- Hugo, 06/21/2002</P>
19<P>
20Latest Monitas tarball is available <A HREF="monitas/monitas-0.1a.tgz">here</A>.
21Use it in conjunction with the latest daily snapshot. It lets you
22backup, compare and restore archives over a network.</P>
23<P ALIGN=RIGHT>
24- Hugo, 06/19/2002</P>
25<P>
26Latest Monitas tarball is available <A HREF="monitas/monitas-0.1a.tgz">here</A>.
27It is alpha-quality code but it works. I can backup, compare and
28restore over a network. It doesn't nuke yet but it works fine on a
29live filesystem. (It restores to /mnt/TESTING as a precaution.)</P>
30<P>
31Monitas-server (daemon) is 25% complete.</P>
32<P>
33Monitas-client (daemon) is 40% complete.</P>
34<P>
35The CLI's, the GUI's and the start/stop wrappers are still in my
36head. :)</P>
37<P ALIGN=RIGHT>
38- Hugo, 06/14/2002</P>
39<P>
40&lt;enderAWAY&gt; hugo: so, I made a new list for monitas.<BR>
41&lt;enderAWAY&gt; monitas-list@j2solutions.net<BR>
42&lt;enderAWAY&gt; send an email to
43monitas-list-subscribe@j2solutions.net to subscribe.</P>
44<P>
45Folks, you heard it here first... ;-)</P>
46<P ALIGN=RIGHT>
47-Hugo, 05/07/2002</P>
48<H2 ALIGN=CENTER>
49<A NAME="FAQ"></A>FAQ</H2>
50<P>
51<I>Q: What is Monitas?</I></P>
52<P>
53A: It isn't ready for public consumption yet but it will be by 02/Q4.
54It will backup and restore over a network. It will let the sysadm
55backup, restore, wipe, and even prep from bare metal the PCs residing
56on the network, all from the comfort of the sysadm's console. Data
57backup/restoration may be requested by the client application. Data
58may be restored without the client having to lift a finger. The
59sysadm can run the show from the server.</P>
60<P>
61I'm going to use this web page as a place where the plan can
62crystallize. Over time, this page will grow into a logical
63explanation of the inner workings of Monitas. This will make it
64easier for others to contribute. It will also help me: I can't write
65half of what Monitas requires :) but I am a quick study and I prefer
66to study in small chunks.</P>
67<P>
68<I>Q: Will Monitas be Open Source?</I></P>
69<P>
70A: Yes. The server and client are made available under the GNU Public License.</P>
71<P>
72<I>Q: Are you crazy? How can you write good software and give it away?</I></P>
73<P>
74A: Well, I hope someone will see Monitas (and Mondo and Mindi) and
75hire me. I am a UK citizen (technically, a 'subject' because we have
76a monarchy but no-one pays much attention to them nowadays) dating a
77Texan. It is very hard to find a job if you do not have a Green Card.
78It would be immoral to ask Michelle to marry me for any reason other
79than love. Therefore, I am looking high and low for any means to
80support myself while I date her. We shall eventually marry and remain
81in the States but in the meantime, I am having to watch my
82expenditure carefully.</P>
83<P>
84Why does this affect you? Well, if you use my software regularly but
85don't pay for it, then eventually I'll have to stop developing it. Of
86course, you'll probably find another $0 program to replace mine, so
87you won't care, but I would rather keep Mondo going for you and the
88tens of thousands of users like you, who rely on Mondo.</P>
89<P>
90Monitas will be better than Mondo. Monitas will use Mondo but for
91client/server network backup and maintenance. If you work for a
92company which uses my software on a regular basis, please consider
93contributing to the project financially or with source patches. How
94else can the project keep going?</P>
95<P>
96So, yes, I'm crazy. :-) I actually believe people are willing to
97support projects like this one, especially if they are using it daily anyway.</P>
98<P>
99<I>Q: Why should commercial users pay for Monitas?</I></P>
100<P>
101A: If you don't support the project, you can't expect me to offer you
1021-to-1 technical support.</P>
103<P>
104<!-- $MVD$:spaceretainer() -->&nbsp;</P>
105<H2 ALIGN=CENTER>
106<A NAME="progress"></A>Progress</H2>
107<P>
108The client is coming along nicely. So is the server. It'll be
109September before beta-testing commences but the alpha code is already available.</P>
110<H3>
111Server</H3>
112<P>
113The server will come in three parts - the daemon, the CLI
114(command-line interface), and the GUI. The server will keep an SQL
115database of backup information, so that the sysadm can orchestrate
116the smooth backup/restore of data over the network.</P>
117<P>
118The daemon will check its schedule once a minute. (The schedule will
119be a simple text file, to avoid the need to interrogate the SQL
120database 60 times an hour.) If a backup is due to commence now, the
121daemon sends a signal to the client, asking it to begin archiving and
122submitting data for storage. The daemon then receives the data,
123stores it, labels it and indexes it in the SQL database.</P>
124<P>
125If a restore event is requested by the sysadm (or if it is
126scheduled), the daemon tells the client to prepare to receive data.
127The daemon then sends the data and tells the client to reboot if
128necessary (before or after is determined by the nature of the
129scheduled/requested event).</P>
130<P>
131The CLI allows the sysadm to schedule and request events. It will be
132a no-frills interface to the SQL database (and the text file
133containing the backup schedule). Because the daemon is controlled by
134one text file and an SQL database, it is easy to write a client for
135it. So, a GUI should be no problem. I could even write an interface
136in PHP... :^)</P>
137<P>
138The CLI and GUI are really not that hard. The daemon is the hard
139part. In theory, I could Open the CLI and GUI, just for the heck of
140it. The daemon, no way.</P>
141<H3>
142Client</H3>
143<P>
144The client will respond to triggers sent by the server. It will
145backup and restore noninteractively over the network. Like the
146server, the client will come in three parts - the daemon, the CLI,
147and the GUI.</P>
148<P>
149The daemon will wait until it is asked to backup/restore. Then, it
150backs up / restores. Simple.</P>
151<P>
152The CLI will interrogate the daemon. It will permit the client's user
153to place a request with the syadm for a backup/restore operation.
154If/when the sysadm okays it then the backup/restore will proceed.</P>
155<P>
156The GUI will do a prettier job than the CLI. That's about it. The
157client is pretty much a self-cleaning oven.</P>
158<P>
159<!-- $MVD$:spaceretainer() -->&nbsp;</P>
160<H2 ALIGN=CENTER>
161<A NAME="original_email"></A>How it started</H2>
162<P>
163<I>Here is the original e-mail, sent to the Mondo mailing list on
164April 26th, 2002:-</I></P>
165<P>
166We've been kicking some ideas around in #mondo
167(irc.openprojects.net). Here is what we have come up with.</P>
168<P>
169Think, &quot;Client/server backup with an attitude&quot;. This will
170be Linux-only for now but we could port to Windows in future, in theory.</P>
171<P>
172Mondo Server (hereafter, &quot;MS&quot;) will:-</P>
173<UL>
174<LI CLASS="mvd-P">
175<P>
176accept requests to backup Mondo Clients (hereafter, &quot;MCs&quot;)<BR>
177<LI CLASS="mvd-P">accept requests to restore live to MCs<BR>
178<LI CLASS="mvd-P">send Reboot&amp;Restore trigger to MCs<BR>
179<LI CLASS="mvd-P">send &quot;backup to me&quot; triggers to MCs<BR>
180<LI CLASS="mvd-P">send &quot;restore live from me&quot; triggers to MCs<BR>
181<LI CLASS="mvd-P">keep a database of ISOs and their info, in a format
182which makes it easy for the sysadm to figure out:-
183<UL>
184<LI CLASS="mvd-P">when was _this_ MC last backed up?<BR>
185<LI CLASS="mvd-P">how old is our most recent backup of
186/home/hugo/personal/letter-to-girlfriend.doc (or whatever)?<BR>
187<LI CLASS="mvd-P">when is _this_ MC next due to be backed up?<BR>
188<LI CLASS="mvd-P">...etc.</UL>
189<LI CLASS="mvd-P">&nbsp;store MCs' backups on device (tape, CD, hard
190disks, etc.) controlled by MS, not the MCs</P>
191</UL>
192<P>
193Mondo Client (daemon running on the 'client', a workstation PC) will:-</P>
194<UL>
195<LI CLASS="mvd-P">
196<P>
197receive triggers from MS<BR>
198<LI CLASS="mvd-P">backup PC in response to MS's trigger<BR>
199<LI CLASS="mvd-P">send ISO's to MS<BR>
200<LI CLASS="mvd-P">restore live data streamed from MS to local PC, in
201response to trigger from MS<BR>
202<LI CLASS="mvd-P">reboot&amp;restore from bare metal noninteractively
203in response to request from MS; restore data from MS to MC<BR>
204<LI CLASS="mvd-P">send request to MS, asking for a particular
205directory to be restored to MC (or for a bare-metal restore, if desired)</P>
206</UL>
207<P>
208If you invoke mondoserver (the server program) with -d then it will
209run in daemon mode. It will trigger backups in accordance with its
210configuration. I expect that the MS will be configured to start
211mondoserver at boot-time and to shut it down on reboot/shutdown.</P>
212<P>
213If you invoke mondoclient (the client program) with -d then it will
214run in daemon mode. It will respond to triggers received from the MS.
215I expect that the MCs will be configured to start mondoclient at
216boot-time, etc.</P>
217<P>
218If you run mondoserver without parameters then it will give you a
219warm, friendly interface with which to configure your MS.</P>
220<P>
221If you run mondoclient without parameters then it will give you a
222warm, friendly interface to let you watch what mondoclient (the
223daemon) is doing to your MC. You may push a button to request that
224your MC be backed up. The MS will decide whether to give you what you
225want. (The request will probably sit in a special &quot;The user
226asked for this&quot; queue, where the sysadm can see how often you've
227requested it, whether you should have it, etc.)</P>
228<P>
229Here are the bits I know how to do:-</P>
230<UL>
231<LI CLASS="mvd-P">
232<P>
233[MS] store MCs' backups on device (tape, CD, hard disks, etc.)
234controlled by MS, not the MCs<BR>
235<LI CLASS="mvd-P">[MC] backup the local PC in response to MS's trigger<BR>
236<LI CLASS="mvd-P">[MC] reboot&amp;restore from bare metal (without a
237floppy or a CD) over a network</P>
238</UL>
239<P>
240I haven't figured out these bits yet:-</P>
241<UL>
242<LI CLASS="mvd-P">
243<P>
244[MS] send triggers to MCs<BR>
245<LI CLASS="mvd-P">[MC] receive triggers from MS<BR>
246<LI CLASS="mvd-P">[MS] keep a database of ISOs and their info, in a
247format which makes it easy for the sysadm to track backups<BR>
248<LI CLASS="mvd-P">[MC/MS] send data back &amp; forth (the backups
249themselves, I mean) &lt;--- netcat?</P>
250</UL>
251<P>
252Basically, I know very little about networking but I can learn. I
253also don't own any networked PC's (well, I do but they're 3000 miles
254away). So, I have to do some serious thinking. I can buy some cheap,
255used PC's and network them; use them as testbeds/clients; buy a
256slightly more expensive PC as a server; then I can go from there. I
257expect to do it for &lt;$1500. My apartment hasn't sold yet, so I
258can't start the heavy coding until then. I expect to start within a
259month, though.</P>
260<P>
261I _think_ I can do this by the end of the year. If I'm lucky, I can
262have most of this running reliably by August/September.</P>
263<P>
264I know there are some fairly big companies which use Mondo. I know
265some of their employees are on this list. If you think you know
266someone who would be interested in sponsoring the client/server phase
267of Mondo, please let me know.</P>
268<P>
269There are 3 or 4 hardcore developers waiting to get this done. &gt;:-D</P>
270<P>
271-Hugo, 04/26/2002</P>
272<P>
273<!-- $MVD$:spaceretainer() -->&nbsp;</TD>
274</TR>
275<TR>
276<TD WIDTH="14%" VALIGN=TOP></TD>
277<TD WIDTH="86%" VALIGN=TOP></TD>
278</TR>
279</TABLE></P>
280<P>
281&nbsp;
282</BODY>
283</HTML>
Note: See TracBrowser for help on using the repository browser.