The Beginning: Planning a Production OpenStack Cloud
Presented by Ben Silverman - Cincinnati Bell Technology Services Monday, May 13, 2019
The Beginning: Planning a Production OpenStack Cloud Presented by - - PowerPoint PPT Presentation
The Beginning: Planning a Production OpenStack Cloud Presented by Ben Silverman - Cincinnati Bell Technology Services Monday, May 13, 2019 Before we plan, ask yourself 1. What is my mission with this cloud? 2. Do you have an internal
The Beginning: Planning a Production OpenStack Cloud
Presented by Ben Silverman - Cincinnati Bell Technology Services Monday, May 13, 2019
2
budget?
DIY solution?
containers, bare metal or all of the above?
Before we plan, ask yourself…
3
production cloud.
business use cases.
elastic, and so is capacity planning.
requirements.
needs and any expansion before the next upgrade.
technical objectives.
availability.
Action Plan
4
Ø Summary: This is simply a detailed summary of the entire document. Typically, this part of the deliverable will be used by managers, technology, and business leaders to understand the business impact of the overall recommendation. Requirements and the resulting architecture should be summarized. Ø Design review: This is the meat of the document. Requirements can be in whatever format is acceptable for your project management
items. Ø Hardware architecture: This is an explanation of roles and physical machines that take those roles. This should include a network diagram. Ø OpenStack architecture: This is a summary of available services and their relationships. This section should include a service diagram. Ø Roadmap: This section is optional and often lives in another
future releases of the platform.
The Design Document
5
Ø Summary: This is simply a detailed summary of the entire document. Typically, this part of the deliverable will be used by managers, technology, and business leaders to understand the business impact of the overall recommendation. Requirements and the resulting cloud deployment plan should be summarized. Ø Deployment: What will be deployed. This section contains detailed information about hardware, software, and networking. Detailed bill
be included as well as a network diagram down to the port level. Physical information is also located in this section. Ø Execution: This section focuses on the responsibilities matrix for the complete cloud build. This will also include testing. Ø Day 2 Operations: This will consist of the operational plans for after the cloud is built including governance, security, high availability, business resumption and disaster recovery.
The Deployment Plan
6
Business drivers: Why is there a need for change? What are the expected outcomes? What benefit is the organization looking to achieve by implementing an OpenStack cloud? Current state: This section is to be used as a reference and comparison to any proposed cloud
architecture, including compute, storage and
Point of Departure
Examples:
regard to innovation because it cannot deliver infrastructure to developers quickly.
running is non-directional and expensive.
but it cannot leave the datacenter. Scaling takes too long with traditional infrastructure.
network functions and run them virtualized.
but struggles with setting up the infrastructure for big data.
Component Configuration
Number of regions 1 Total number of nodes 160 Total number of unique users 1 Total number of instances 320 Total number of tenants 1 Block Storage backend VSAN Image backend vCenter Ephemeral storage ESX Object storage N/A Other storage NAS Guest OSes Centos 7
7
Solution Principles: Specific principles that a solution will have to adhere to regarding capabilities and requirements. Technical Principles/Requirements: Several technical principles that need to be met regarding technical capabilities and requirements.
Point of Arrival
Term Definition Application Deployment Deployment of applications onto infrastructure via a single tool that uses an open API Single-Region Authentication, authorization and access from an integrated solution in the same region Configuration Portability Ability to have a persistent storage mechanism to store configurations for each application in region. Elasticity Ability to scale up and scale down based on increased tenant demand Faster, more reliable IaaS Creating deployment methodology that supports repeatable and reliable deployments of the JBS application in all of its variations. Term Definition Scalability Ability to support up to 320+ Compute nodes in 52 Datacenters (52 clouds) initially. Growing to 450+ total nodes as a roadmap item with a 2-year
Network Ability to support a private IPv4 tenant network environment in a single cloud. That supports hundreds of Compute nodes. Storage Support persistent and ephemeral storage Upgrade Must be on a commercial OpenStack distribution with a manufacturer documented upgrade path and long-life releases.
8
Putting It All Together
Define the business challenges we’re trying to solve and outcomes we’re looking to achieve from the LOB owners:
Record the technical objectives
isolation
Record any assumptions, capabilities or requirements of the platform:
performance per instance
compute manner for HA/DR (anti-affinity) Technical Architecture/OpenStack Architecture:
important business and technical objectives
9
Physical Architecture
Architecture Plan Ø Categories of hardware Ø Compute Ø Storage Ø Network Ø Role Categories (OpenStack Architecture Design) Ø Compute Plane Ø Control Plane Ø Should consist of everything needed by an OpenStack Engineer to deploy the cloud
10
OpenStack Architecture
Most Common OpenStack Architecture Categories Ø Compute Plane Ø Requirements are defined by expected workloads Ø High availability is designed in by horizontal scaling and availability zones Ø Bigger isn’t always better, scale out, not up Ø Control Plane Ø Requirements are driven by the services that will be installed Ø Typically no less than three servers Ø High availability is handled by load balancing and clustering Others can include: Storage Plane, Dedicated Network Plane, Cell Structure, etc.
11
What is Network Functions Virtualization?
network functions by replacing dedicated network appliances with software and automation
Network Function (VNF)
and PGWs.
12
13
Special Use Architectures
14
15
Lab: Thinking about the future, especially about 5G and edge technologies…
How does OpenStack fit? What are some of the challenges that might arise due to edge use cases?
16
Developing The Final Deployment Plan
In review: Overview that includes:
Technical Architecture Recommendations
OpenStack Architecture Recommendations
17
Planning to Operate
Important Considerations: Logging, Monitoring, Alerting:
Other Operations Considerations
Operators
Have a great rest of the summit!
Email: ben.silverman@cbts.com Twitter: @bensilverm LinkedIn: http://www.linkedin.com/in/benjsilverman
WHAT IS DevStack? PREREQUISITES CONFIGURATION
WHY USE IT THE COMMUNITY USING OPENSTACK ARCHITECTURE INSTALLING DevStack
code tests from OpenStack’s Gerrit, an open source team code collaboration tool.
WHAT IS DevStack? PREREQUISITES CONFIGURATION
WHY USE IT THE COMMUNITY USING OPENSTACK ARCHITECTURE INSTALLING DevStack
7 loaded.
it sudoers permissions. $ sudo useradd -s /bin/bash -d /opt/stack -m stack
have sudo privileges: $ echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack $ sudo su - stack
WHY USE IT THE COMMUNITY USING OPENSTACK ARCHITECTURE INSTALLING DevStack
Downloading DevStack Code
$ sudo su - stack $ sudo yum install git –y $ git clone https://git.openstack.org/openstack-dev/devstack $ cd devstack
DevStack. WHAT IS DevStack? PREREQUISITES CONFIGURATION
INSTALL DevStack? PREREQUISITES CONFIGURATION
WHY USE IT THE COMMUNITY USING OPENSTACK ARCHITECTURE INSTALLING DevStack
Configure the deployment
configuration parameters need to be specified in local.conf. The first four are passwords that the installer will use for internal credentials and the HOST_IP is the external IP address of your Linux system you are using as the host. [[local|localrc]] ADMIN_PASSWORD=secret DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD HOST_IP=10.0.3.15
25
WHAT IT IS WHY USE IT THE COMMUNITY USING OPENSTACK ARCHITECTURE
USING OPENSTACK ARCHITECTURE INSTALLING DevStack OTHER DISTRIBUTIONS DEVOPS
USING OPENSTACK ARCHITECTURE INSTALLING DevStack OTHER DISTRIBUTIONS DEVOPS
learned in software development
and their configurations.
manipulate it as if it were data.
USING OPENSTACK ARCHITECTURE INSTALLING DevStack OTHER DISTRIBUTIONS DEVOPS
Downloading DevStack Code
$ sudo su - stack $ git clone https://git.openstack.org/openstack-dev/DevStack $ cd DevStack
Configure the deployment
local.conf. The first four are passwords that the installer will use for internal credentials and the HOST_IP is the external IP address of your Linux system you are using as the host. [[local|localrc]] ADMIN_PASSWORD=secret DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD HOST_IP=10.0.3.15
Start the installation
$ ./stack.sh
Collect host information at the end of the install
$ This is your host IP address: 10.0.2.15 $ This is your host IPv6 address: ::1 $ 2017-09-26 18:39:27.058 | stack.sh completed in 1149 seconds.
Test the install by listing the hypervisors that are configured:
$ cd DevStack $ . openrc admin
Display the hypervisors:
$ openstack hypervisor list
+----+---------------------+-----------------+-----------+------- +| ID | Hypervisor Hostname | Hypervisor Type | Host IP | State |+----+---------------------+-----------------+-----------+------- +| 1 | DevStack | QEMU | 10.0.2.15 | up |+----+---------------------+-----------------+-----------+-------