Thursday, October 17, 2013:
Everything in a data center is undergoing a change these days! All thanks to open source -- and the hardware. While Facebook's Open Compute Project is preparing better designs for servers and networks, other open source projects are recreating the databases, application platforms, and virtualization layers for a new generation of apps. Here’s a look at the next generation of tools for managing this "cloud" infrastructure coming from open source.
Those who like the convenience of resource provisioning that Amazon EC2 offers but are still scared of anything outside the firewall, opt for OpenStack. It’s an open source cloud management stack that comes with heavyweight commercial backing. It provides a management GUI and API layer to manage data center resources similar to the way Amazon does.
Although OpenStack has the size and impetus, Eucalyptus is undoubtedly the open source leader in hybrid cloud capability. Eucalyptus allows you to construct an in-house private cloud that can be run using same tools and scripts you use to operate Amazon Web Services. You can use Eucalyptus commands to run AWS instances as well.
A free PaaS, OpenShift allows developers to construct, test, deploy, and handle applications in a cloud. OpenShift uses Git and Jenkins, offers Apache and JBoss servers, and supports Node.js, Ruby, Python, PHP, Perl, and Java languages.
4. Cloud Foundry
Cloud Foundry refers to an open source PaaS offering from recently started Pivotal. You can use it for deploying your applications on a range of infrastructures, such as Amazon Web Services, OpenStack, and vSphere. It provides support for Java, Ruby, and Node.
A recent open source project that spun out of the dotCloud, Docker creates lightweight, self-satisfactory containers for applications. It is possible to work with the same container that was used for constructing and testing to run at scale on public instances, OpenStack clusters, VMs, and bare-metal servers.
MariaDB functions as a binary-compatible "drop-in replacement" for MySQL. The databases created in MySQL can be used visibly in MariaDB. The forthcoming Version 10.0 of MariaDB backports some changes from MySQL 5.6 and has integrated features which are unique to MariaDB, such as the new Cassandra storage engine.
Probably the most famous NoSQL database of them all, MongoDB makes use of a binary form of JSON document to amass data, which allows schemas to differ across documents. This also gives developers unrestrained freedom as compared to the traditional relational databases, which inflicts flat, rigid schemas across several tables. But, MongoDB offers the functionality developers need in a relational database.
8. Couchbase Server
Unlike majority of relational databases, Couchbase Server does not compel you to create a schema before you insert data in it. Memcached library is one unique attribute of Couchbase Server, which allows developers to flawlessly transition from a memcached environment and get data replication, durability, and zero application downtime.
A supple and fast graph database, you can use Neo4j in a variety of ways, including social applications, recommendation engines, fraud detection, resource authorization, and data center network management.
Can there be something more important than Speed and simplicity while managing massive number of servers. Surprisingly, SaltStack allows you to achieve through: remote command execution and configuration management. However, the project is comparatively new, so the code and architecture are clean.