<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns="http://purl.org/rss/1.0/">
  <channel rdf:about="http://times.usefulinc.com/taghosting">
    <title>Edd Dumbill's Weblog: 'hosting' articles</title>
    <description>Articles tagged as 'hosting' from Edd Dumbill, technology writer and free software hacker.</description>
    <link>http://times.usefulinc.com/taghosting</link>
    <dc:date>2008-06-16T12:34:09Z</dc:date>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="http://times.usefulinc.com/2008/06/16-ops-now"/>
        <rdf:li rdf:resource="http://times.usefulinc.com/2008/06/12-gandi"/>
      </rdf:Seq>
    </items>
  </channel>
  <item rdf:about="http://times.usefulinc.com/2008/06/16-ops-now">
    <title>We're all ops people now</title>
    <link>http://times.usefulinc.com/2008/06/16-ops-now</link>
    <description>Five years ago, would you have been managing terabits and arrays of distributed services?</description>
    <dc:subject>programming</dc:subject>
    <dc:subject>linux</dc:subject>
    <dc:subject>agile</dc:subject>
    <dc:subject>sysadmin</dc:subject>
    <dc:subject>xen</dc:subject>
    <dc:subject>hosting</dc:subject>
    <dc:subject>infrastructure</dc:subject>
    <dc:creator>Edd Dumbill</dc:creator>
    <dc:date>2008-06-16T10:55:22Z</dc:date>
    <foaf:maker>
      <foaf:Person>
        <foaf:mbox rdf:resource="mailto:edd@usefulinc.com"/>
      </foaf:Person>
    </foaf:maker>
    <content:encoded>&lt;p&gt;Ten years ago, most of us wouldn't have dreamt we'd be managing terabits of storage, tens of megabits of bandwidth, arrays of network-distributed services. The height of a programmer's worry would likely be choice of UI toolkit or finding the right way to indent code, and the height of consumer concern deciding which room to put the new computer in.&lt;/p&gt;
&lt;p&gt;Now the problems associated with managing large networks are becoming real for everyone, right down to the consumer level. Stupendously large amounts of computing resource are available at an instant.&lt;/p&gt;
&lt;p&gt;Your household probably has more than a terabyte of storage already. Issues such as single sign-on are going to hit home over the next year, as networked computing and entertainment devices profilerate. Features such as Apple's &lt;a href="http://www.apple.com/macosx/features/timemachine.html"&gt;Time Machine&lt;/a&gt; will be increasingly vital &amp;mdash; software that makes traditionally gnarly sysadmin tasks consumer-friendly. The rebranding of .Mac into "&lt;a href="http://www.apple.com/mobileme/"&gt;Mobile Me&lt;/a&gt;" is also a step in this direction.&lt;/p&gt;
&lt;h3&gt;The impact on developers&lt;/h3&gt;
&lt;p&gt;As software developers, we also have to cope with the effects of this resource-richness. For small sums of money we can get access to &lt;a href="http://aws.amazon.com/ec2"&gt;large computing clusters&lt;/a&gt;, geographically redundant hosting services. Our programs have left the desktop and found their new home on the web. System administration issues loom large upon us, security concerns lurk auspiciously in the corners of our minds.&lt;/p&gt;
&lt;p&gt;Although the cost of infrastructure has dropped radically, other costs remain high and are going to stay that way. System administrators are not only grumpy, they demand high wages. Commercial software license fees spiral out of control: traditional per-CPU licensing models make little sense when you can quickly bring up tens of machines. The cost in power is already troubling large companies, and there's no reason to suspect the problems won't ripple down.&lt;/p&gt;
&lt;p&gt;Help is at hand from a variety of technologies. If they don't yet make massive resource management trivial, they at least make it possible. Some of these also inhabit the weird territory of being both the source of a problem and a solution at the same time: virtualization, for example.&lt;/p&gt;
&lt;h4&gt;Distributed revision control systems&lt;/h4&gt;
&lt;p&gt;Distributed revision control is a technology whose time has finally&amp;nbsp;come in popular circles, thanks in part to Linus Torvald's &lt;a href="http://git.or.cz/"&gt;Git&lt;/a&gt; system. DRCS has several important impacts on today's developer:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-style: italic;"&gt;Branching and, importantly, merging become much cheaper&lt;/span&gt;, allowing agile and flexible iterations of development.&lt;/li&gt;
&lt;li&gt;&lt;span style="font-style: italic;"&gt;Loosely connected and geographically diverse development becomes much easier&lt;/span&gt;. Even within a single organization it is not uncommon to find teams spanning countries, time zones. Complex multi-site VPN setups aren't necessary when a few SSH keys can do the job.&lt;/li&gt;
&lt;li&gt;&lt;span style="font-style: italic;"&gt;Revision control becomes packaging on the cheap&lt;/span&gt;. Like it or not, the mere tagging of a source tree has now become a valid option for releasing software.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;All these trends lower the barrier to entry, increase collaboration and agility of development. You can the value of this as more software tools become free. Selling such tools is rapidly becoming a thing of the past, the advantages of sharing enable the developers at the sharp end to get their jobs done quicker.&lt;/p&gt;
&lt;p&gt;However, such increased agility and, well, messiness leave other problems to solve, which the next two technologies address.&lt;/p&gt;
&lt;h4&gt;Virtualization&lt;/h4&gt;
&lt;p&gt;Hardware-as-a-service, infrastructure-as-a-service, &lt;a href="http://www.roughtype.com/archives/2008/01/a_little_too_mu.php"&gt;call it what you will&lt;/a&gt;. The ability to create what we used to call entire machines, pick them up and move them around the network is revolutionary, and it's something that will have a real impact on regular developers. The benefits are at several levels.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style="font-style: italic;"&gt;Agile infrastructure&lt;/span&gt; &amp;mdash; a ready supply of new machines makes it a lot easier and cheaper to test different scenarios, architectures, and to separate concerns. If things go wrong, throw away the image and start over. It's all about cutting the administration load.&lt;/li&gt;
&lt;li&gt;&lt;span style="font-style: italic;"&gt;A packaging solution&lt;/span&gt; &amp;mdash; the new macroeconomics of software distribution mean that distributing entire machine images which communicate exclusively via the network is now a feasible way to distribute your software. We must adjust to the notion of distributing appliances, not code. We may mourn the lost crafts of creating RPMs or installers, but let's face it, it's now a waste of time.&lt;/li&gt;
&lt;li&gt;&lt;span style="font-style: italic;"&gt;New business models&lt;/span&gt; &amp;mdash; your application can now be delivered as a black-box appliance, circumventing compatibility issues, or as a service, with virtualization part of the solution to scaling.&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;Configuration management&lt;/h4&gt;
&lt;p&gt;Computing is a zero-sum game, and despite our increased ability to create and distribute software, problems still exist. We just pushed them to the next level.&lt;/p&gt;
&lt;p&gt;In good part, this next level is the problem of configuration management. We now have networks and clusters of (virtual) machines, software so agile we need six decimal places to describe its revision levels, and network and authentication paths that are starting to tangle. How do we manage that?&lt;/p&gt;
&lt;p&gt;One thing developers crave is repeatability. That's why we love our makefiles, autoconf, Ant, rake and so on. It's the one time even the most imperative-minded programmer writes declarative code. We like to say "let the world be like this."&lt;/p&gt;
&lt;p&gt;Our new sprawling world lacks this feature, and the best of our old toolkits &amp;mdash; .debs, RPMs &amp;mdash; address things only at the level of packages in a single environment.&lt;/p&gt;
&lt;p&gt;So developers must look to the world of operations, a territory we probably thought we needn't enter. In this world the new "make" is called&amp;nbsp;&lt;a href="http://reductivelabs.com/trac/puppet"&gt;Puppet&lt;/a&gt;. You write recipes to describe how things ought to be, and Puppet will make it so.&lt;/p&gt;
&lt;p&gt;I've been spending some time digging into Puppet, and feel excited by the confidence it's giving me. Now my applications exceed single source trees, and single machines, it gives me the means to tie the whole together. This article was going to be solely about Puppet, but that will have to wait now for another time.&lt;/p&gt;
&lt;p&gt;It's likely you'll have played with virtual machines and distributed revision control, but have you tried Puppet yet? Give it a spin, and let your mind wander over the benefits for your organization and development approaches.&lt;/p&gt;
&lt;h3&gt;Conclusions&lt;br /&gt;&lt;/h3&gt;
&lt;p&gt;For developers and users alike, our world is changing. Hardware, connectivity and increasingly software is becoming cheap or free. The solidity of the old things we put value on &amp;mdash; real things you can touch like disks &amp;mdash; is eroding.&lt;/p&gt;
&lt;p&gt;What really matters is our data, our creations, and their communication. If they don't quite yet exist in a universal "cloud" yet, they're certainly getting frisky.&lt;/p&gt;
&lt;p&gt;As vendors provide solutions for consumers to manage their new domestic infrastructure, developers must look to network-aware toolkits and operations techniques to manage and get the best from their emergent infrastructures.&lt;/p&gt;
&lt;p&gt;Also on this topic:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://times.usefulinc.com/2006/06/17-agile-infrastructure"&gt;In search of agile infrastructure for web applications&lt;/a&gt;&amp;nbsp;(June 2006)&lt;br /&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;a href="http://times.usefulinc.com/2008/06/16-ops-now#disqus_thread"&gt;Join the conversation about this post&lt;/a&gt;&lt;/p&gt;</content:encoded>
  </item>
  <item rdf:about="http://times.usefulinc.com/2008/06/12-gandi">
    <title>Gandi's VM hosting beta now closed to new users</title>
    <link>http://times.usefulinc.com/2008/06/12-gandi</link>
    <description>Gandi's hosting service rocks, but you'll have to wait a little while to play with it</description>
    <dc:subject>linux</dc:subject>
    <dc:subject>web</dc:subject>
    <dc:subject>xen</dc:subject>
    <dc:subject>hosting</dc:subject>
    <dc:creator>Edd Dumbill</dc:creator>
    <dc:date>2008-06-12T13:09:29Z</dc:date>
    <foaf:maker>
      <foaf:Person>
        <foaf:mbox rdf:resource="mailto:edd@usefulinc.com"/>
      </foaf:Person>
    </foaf:maker>
    <content:encoded>&lt;p&gt;I've been experimenting with &lt;a href="https://www.gandi.net/hosting/"&gt;Gandi's virtual hosting service&lt;/a&gt; recently. In fact, this blog is now hosted on it.&lt;/p&gt;
&lt;p&gt;Gandi have created by far the easiest hosting service I've used. The web interface allows you to buy credit, create pre-installed virtual machines and log in, all in under 15 minutes. Add the ease of Ubuntu to the mix (just one of the preinstalled images you can choose from), and commissioning times for new services are low indeed.&lt;/p&gt;
&lt;p&gt;The hosting service is based on &lt;a href="http://www.cl.cam.ac.uk/research/srg/netos/xen/"&gt;Xen&lt;/a&gt;, and allows you to dynamically change the resources your VMs can access (CPU/memory/disk), on a scheduled basis if required.&amp;nbsp;It has an &lt;a href="http://wiki.gandi.net/en/api-xml/docs/hosting"&gt;API&lt;/a&gt;&amp;nbsp;which provides enough functionality for you to white-label hosting as part of your own web app.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://times.usefulinc.com/asset/name/45/gandi-options.png" alt="Gandi's hosting options" width="480" height="340" /&gt;&lt;br /&gt; &lt;em&gt;Excerpt from Gandi's &lt;a href="http://www.gandi.net/hosting/proposal/part/"&gt;explanation&lt;/a&gt; of the amount of resource you can allocate to a virtual machine&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Gandi's service isn't yet as flexible as Amazon's EC2, but it comes at the problem from the other end &amp;mdash; its initial offering "just works" as an alternative hosting solution, with the added flexibility their Xen infrastructure brings to the mix. Even with all its tool support, Amazon EC2 feels like stepping into an alternate universe. I'm pretty excited about the directions in which Gandi's service will develop.&lt;/p&gt;
&lt;p&gt;And yes, now I've told you all this, unfortunately you&amp;nbsp;&lt;a href="http://iwi.gandibar.net/post/2008/06/11/Gandi-Hosting-now-on-closed-beta-testing"&gt;can't yet play with the beta service if you've not got an account already&lt;/a&gt;. The initial success means Gandi are closing new signups for a little time to concentrate on improving their infrastructure.&lt;/p&gt;
&lt;p&gt;The good news is that Gandi say this is the final step before the full release of the system. I can't wait! It's so good to see innovative, high-quality internet solutions coming from Europe.&lt;/p&gt;&lt;p&gt;&lt;a href="http://times.usefulinc.com/2008/06/12-gandi#disqus_thread"&gt;Join the conversation about this post&lt;/a&gt;&lt;/p&gt;</content:encoded>
  </item>
</rdf:RDF>
