2011-04-09 06:20:17 -04:00
|
|
|
====
|
|
|
|
|
|
|
|
Copyright (C) 2011 Cloud Conscious, LLC. <info@cloudconscious.com>
|
|
|
|
|
|
|
|
====================================================================
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
|
|
you may not use this file except in compliance with the License.
|
|
|
|
You may obtain a copy of the License at
|
|
|
|
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
See the License for the specific language governing permissions and
|
|
|
|
limitations under the License.
|
|
|
|
====================================================================
|
|
|
|
====
|
|
|
|
|
2010-02-03 21:02:54 -05:00
|
|
|
Overview:
|
|
|
|
|
2010-11-06 04:44:05 -04:00
|
|
|
jclouds is an open source library that helps you get started in the cloud
|
2010-05-05 02:12:31 -04:00
|
|
|
and reuse your java and clojure development skills. Our api allows you to
|
2010-11-06 04:44:05 -04:00
|
|
|
freedom to use portable abstractions or cloud-specific features. We have
|
|
|
|
two abstractions at the moment: compute and blobstore. compute helps you
|
|
|
|
bootstrap machines in the cloud. blobstore helps you manage key-value
|
|
|
|
data.
|
2010-02-03 21:02:54 -05:00
|
|
|
|
2011-04-19 00:30:30 -04:00
|
|
|
our current version is 1.0-beta-9c
|
2010-02-05 00:51:37 -05:00
|
|
|
our dev version is 1.0-SNAPSHOT
|
2010-02-03 21:02:54 -05:00
|
|
|
|
2011-04-04 06:09:36 -04:00
|
|
|
our compute api supports: aws-ec2, gogrid, cloudservers-us, stub (in-memory), deltacloud,
|
2011-04-27 11:24:03 -04:00
|
|
|
cloudservers-uk, vcloud (generic), ec2 (generic), byon, nova,
|
2011-01-06 17:35:10 -05:00
|
|
|
trmk-ecloud, trmk-vcloudexpress, eucalyptus (generic),
|
2011-06-02 01:56:21 -04:00
|
|
|
cloudsigma-zrh, elasticstack(generic), bluelock-vcloud-vcenterprise,
|
2011-06-02 19:22:50 -04:00
|
|
|
bluelock-vcloud-zone01, stratogen-vcloud-mycloud, rimuhosting,
|
2011-01-24 11:12:14 -05:00
|
|
|
slicehost, eucalyptus-partnercloud-ec2, elastichosts-lon-p (Peer 1),
|
2011-01-06 17:35:10 -05:00
|
|
|
elastichosts-sat-p (Peer 1), elastichosts-lon-b (BlueSquare),
|
2011-02-15 11:51:40 -05:00
|
|
|
openhosting-east1, serverlove-z1-man, skalicloud-sdg-my
|
2010-07-26 18:49:49 -04:00
|
|
|
|
|
|
|
* note * the pom dependency org.jclouds/jclouds-allcompute gives you access to
|
|
|
|
to all of these providers
|
|
|
|
|
2011-02-15 11:51:40 -05:00
|
|
|
our blobstore api supports: aws-s3, cloudfiles-us, cloudfiles-uk, filesystem,
|
2011-01-31 13:20:17 -05:00
|
|
|
azureblob, atmos (generic), synaptic-storage, scaleup-storage,
|
2011-03-29 17:03:21 -04:00
|
|
|
cloudonestorage, walrus(generic), googlestorage, ninefold-storage,
|
2011-03-29 16:33:57 -04:00
|
|
|
scality-rs2 (generic), hosteurope-storage, tiscali-storage,
|
2011-02-15 11:51:40 -05:00
|
|
|
eucalyptus-partnercloud-s3, swift (generic), transient (in-mem)
|
2010-02-03 21:02:54 -05:00
|
|
|
|
2010-07-26 18:49:49 -04:00
|
|
|
* note * the pom dependency org.jclouds/jclouds-allblobstore gives you access to
|
|
|
|
to all of these providers
|
|
|
|
|
2011-05-09 04:27:01 -04:00
|
|
|
our loadbalancer api supports: cloudloadbalancers-us
|
|
|
|
|
|
|
|
* note * the pom dependency org.jclouds/jclouds-allloadbalancer gives you access to
|
|
|
|
to all of these providers
|
|
|
|
|
2011-06-02 19:22:50 -04:00
|
|
|
we also have support for: ibmdev, mezeo, nirvanix, boxdotnet, openstack nova,
|
2011-02-15 11:51:40 -05:00
|
|
|
azurequeue, simpledb, cloudstack as well as a async-http-client
|
2011-01-27 02:52:26 -05:00
|
|
|
driver in the sandbox
|
2010-07-26 18:49:49 -04:00
|
|
|
|
|
|
|
|
|
|
|
If you want access to all jclouds components, include the maven dependency org.jclouds/jclouds-all
|
|
|
|
|
|
|
|
|
2010-05-05 02:12:31 -04:00
|
|
|
BlobStore Example (Java):
|
2010-02-03 21:02:54 -05:00
|
|
|
// init
|
|
|
|
context = new BlobStoreContextFactory().createContext(
|
2011-02-13 17:46:37 -05:00
|
|
|
"aws-s3",
|
2010-02-03 21:02:54 -05:00
|
|
|
accesskeyid,
|
|
|
|
secretaccesskey);
|
|
|
|
blobStore = context.getBlobStore();
|
|
|
|
|
|
|
|
// create container
|
2010-05-05 02:12:31 -04:00
|
|
|
blobStore.createContainerInLocation(null, "mycontainer");
|
2010-02-03 21:02:54 -05:00
|
|
|
|
|
|
|
// add blob
|
|
|
|
blob = blobStore.newBlob("test");
|
|
|
|
blob.setPayload("testdata");
|
2010-05-06 12:07:44 -04:00
|
|
|
blobStore.putBlob("mycontainer", blob);
|
|
|
|
|
|
|
|
BlobStore Example (Clojure):
|
|
|
|
(use 'org.jclouds.blobstore)
|
|
|
|
|
|
|
|
(with-blobstore ["azureblob" account encodedkey]
|
|
|
|
(create-container "mycontainer")
|
|
|
|
(upload-blob "mycontainer" "test" "testdata"))
|
|
|
|
|
2010-05-05 02:12:31 -04:00
|
|
|
Compute Example (Java):
|
2010-02-03 21:02:54 -05:00
|
|
|
// init
|
|
|
|
context = new ComputeServiceContextFactory().createContext(
|
2011-02-13 17:46:37 -05:00
|
|
|
"aws-ec2",
|
2010-02-03 21:02:54 -05:00
|
|
|
accesskeyid,
|
|
|
|
secretaccesskey,
|
|
|
|
ImmutableSet.of(new Log4JLoggingModule(),
|
|
|
|
new JschSshClientModule()));
|
|
|
|
client = context.getComputeService();
|
|
|
|
|
|
|
|
// define the requirements of your node
|
|
|
|
template = client.templateBuilder().osFamily(UBUNTU).smallest().build();
|
|
|
|
|
|
|
|
// these nodes will be accessible via ssh when the call returns
|
2011-01-31 21:02:54 -05:00
|
|
|
nodes = client.createNodesInGroup("mycluster", 2, template);
|
2010-05-06 12:07:44 -04:00
|
|
|
|
|
|
|
Compute Example (Clojure):
|
|
|
|
(use 'org.jclouds.compute)
|
|
|
|
|
|
|
|
; create a compute service using ssh and log4j extensions
|
|
|
|
(def compute
|
2011-02-13 17:46:37 -05:00
|
|
|
(compute-service "trmk`-ecloud" "user" "password" :ssh :log4j))
|
2010-05-06 12:07:44 -04:00
|
|
|
|
|
|
|
; use the default node template and launch a couple nodes
|
|
|
|
; these will have your ~/.ssh/id_rsa.pub authorized when complete
|
|
|
|
(with-compute-service [compute]
|
2011-01-31 21:02:54 -05:00
|
|
|
(create-nodes "mycluster" 2))
|
2010-02-03 21:02:54 -05:00
|
|
|
|
|
|
|
Downloads:
|
2011-04-19 00:30:30 -04:00
|
|
|
* distribution zip: http://jclouds.googlecode.com/files/jclouds-1.0-beta-9c.zip
|
2010-12-23 14:32:24 -05:00
|
|
|
* maven repo: http://repo2.maven.org/maven2 (maven central - the default repository)
|
2010-12-20 15:24:22 -05:00
|
|
|
* snapshot repo: https://oss.sonatype.org/content/repositories/snapshots
|
2010-02-03 21:02:54 -05:00
|
|
|
|
|
|
|
Links:
|
|
|
|
* project page: http://code.google.com/p/jclouds/
|
2011-04-19 00:30:30 -04:00
|
|
|
* javadocs (1.0-beta-9c): http://jclouds.rimuhosting.com/apidocs/
|
2010-07-17 03:10:05 -04:00
|
|
|
* javadocs (1.0-SNAPSHOT): http://jclouds.rimuhosting.com/apidocs-SNAPSHOT/
|
2010-05-06 12:14:10 -04:00
|
|
|
* community: http://code.google.com/p/jclouds/wiki/AppsThatUseJClouds
|
2010-04-12 18:13:03 -04:00
|
|
|
* user group: http://groups.google.com/group/jclouds
|
2010-02-03 21:02:54 -05:00
|
|
|
* dev group: http://groups.google.com/group/jclouds-dev
|
2010-02-05 00:51:37 -05:00
|
|
|
* twitter: http://twitter.com/jclouds
|
2011-03-12 15:08:33 -05:00
|
|
|
|
|
|
|
## License
|
|
|
|
|
|
|
|
Copyright (C) 2011 Cloud Conscious, LLC. <info@cloudconscious.com>
|
|
|
|
|
|
|
|
Licensed under the Apache License, Version 2.0
|
|
|
|
|