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