In this IT world with ever increasing technological advancements, let’s have a quick analysis of those technologies which are getting more and more popular in open source technology today.
Team Nodericks is starting this series with ‘OpenStack’.
Open source denotes any program whose source code is available to users or developers (to use / modify). Software can be made open source (open source trademark) by its developers if their distribution terms conform to OSI’s (Open Source Initiative) open source definition. OSI is celebrating its 20th anniversary this year.
OpenStack is a free collection of open source softwares used to create as well as manage cloud computing, both private as well as public. Cloud computing is all about providing computing in a remote location, where the actual software will be running on a reliable and scalable server and not on each of the end user’s computers. Majorly three types of cloud computing are there – SaaS (Software as a Service), PaaS (Platform as a Service) and Infrastructure as a Service (IaaS).
Read our article on cloud computing, here: https://www.nodericks.com/cloud-computing-hosting/
OpenStack is a cloud computing platform, mostly offered as IaaS. Virtual servers, as well as other resources, are made available in this way using OpenStack. Meaning, OpenStack makes it easy to quickly add a new instance, upon which other cloud components can run. Then, this infrastructure will be running as a platform upon which developers can create software applications that are delivered to the end users. OpenStack can be termed as a Cloud Operating System which can organize, provision and manage large pools of heterogeneous computing, storage as well as networking devices. Users will be able to provision resources via management dashboards as well as OpenStack API (Application Programming Interface). The cloud infrastructure deployed and managed by OpenStack can support various use cases like web hosting, big data projects, SaaS delivery, deployment of high volumes of containers, etc..
OpenStack was developed as a team effort by NASA as well as Rackspace. It has been named in alphabetical order since the first release, Austin in October 2010. Original releases of Austin, Baxas and Cactus have been depreciated no longer available. Other releases are Diablo, Essex, Folsom, Grizzly, Havana, Icehouse, Juno, Kilo, Liberty, Mitaka and Newton, which are all at the end of life (EOL – indicating end of its useful life period; the vendor will soon be stopping its renewals,marketing and sales fully.), between 2012 and 2016. OpenStack had become an independent NPO since 2012. Latest releases are Ocata (February 2017) and Pike (August 2017). Pike has so many new features, one of them being Python 3.5 support. OpenStack Foundation is looked after by a board of directors.
Other open source platforms competing with OpenStack are Eucalyptus and Apache CloudStack. OpenStack is even seen as an alternative to AWS, Microsoft Azure, etc.
OpenStack consists of components, which are software modules serving various purposes. These components are shaped by contributions from OpenStack developer community (Developers who wish to contribute to OpenStack, people who wish to contribute to the operation of OpenStack project operation, and those who wish to collaborate on the tools developed and used in OpenStack.). Those who adopt OpenStack can implement some or all of these components. Some of the Key OpenStack components are,
- Compute module – Examples: Glance, Ironic, Magnum, Nova, Storlets, Zun.
- Storage module – Examples: Cinder, Swift, Freezer, Karbor, Manila.
- Networking and Content Delivery module – Examples : Designate, Neutron, Dragonflow, Kuryr, Octavia, Tacker, Tricircle.
- Data and Analytics module – Examples: Sahara, Searchlight, Trove.
- Security and Compliance module – Examples: Barbican, Congress, Keystone, Mistral.
- Deployment module – Examples: Ansible OpenStack, Chef OpenStack, Kolla, Charms, Puppet OpenStack, TripleO.
- Management module – Examples: Horizon, OpenStack Client, Rally, Senlin, Vitrage, Watcher.
- Applications module – Examples: Heat, Murano, Solum, Zaqar.
- Monitoring module – Examples: Aodh, Ceilometer, CloudKitty, Monasca, Panko.
OpenStack pros and cons
Being an open source technology, there is no upfront cost to acquire as well as to use OpenStack. Vendor lock-in can be avoided by adopting OpenStack. A major advantage of OpenStack is the fact that thousands of developers all around the world are contributing making it robust, secured as well as strongest. As an open source software, OpenStack is not owned or supported by a single team or vendor making it difficult to get efficient support. Complexity is another drawback of OpenStack, which may require additional staff to deploy it, incurring time as well as cost. But, complexity can be tackled by adopting an OpenStack distribution version from a vendor. OpenStack distribution version is packaged with other components like installation and management tools and has tech support options. OpenStack distribution version commonly includes RedHat OpenStack platform, Mirantis Cloud Platform and Rackspace OpenStack private cloud.
OpenStack foundation is continuously working to eliminate its disadvantages. As it becomes more and more user-friendly, acceptance of OpenStack will increase. In every way, OpenStack is one of the most popular open source trends, which is backed by major application development as well as hosting companies, in addition to thousands of individual members – it is the future of cloud computing.