private cloud for sub 200 server environments · 7. develop a high availability plan from cookbooks...

7
@ZeroStackInc [email protected] www.zerostack.com Private Cloud For Sub 200 Server Environments White Paper Copyright © 2017 ZeroStack, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. ZeroStack is a registered trademark or trademark of ZeroStack, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Upload: others

Post on 11-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Private Cloud For Sub 200 Server Environments · 7. Develop a high availability plan from cookbooks and recipes 8. Install and configure cloud system software 9. Install and configure

@ZeroStackInc [email protected] www.zerostack.com

Private Cloud For Sub 200Server Environments

White Paper

Copyright © 2017 ZeroStack, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. ZeroStack is a registered trademark or trademark of ZeroStack, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies.

Page 2: Private Cloud For Sub 200 Server Environments · 7. Develop a high availability plan from cookbooks and recipes 8. Install and configure cloud system software 9. Install and configure

@ZeroStackInc [email protected] www.zerostack.comWhite Paper: Private Cloud For Sub 200 Server Environments

Copyright © 2017 ZeroStack, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. ZeroStack is a registered trademark or trademark of ZeroStack, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies. 2

Enterprises that deliver $10s of millions to $100s of millions in annual revenue are the growth engines of the economy. They represent 1 percent of all US companies, while generating nearly 30 percent of corporate revenue. To compete against larger rivals, midsize enterprises have to rely on faster speed of execution, greater pricing flexibility and deeper customer relationships.

IT organizations in these enterprises face unique challenges. They are expected to squeeze their costs to the level of smaller enterprises while delivering services that match their better-resourced competition. Often, they must manage hardware and software environments that are similar to larger companies, but without a commensurate level of staffing or professional services.

In spite of this—or perhaps because of it—IT has become a key enabler of efficiency and innovation in the midsize enterprise and a distinct competitive advantage for those who harness it. The same execution speed, agility and flexibility on the business side of midsize enterprises have been cultivated by the infrastructure and operations of their IT organizations.

Virtualization to CloudIT organizations have built their infrastructure around virtualization over the last few years. This has helped with consolidation of resources and infrastructure optimization. However, the increase in the complexity and sophistication of the infrastructure has resulted in increasing complexity of operations. Virtualization has helped IT set up processes and workflows for resource provisioning and management. However, it did not create a significant advantage to the developer side of the businesses. With the advent of the cloud model of self-service for consumption of resources, developers are now demanding an equivalent self-service model from their IT organizations.

Many IT organizations assume that having virtualization and provisioning resources using management consoles such as vCenter or SCVMM is equal to having a cloud computing model. This is far from the actual cloud model that is needed to gain the business advantages. A cloud model fundamentally means the ability to provide self-service cloud consumption to the users without needing the IT organization to manually provision and manage the resources.

A private cloud provides enterprises with the security and control of their applications and data, and enables development teams to deliver business value faster and in a frictionless manner. Building a private cloud is a big investment that can transform an enterprise’s IT operations, but it can also be an expensive science experiment without careful planning and preparation. Private clouds empower the business units and significantly improve the efficiency of the IT organization.

Private Cloud

Virtualization

PhysicalInfrastructure

Page 3: Private Cloud For Sub 200 Server Environments · 7. Develop a high availability plan from cookbooks and recipes 8. Install and configure cloud system software 9. Install and configure

@ZeroStackInc [email protected] www.zerostack.comWhite Paper: Private Cloud For Sub 200 Server Environments

Copyright © 2017 ZeroStack, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. ZeroStack is a registered trademark or trademark of ZeroStack, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies. 3

The following sections describe the complexities and challenges in building, using it and operating a private cloud.

Architecture of a Private CloudA private cloud consists of the following components:

» Servers, storage and networking hardware

» Compute provisioning service

» Storage provisioning service

» Authentication service

» Software Defined Networking

» Metering and chargeback

» Hardware and software services monitoring and alerting

» Log and event analysis services

» Application catalog

» Application orchestration

To build a cloud, IT has to consider the various products available from vendors and make appropriate choices for all of the different components. The team will then have

Here is an example design for an OpenStack-based cloud:

to integrate all the hardware and software components or engage expensive consultants to perform the integration.

Building a DIY private cloud typically involves a multi-step process:

1. Evaluate private cloud software options

2. Validate networking requirements and research solutions

3. Verify storage options with existing or proposed storage solutions

4. Evaluate hardware compatibility of cloud software

5. Compare hardware compatibility with business hardware requirements

6. Download and experiment with open source components

7. Develop a high availability plan from cookbooks and recipes

8. Install and configure cloud system software

9. Install and configure monitoring and log collection support infrastructure on dedicated hardware

10. Provision an application catalog and a cloud management platform for developer adoption

Application Catalog

High Availability (Pacemaker/Zookeeper)

Hypervisor (KVM)

Cloud Management Platform (Cligr/Elasticbox)

Cloud Software (Openstack)

Software Defined Networking (Neutron/Contrail)

Operating Setem (Linux)

Devops Glue (Chef/Puppet/Ansible)

Stats (Collectd/Statsd)

Dedicated Monitoring Hardware

Logs (Logstash/ElasticSearch)

Dashboard (Graphana/Kibana)

Monitoring (Nagios/Zabbix)

Page 4: Private Cloud For Sub 200 Server Environments · 7. Develop a high availability plan from cookbooks and recipes 8. Install and configure cloud system software 9. Install and configure

@ZeroStackInc [email protected] www.zerostack.comWhite Paper: Private Cloud For Sub 200 Server Environments

Copyright © 2017 ZeroStack, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. ZeroStack is a registered trademark or trademark of ZeroStack, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies. 4

Teams which set out to clone a public cloud (AWS, Azure, GCE, etc.) on premises will usually not succeed. The design, architecture and the implementation of the private cloud should be driven based on the needs of the business units and their applications rather than the features available in public clouds. The public cloud is designed to serve a large number of clients and provides hundreds of services that might be useless for an enterprise. The goal should be to make sure that the necessities of the target projects are satisfied.

Hybrid CloudPrivate clouds are better for security, control and effective cost management. Public clouds provide elastic compute resources for providing bursting on demand capacity. An enterprise has to make appropriate choices for the application based on the nature of the workload and the costs involved. The future of clouds is hybrid, with a mix of private and public clouds.

Every team has to consider whether they want application portability between the private cloud and the public cloud and even portability across multiple public clouds. Both the design of the private cloud and the design of the application influence whether portability can be achieved. A simple rule of thumb is that if the application is portable across multiple public clouds, it will probably be portable across private and public clouds.

Usage of a Private CloudPrivate clouds are not purely an IT project. The various business units that will be the actual users of the cloud should be involved in figuring out the specifications and deliverables of a private cloud. “If you build it they will come” is not an idea that will work for private clouds. A good pre-condition for building a private cloud is usually a project that is subscribed to as it is being built. However, all organizations have to make sure the requirements are not overly specialized for a single project so the cloud will scale to support the rest of the enterprise.

A cloud changes the transactional relationship between IT and business. Both sides have to be engaged in figuring out and accepting how that relationship

changes with a private cloud. The transactions between IT and the business units should be simplified and empower the users of the cloud. This empowerment should have tangible benefits in terms of the speed at which business units develop or deploy applications.

The Right ApplicationsA private cloud is a very flexible resource pool. However, not every application is a good fit. Both IT and users of the cloud have to focus on evaluating the needs of the application before migrating a traditional monolithic application to the private cloud. One rule of thumb is that if the application is running on a physical machine, it probably is not ready to be migrated into the cloud. The first applications to focus on are cloud native applications that can be scaled on demand in the private cloud and can handle occasional failures of random infrastructure or application components.

Traditional IT projects are usually based on the requirements from the final phases of resources provisioning for a given application. In a private cloud, focusing upstream when the application is being designed and architected provides the best recipe for success in building the right cloud. The application can actually be architected to be cloud native, which can significantly improve the success probability of the private cloud project. The development teams have to be cognizant of the best practices in developing cloud native applications to increase the chances of success of the private cloud project. The 12-factor app guidelines (12factor.net) are one such set of practices that help in making applications cloud native.

Traditional development teams that are not used to the cloud will need assistance in using the cloud at various stages of development. The planning and resource commitments needed for onboarding teams to the cloud should be included in the private cloud project. Migrating applications onto the private cloud is a significant effort on behalf of the development teams; it can only succeed if the development teams have factored it into their schedules.

Page 5: Private Cloud For Sub 200 Server Environments · 7. Develop a high availability plan from cookbooks and recipes 8. Install and configure cloud system software 9. Install and configure

@ZeroStackInc [email protected] www.zerostack.comWhite Paper: Private Cloud For Sub 200 Server Environments

Copyright © 2017 ZeroStack, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. ZeroStack is a registered trademark or trademark of ZeroStack, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies. 5

The integrated cloud stack of hardware and software presents unique challenges to the operations team, which is used to traditional methods of monitoring the infrastructure according to the physical units. Both the physical infrastructure and software-defined resources such as software-defined storage and software-defined networks have to be troubleshooted together. This requires the operations teams to really work together or gain expertise in each others’ domains at a significantly deeper level.

The complexity of monitoring and analysis also goes up with the number of software and hardware components involved in the construction of the cloud. IT organizations need to understand all the components and how they interact so that they can set up the infrastructure for monitoring all the pieces and setting up the alerting based on complex relationships.

Operation of a Private CloudA private cloud infrastructure has more pieces than physical servers or virtualization and the complexity of the infrastructure grows non-linearly. IT organizations cannot cope with the increase in complexity using the traditional techniques used to build and operate infrastructure.

Traditionally, IT infrastructure has well-defined silos of hardware and software components. The IT organization was also similarly split in terms of expertise and responsibility. For example, IT usually has dedicated storage, networking, virtualization, desktop, security, etc. teams. Private cloud, however, binds all the infrastructure together into a self-service consumption model. The underlying physical infrastructure is all bound together by the cloud software, and resource consumption shifts to software-defined resources.

ServersStorageNetworkingVirtual MachinesVirtual NetworksCloud System SoftwareSoftware Defined NetworkingHigh Availability DesignMonitoringLog Collection and AnalysisApplication CatalogCloud Management Platform

ServersStorageNetworkingVirtual MachinesVirtual Networks

ServersStorageNetworking

Complexity

Private Cloud

Virtualization

Physical Infrastructure

Evolution

Page 6: Private Cloud For Sub 200 Server Environments · 7. Develop a high availability plan from cookbooks and recipes 8. Install and configure cloud system software 9. Install and configure

@ZeroStackInc [email protected] www.zerostack.comWhite Paper: Private Cloud For Sub 200 Server Environments

Copyright © 2017 ZeroStack, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. ZeroStack is a registered trademark or trademark of ZeroStack, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies. 6

Choice of SolutionsThere are three main types of private cloud solutions that exist in the market.

DIY SolutionsAn enterprise can build the full cloud solution on their own by designing and integrating all the different components mentioned in the previous section. The IT team would have to spend some time upfront to design a blueprint of the cloud based on the requirements. Then all the components for the different ingredients of the cloud need to be acquired or assembled in-house. This includes hardware and software components.

For some of the critical software components in the cloud architecture, there are open source projects or packaged distributions available. For example, for cloud provisioning, OpenStack is the open source project of choice due to its wide adoption. OpenStack can be combined with other open source and commercial software for other parts of the architecture to build the cloud. However, building a cloud still needs a lot of design of the architecture to choose the right hardware components and integrate the software pieces. Also, once the cloud is up and running, ongoing resource commitment is needed to continuously deal with the complex interactions and issues in the stack of hardware and software in a private cloud.

Managed Private Cloud SolutionsMany enterprises who do not have the personnel to design, build and operate a cloud look for solution providers who provide the consulting expertise to

do the job. The managed private cloud can be in the enterprise data center (managed cloud) or in an isolated environment in the provider’s environment (hosted cloud).

In a managed cloud, the enterprise does not hire and build expertise in cloud operations, but they retain operations and support personnel from the provider. In a hosted cloud, the provider deploys the personnel needed to manage the cloud infrastructure. In both models, the enterprise is trading the cost and headache of hiring and developing expertise for the cost of paying the provider for the personnel and expertise.

Software Managed Turnkey SolutionsSome vendors offer a fully integrated turnkey solution for the private cloud. Some of them include remote operations management for the private cloud. These solutions are more expensive than an enterprise trying to build a DIY cloud. However, they come with significant advantages in having a private cloud up and running more quickly than a DIY cloud. Turnkey solutions also do not need dedicated personnel to understand the different components and deal with the issues arising in the cloud. Since they are delivered as a more integrated software and hardware environment, they reduce the operational complexity for an enterprise.

The turnkey cloud solutions are also significantly less expensive than managed private clouds. Software is used to manage the cloud rather than personnel, and this delivers significant savings to the enterprise.

Solution Design Complexity

Capital Expense

Operations Personnel

Operational Expense

Example Vendors

DIY High Low Enterprise High Redhat, Canonical, HP

Managed Private Cloud Low High Vendor High Mirantis, Rackspace

Software Managed Cloud Low Medium Software Low ZeroStack, VxRail

Page 7: Private Cloud For Sub 200 Server Environments · 7. Develop a high availability plan from cookbooks and recipes 8. Install and configure cloud system software 9. Install and configure

@ZeroStackInc [email protected] www.zerostack.comWhite Paper: Private Cloud For Sub 200 Server Environments

Copyright © 2017 ZeroStack, Inc. All rights reserved. This product is protected by U.S. and international copyright and intellectual property laws. ZeroStack is a registered trademark or trademark of ZeroStack, Inc. in the United States and/or other jurisdictions. All other marks and names mentioned herein may be trademarks of their respective companies. 7

SummaryPrivate cloud can be a transformative path for a enterprises with tens to hundreds of servers. Like any transformative change, it requires significant thought, dedication and perseverance. By paying attention to the practices outlined above, enterprises can navigate the transformation to empower the business to deliver value with greater speed, and view IT as an accelerator of this transformation. Rather than trying to replicate the way private cloud projects are built at large enterprises, midsize enterprises should look for solutions that significantly reduce the operational overhead of building and running the cloud.