-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from dickon/master
OXT-168: add a brief README file. With a diagram!
- Loading branch information
Showing
3 changed files
with
231 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
The OpenXT synchronizers | ||
|
||
![Block diagram of the OpenXT Synchonizer](diagrams/Syncstruct.png) | ||
|
||
Synchronizer XT enables sysadmins and IT professionals to securely and | ||
easily manage a large number of XenClient laptops and the Windows VMs | ||
that run on them. | ||
|
||
This contains the client part of the OpenXT synchronizer. The code here (mainly | ||
sync_client/client.py) is a python program that runs in a low privilege service VM, | ||
makes an HTTPS to a synchronizer web server which tells it what VMs it should be running. | ||
client.py then compares this to the current state of the machine, downloads disks, configures | ||
and starts VM as appropriate. | ||
|
||
Note that client.py is a short running process which maintains no state. It runs once | ||
to completion and then exits. Normally client.py is started by launcher.py which handles | ||
getting the configuring information for client.py and running it regularly, and handling exits. | ||
|
||
## Dependencies | ||
|
||
sync-client requires: | ||
|
||
* a synchronizer server to get target state and VHDs from (see https://github.com/openxt/sync-server/). In | ||
turn the synchronizer server will require: | ||
** sync-database, a schema and stored procedures | ||
** sync-cli, commnad line tools to access that database | ||
** sync-wui, an optional web user interface for administrators | ||
* icbinn (https://github.com/openxt/icbinn) to provide specific filesystem access to dom0 to write VHD files | ||
* Python 2, (http://python.org) | ||
* dbus-python (https://pypi.python.org/pypi/pydbus/0.2) | ||
|
||
Normally sync-client is built as part of an OpenXT build via the recipe (OpenEmbedded makefile) at: | ||
|
||
https://github.com/OpenXT/xenclient-oe/blob/master/recipes-openxt/xenclient/sync-client_git.bb | ||
|
||
## Getting help | ||
|
||
Start at: | ||
|
||
http://www.openxt.org/ | ||
|
||
for details of reaching the OpenXT community. | ||
|
||
|
||
## Authors | ||
|
||
This document was written by Dickon Reed, [email protected], 20th | ||
February 2015. | ||
|
||
The OpenXT synchronizer was written by a wider team, who may wish to add | ||
themselves to this README file. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,179 @@ | ||
<!DOCTYPE html> | ||
<html lang="en" dir="ltr" class="client-nojs"> | ||
<head> | ||
<meta charset="UTF-8" /> | ||
<title>File:Syncstruct.dia - XenClient</title> | ||
<meta http-equiv="X-UA-Compatible" content="IE=EDGE" /> | ||
<meta name="generator" content="MediaWiki 1.23.3" /> | ||
<link rel="shortcut icon" href="/favicon.ico" /> | ||
<link rel="search" type="application/opensearchdescription+xml" href="/opensearch_desc.php" title="XenClient (en)" /> | ||
<link rel="EditURI" type="application/rsd+xml" href="http://wiki.cam.xci-test.com/api.php?action=rsd" /> | ||
<link rel="alternate" type="application/atom+xml" title="XenClient Atom feed" href="/index.php?title=Special:RecentChanges&feed=atom" /> | ||
<link rel="stylesheet" href="http://wiki.cam.xci-test.com/load.php?debug=false&lang=en&modules=ext.visualEditor.viewPageTarget.noscript%7Cmediawiki.legacy.commonPrint%2Cshared%7Cmediawiki.skinning.interface%7Cmediawiki.ui.button%7Cskins.monobook.styles&only=styles&skin=monobook&*" /> | ||
<!--[if IE 6]><link rel="stylesheet" href="/skins/monobook/IE60Fixes.css?303" media="screen" /><![endif]--> | ||
<!--[if IE 7]><link rel="stylesheet" href="/skins/monobook/IE70Fixes.css?303" media="screen" /><![endif]--><meta name="ResourceLoaderDynamicStyles" content="" /> | ||
<link rel="stylesheet" href="http://wiki.cam.xci-test.com/load.php?debug=false&lang=en&modules=site&only=styles&skin=monobook&*" /> | ||
<style>a:lang(ar),a:lang(kk-arab),a:lang(mzn),a:lang(ps),a:lang(ur){text-decoration:none} | ||
/* cache key: wikidb:resourceloader:filter:minify-css:7:b36fd1c042133c9c9b60260f7c29b237 */</style> | ||
<script src="http://wiki.cam.xci-test.com/load.php?debug=false&lang=en&modules=startup&only=scripts&skin=monobook&*"></script> | ||
<script>if(window.mw){ | ||
mw.config.set({"wgCanonicalNamespace":"File","wgCanonicalSpecialPageName":false,"wgNamespaceNumber":6,"wgPageName":"File:Syncstruct.dia","wgTitle":"Syncstruct.dia","wgCurRevisionId":4564,"wgRevisionId":4564,"wgArticleId":321,"wgIsArticle":true,"wgIsRedirect":false,"wgAction":"view","wgUserName":null,"wgUserGroups":["*"],"wgCategories":[],"wgBreakFrames":false,"wgPageContentLanguage":"en","wgPageContentModel":"wikitext","wgSeparatorTransformTable":["",""],"wgDigitTransformTable":["",""],"wgDefaultDateFormat":"dmy","wgMonthNames":["","January","February","March","April","May","June","July","August","September","October","November","December"],"wgMonthNamesShort":["","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],"wgRelevantPageName":"File:Syncstruct.dia","wgIsProbablyEditable":false,"wgRestrictionEdit":[],"wgRestrictionMove":[],"wgRestrictionUpload":[],"wgVisualEditor":{"isPageWatched":false,"magnifyClipIconURL":"/skins/common/images/magnify-clip.png","pageLanguageCode":"en","pageLanguageDir":"ltr","svgMaxSize":2048}}); | ||
}</script><script>if(window.mw){ | ||
mw.loader.implement("user.options",function($,jQuery){mw.user.options.set({"ccmeonemails":0,"cols":80,"date":"default","diffonly":0,"disablemail":0,"editfont":"default","editondblclick":0,"editsectiononrightclick":0,"enotifminoredits":0,"enotifrevealaddr":0,"enotifusertalkpages":1,"enotifwatchlistpages":1,"extendwatchlist":0,"fancysig":0,"forceeditsummary":0,"gender":"unknown","hideminor":0,"hidepatrolled":0,"imagesize":2,"math":1,"minordefault":0,"newpageshidepatrolled":0,"nickname":"","norollbackdiff":0,"numberheadings":0,"previewonfirst":0,"previewontop":1,"rcdays":7,"rclimit":50,"rows":25,"showhiddencats":0,"shownumberswatching":1,"showtoolbar":1,"skin":"monobook","stubthreshold":0,"thumbsize":2,"underline":2,"uselivepreview":0,"usenewrc":0,"watchcreations":1,"watchdefault":1,"watchdeletion":0,"watchlistdays":3,"watchlisthideanons":0,"watchlisthidebots":0,"watchlisthideliu":0,"watchlisthideminor":0,"watchlisthideown":0,"watchlisthidepatrolled":0,"watchmoves":0,"wllimit":250, | ||
"useeditwarning":1,"prefershttps":1,"visualeditor-enable":1,"visualeditor-enable-experimental":0,"visualeditor-betatempdisable":0,"language":"en","variant-gan":"gan","variant-iu":"iu","variant-kk":"kk","variant-ku":"ku","variant-shi":"shi","variant-sr":"sr","variant-tg":"tg","variant-uz":"uz","variant-zh":"zh","searchNs0":true,"searchNs1":false,"searchNs2":false,"searchNs3":false,"searchNs4":false,"searchNs5":false,"searchNs6":false,"searchNs7":false,"searchNs8":false,"searchNs9":false,"searchNs10":false,"searchNs11":false,"searchNs12":false,"searchNs13":false,"searchNs14":false,"searchNs15":false,"variant":"en"});},{},{});mw.loader.implement("user.tokens",function($,jQuery){mw.user.tokens.set({"editToken":"+\\","patrolToken":false,"watchToken":false});},{},{}); | ||
/* cache key: wikidb:resourceloader:filter:minify-js:7:fe59e018522293342af3473987427bd6 */ | ||
}</script> | ||
<script>if(window.mw){ | ||
mw.loader.load(["mediawiki.page.startup","mediawiki.legacy.wikibits","mediawiki.legacy.ajax","ext.visualEditor.viewPageTarget.init"]); | ||
}</script> | ||
<script src="/extensions/UmlCanvas/Canvas2D.standalone.min.js" type="text/javascript"></script><script src="/extensions/UmlCanvas/UmlCanvas.shared.min.js" type="text/javascript"></script><link href="/extensions/UmlCanvas/UmlCanvas.css" rel="stylesheet" type="text/css" /></head> | ||
<body class="mediawiki ltr sitedir-ltr ns-6 ns-subject page-File_Syncstruct_dia skin-monobook action-view"> | ||
<div id="globalWrapper"> | ||
<div id="column-content"><div id="content" class="mw-body-primary" role="main"> | ||
<a id="top"></a> | ||
|
||
<h1 id="firstHeading" class="firstHeading" lang="en"><span dir="auto">File:Syncstruct.dia</span></h1> | ||
<div id="bodyContent" class="mw-body"> | ||
<div id="siteSub">From XenClient</div> | ||
<div id="contentSub"></div> | ||
<div id="jump-to-nav" class="mw-jump">Jump to: <a href="#column-one">navigation</a>, <a href="#searchInput">search</a></div> | ||
|
||
<!-- start content --> | ||
<div id="mw-content-text"><ul id="filetoc"><li><a href="#file">File</a></li> | ||
<li><a href="#filehistory">File history</a></li> | ||
<li><a href="#filelinks">File usage</a></li></ul><div class="fullMedia"><span class="dangerousLink"><a href="/images/1/1a/Syncstruct.dia" class="internal" title="Syncstruct.dia">Syncstruct.dia</a></span> ‎<span class="fileInfo">(file size: 4 KB, MIME type: application/x-gzip)</span></div> | ||
<div class="mediaWarning"><strong>Warning:</strong> This file type may contain malicious code. | ||
By executing it, your system may be compromised.</div> | ||
<div id="mw-imagepage-content" lang="en" dir="ltr" class="mw-content-ltr"><p>dia source | ||
</p> | ||
<!-- | ||
NewPP limit report | ||
CPU time usage: 0.000 seconds | ||
Real time usage: 0.001 seconds | ||
Preprocessor visited node count: 1/1000000 | ||
Preprocessor generated node count: 4/1000000 | ||
Post‐expand include size: 0/2097152 bytes | ||
Template argument size: 0/2097152 bytes | ||
Highest expansion depth: 1/40 | ||
Expensive parser function count: 0/100 | ||
--> | ||
|
||
<!-- Saved in parser cache with key wikidb:pcache:idhash:321-0!*!*!*!*!*!* and timestamp 20150220164157 and revision id 4564 | ||
--> | ||
</div><h2 id="filehistory">File history</h2> | ||
<div id="mw-imagepage-section-filehistory"> | ||
<p>Click on a date/time to view the file as it appeared at that time. | ||
</p> | ||
<table class="wikitable filehistory"> | ||
<tr><td></td><th>Date/Time</th><th>Dimensions</th><th>User</th><th>Comment</th></tr> | ||
<tr><td>current</td><td class='filehistory-selected' style='white-space: nowrap;'><a href="/images/1/1a/Syncstruct.dia">17:10, 11 April 2012</a></td><td> <span style="white-space: nowrap;">(4 KB)</span></td><td><a href="/index.php?title=User:Dickonr&action=edit&redlink=1" class="new mw-userlink" title="User:Dickonr (page does not exist)">Dickonr</a> <span style="white-space: nowrap;"> <span class="mw-usertoollinks">(<a href="/index.php?title=User_talk:Dickonr&action=edit&redlink=1" class="new" title="User talk:Dickonr (page does not exist)">Talk</a> | <a href="/index.php/Special:Contributions/Dickonr" title="Special:Contributions/Dickonr">contribs</a>)</span></span></td><td dir="ltr"></td></tr> | ||
<tr><td></td><td style='white-space: nowrap;'><a href="/images/archive/1/1a/20120411171057%21Syncstruct.dia">14:26, 17 January 2012</a></td><td> <span style="white-space: nowrap;">(4 KB)</span></td><td><a href="/index.php?title=User:Apeace&action=edit&redlink=1" class="new mw-userlink" title="User:Apeace (page does not exist)">Apeace</a> <span style="white-space: nowrap;"> <span class="mw-usertoollinks">(<a href="/index.php?title=User_talk:Apeace&action=edit&redlink=1" class="new" title="User talk:Apeace (page does not exist)">Talk</a> | <a href="/index.php/Special:Contributions/Apeace" title="Special:Contributions/Apeace">contribs</a>)</span></span></td><td dir="ltr">Minor changes; change BED to Python.</td></tr> | ||
<tr><td></td><td style='white-space: nowrap;'><a href="/images/archive/1/1a/20120117142602%21Syncstruct.dia">16:44, 11 January 2012</a></td><td> <span style="white-space: nowrap;">(4 KB)</span></td><td><a href="/index.php?title=User:Dickonr&action=edit&redlink=1" class="new mw-userlink" title="User:Dickonr (page does not exist)">Dickonr</a> <span style="white-space: nowrap;"> <span class="mw-usertoollinks">(<a href="/index.php?title=User_talk:Dickonr&action=edit&redlink=1" class="new" title="User talk:Dickonr (page does not exist)">Talk</a> | <a href="/index.php/Special:Contributions/Dickonr" title="Special:Contributions/Dickonr">contribs</a>)</span></span></td><td dir="ltr">change language for sync-client </td></tr> | ||
<tr><td></td><td style='white-space: nowrap;'><a href="/images/archive/1/1a/20120111164404%21Syncstruct.dia">16:06, 10 January 2012</a></td><td> <span style="white-space: nowrap;">(4 KB)</span></td><td><a href="/index.php?title=User:Dickonr&action=edit&redlink=1" class="new mw-userlink" title="User:Dickonr (page does not exist)">Dickonr</a> <span style="white-space: nowrap;"> <span class="mw-usertoollinks">(<a href="/index.php?title=User_talk:Dickonr&action=edit&redlink=1" class="new" title="User talk:Dickonr (page does not exist)">Talk</a> | <a href="/index.php/Special:Contributions/Dickonr" title="Special:Contributions/Dickonr">contribs</a>)</span></span></td><td dir="ltr">relabel database </td></tr> | ||
<tr><td></td><td style='white-space: nowrap;'><a href="/images/archive/1/1a/20120110160626%21Syncstruct.dia">14:34, 10 January 2012</a></td><td> <span style="white-space: nowrap;">(4 KB)</span></td><td><a href="/index.php?title=User:Dickonr&action=edit&redlink=1" class="new mw-userlink" title="User:Dickonr (page does not exist)">Dickonr</a> <span style="white-space: nowrap;"> <span class="mw-usertoollinks">(<a href="/index.php?title=User_talk:Dickonr&action=edit&redlink=1" class="new" title="User talk:Dickonr (page does not exist)">Talk</a> | <a href="/index.php/Special:Contributions/Dickonr" title="Special:Contributions/Dickonr">contribs</a>)</span></span></td><td dir="ltr"></td></tr> | ||
<tr><td></td><td style='white-space: nowrap;'><a href="/images/archive/1/1a/20120110143401%21Syncstruct.dia">14:27, 10 January 2012</a></td><td> <span style="white-space: nowrap;">(4 KB)</span></td><td><a href="/index.php?title=User:Dickonr&action=edit&redlink=1" class="new mw-userlink" title="User:Dickonr (page does not exist)">Dickonr</a> <span style="white-space: nowrap;"> <span class="mw-usertoollinks">(<a href="/index.php?title=User_talk:Dickonr&action=edit&redlink=1" class="new" title="User talk:Dickonr (page does not exist)">Talk</a> | <a href="/index.php/Special:Contributions/Dickonr" title="Special:Contributions/Dickonr">contribs</a>)</span></span></td><td dir="ltr">dia source</td></tr> | ||
</table> | ||
|
||
</div> | ||
<ul> | ||
<li id="mw-imagepage-upload-disallowed">You cannot overwrite this file.</li> | ||
</ul> | ||
<h2 id="filelinks">File usage</h2> | ||
<div id='mw-imagepage-section-linkstoimage'> | ||
<p>The following page links to this file: | ||
</p><ul class="mw-imagepage-linkstoimage"> | ||
<li class="mw-imagepage-linkstoimage-ns0"><a href="/index.php/Synchronizer_XT_Overview" title="Synchronizer XT Overview">Synchronizer XT Overview</a></li> | ||
</ul> | ||
</div> | ||
</div><div class="printfooter"> | ||
Retrieved from "<a href="http://wiki.cam.xci-test.com/index.php?title=File:Syncstruct.dia&oldid=4564">http://wiki.cam.xci-test.com/index.php?title=File:Syncstruct.dia&oldid=4564</a>"</div> | ||
<div id='catlinks' class='catlinks catlinks-allhidden'></div> <!-- end content --> | ||
<div class="visualClear"></div> | ||
</div> | ||
</div></div> | ||
<div id="column-one"> | ||
<h2>Navigation menu</h2> | ||
<div id="p-cactions" class="portlet" role="navigation"> | ||
<h3>Views</h3> | ||
<div class="pBody"> | ||
<ul> | ||
<li id="ca-nstab-image" class="selected"><a href="/index.php/File:Syncstruct.dia" title="View the file page [c]" accesskey="c">File</a></li> | ||
<li id="ca-talk" class="new"><a href="/index.php?title=File_talk:Syncstruct.dia&action=edit&redlink=1" title="Discussion about the content page [t]" accesskey="t">Discussion</a></li> | ||
<li id="ca-viewsource"><a href="/index.php?title=File:Syncstruct.dia&action=edit" title="This page is protected. You can view its source [e]" accesskey="e">View source</a></li> | ||
<li id="ca-history"><a href="/index.php?title=File:Syncstruct.dia&action=history" rel="archives" title="Past revisions of this page [h]" accesskey="h">History</a></li> | ||
</ul> | ||
</div> | ||
</div> | ||
<div class="portlet" id="p-personal" role="navigation"> | ||
<h3>Personal tools</h3> | ||
<div class="pBody"> | ||
<ul> | ||
<li id="pt-login"><a href="/index.php?title=Special:UserLogin&returnto=File%3ASyncstruct.dia" title="You are encouraged to log in; however, it is not mandatory [o]" accesskey="o">Log in</a></li> | ||
</ul> | ||
</div> | ||
</div> | ||
<div class="portlet" id="p-logo" role="banner"> | ||
<a href="/index.php/Main_Page" style="background-image: url(http://www.cam.xci-test.com/xc_dist/xen_logo.gif);" title="Visit the main page"></a> | ||
</div> | ||
<div class="generated-sidebar portlet" id="p-navigation" role="navigation"> | ||
<h3>Navigation</h3> | ||
<div class='pBody'> | ||
<ul> | ||
<li id="n-mainpage-description"><a href="/index.php/Main_Page" title="Visit the main page [z]" accesskey="z">Main page</a></li> | ||
<li id="n-recentchanges"><a href="/index.php/Special:RecentChanges" title="A list of recent changes in the wiki [r]" accesskey="r">Recent changes</a></li> | ||
<li id="n-randompage"><a href="/index.php/Special:Random" title="Load a random page [x]" accesskey="x">Random page</a></li> | ||
<li id="n-help"><a href="https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents" title="The place to find out">Help</a></li> | ||
</ul> | ||
</div> | ||
</div> | ||
<div id="p-search" class="portlet" role="search"> | ||
<h3><label for="searchInput">Search</label></h3> | ||
<div id="searchBody" class="pBody"> | ||
<form action="/index.php" id="searchform"> | ||
<input type='hidden' name="title" value="Special:Search"/> | ||
<input type="search" name="search" placeholder="Search" title="Search XenClient [f]" accesskey="f" id="searchInput" /> | ||
<input type="submit" name="go" value="Go" title="Go to a page with this exact name if exists" id="searchGoButton" class="searchButton" />  | ||
<input type="submit" name="fulltext" value="Search" title="Search the pages for this text" id="mw-searchButton" class="searchButton" /> | ||
</form> | ||
|
||
</div> | ||
</div> | ||
<div class="portlet" id="p-tb" role="navigation"> | ||
<h3>Tools</h3> | ||
<div class="pBody"> | ||
<ul> | ||
<li id="t-whatlinkshere"><a href="/index.php/Special:WhatLinksHere/File:Syncstruct.dia" title="A list of all wiki pages that link here [j]" accesskey="j">What links here</a></li> | ||
<li id="t-recentchangeslinked"><a href="/index.php/Special:RecentChangesLinked/File:Syncstruct.dia" title="Recent changes in pages linked from this page [k]" accesskey="k">Related changes</a></li> | ||
<li id="t-specialpages"><a href="/index.php/Special:SpecialPages" title="A list of all special pages [q]" accesskey="q">Special pages</a></li> | ||
<li id="t-print"><a href="/index.php?title=File:Syncstruct.dia&printable=yes" rel="alternate" title="Printable version of this page [p]" accesskey="p">Printable version</a></li> | ||
<li id="t-permalink"><a href="/index.php?title=File:Syncstruct.dia&oldid=4564" title="Permanent link to this revision of the page">Permanent link</a></li> | ||
<li id="t-info"><a href="/index.php?title=File:Syncstruct.dia&action=info">Page information</a></li> | ||
<li id="t-pdf"> | ||
<a href="/index.php?title=Special:PdfPrint&page=File:Syncstruct.dia">Print as PDF</a></li> </ul> | ||
</div> | ||
</div> | ||
</div><!-- end of the left (by default at least) column --> | ||
<div class="visualClear"></div> | ||
<div id="footer" role="contentinfo"> | ||
<div id="f-poweredbyico"> | ||
<a href="//www.mediawiki.org/"><img src="/skins/common/images/poweredby_mediawiki_88x31.png" alt="Powered by MediaWiki" width="88" height="31" /></a> | ||
</div> | ||
<ul id="f-list"> | ||
<li id="lastmod"> This page was last modified on 11 April 2012, at 17:10.</li> | ||
<li id="viewcount">This page has been accessed 353 times.</li> | ||
<li id="privacy"><a href="/index.php/XenClient:Privacy_policy" title="XenClient:Privacy policy">Privacy policy</a></li> | ||
<li id="about"><a href="/index.php/XenClient:About" title="XenClient:About">About XenClient</a></li> | ||
<li id="disclaimer"><a href="/index.php/XenClient:General_disclaimer" title="XenClient:General disclaimer">Disclaimers</a></li> | ||
</ul> | ||
</div> | ||
</div> | ||
<script>/*<![CDATA[*/window.jQuery && jQuery.ready();/*]]>*/</script><script>if(window.mw){ | ||
mw.loader.state({"site":"loading","user":"ready","user.groups":"ready"}); | ||
}</script> | ||
<script>if(window.mw){ | ||
mw.loader.load(["mediawiki.action.view.postEdit","mediawiki.user","mediawiki.hidpi","mediawiki.page.ready","mediawiki.searchSuggest"],null,true); | ||
}</script> | ||
<script src="http://wiki.cam.xci-test.com/load.php?debug=false&lang=en&modules=site&only=scripts&skin=monobook&*"></script> | ||
<script>if(window.mw){ | ||
mw.config.set({"wgBackendResponseTime":274}); | ||
}</script></body></html> |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.