.

Monday, June 3, 2019

Heat Orchestration

set off OrchestrationChapeter 5Heat Orchestration5.1 draft Details of Heat Heat is the main project for orchestration part of OpenStack. Implementation of orchestration engine for multiple composite cloud application. It is the sequence of lines calculate in text show format. A native rut format can be evolving, but agitate also endeavors to provide compatibility with AWS cloud instruction pathfinder format so that many existing cloud formation template can be launch on OpenStack. Heat provide twain open visual sense rest API and cloud formation compatible query API. The orchestration is essentially for the softwargon application. To manage configuration. Instead of manipulation of virtual(prenominal) foundation by hand or with the scriptHeat focuses to work with the declarative model. Heat works out on the sequence of lines to perform and to bring earth in to model. The model takes the heat template and the resulting collective of infrastructure resources is known as the stack. Orches,ration allows you to treat your infrastructure like rule. Therefore you can store your templates magnetic variation control system, such as GIT to track changes then you update the stack with the revolutionary template and heat do the rest of the actions. The main port wine of heat is the OpenStack native rest API. Heat actually is between the user and the API of the core OpenStack services. In much the same way as the dashboard or the horizon does. Heat can be access through the horizon or the dashboard. Heat template describes the cloud application infrastructure in the code format that is changeable. The heat infrastructure resources include servers, floating IP, intensity level, security groups, and users.5.2 Auto ScalingHeat also provides auto scaling that integrates with ceilometer. Ceilometer adds scaling group as the resource within templates. Furthermore, the template, defines the family between two Auto scaling by heat integrated with ceilometer that l eads to add scaling group in template. The templates defines the relationship between two resources. It also able heat to call OpenStack API in order to make everything systematic. Openstack also manage the whole lifecycle of the application. You need to do the registration in the code for existing stack and heat deals with the rest in order to change something.Heat architecture components include Heat API It is used for process API request to Heat engine via AMQP. It implements an Open stack-native RESTful APIHEAT-api-cfnit is used API compatibility with AWS cloud formation.HEAT ENGINE is main orchestration functionality.Heat uses back-end database for maintaining state information as other OpenStack services. Both communicate with heat engine via ANQ. The heat engine is the actual layer where actual integration is implemented. Furthermore, for high availability, Auto scaling abstractedness is also done.Auto Scaling Heat TemplatesIn this auto scaling example, Heat and Ceilometer impart be used to scale CPU bound virtual machines. Heat has the concept of a stack which is simply the environment itself. The Heat stack template describes the process or logic around how a Heat stack will be built and managed. Thisis where you can create an auto-scaling group and configure Ceilometer thresholds. The environment template explains how to create the stack itself, what image or volume to use, network configuration, software to install and everything an instance or instances need to properly function. You can put everything into the Heat stack template, but separating the Heat stack template from the environment is much cleaner, at least in more complex configurations such as auto scaling.5.3 Deployment of Heat Orchestration5.3.1ENVIRONMENT TEMPLATE at a lower place we will create an environment template for a cirros image.As shown in pattern.5.3. The Cirros image will create the instance template, configure a cinder volume, add IP from the private network, add floa ting IP from the public network, add the security group, private ssh- backbone and generate 100% CPU load through user-data. angry is the new template format that to replace the Heat CloudFormation-Compatible format as native format supported by heat.They are written in YAML format and JSON. Hot templates createStack in Heat. Structure for Hot consist of Heat Template version, description, parameter groups, parameters, resources, and outputs.Heat Template Version Is just value with the key that indicates that the YAML document is a hot template of the specific version, if the date is 2013-05-23 or later date.Shown in FIG 5.1Fig.5.1 (Heat Template version)Description Its an optional key allows for large-minded a description of the template.Fig.5.2 (Description of heat template)Parameters_groups This variance allows for specifying how the input parameters should be grouped and order to provide the parameter in. This option is also optionalParameter This section allows for specifying input parameters that have to provide when instantiating the templates. This option is also optional as wellOutputs This part allows for specifying output parameters available to users once the template has been instantiated. mental imagerys It defines actual resources that are real stack from HOT template (instance for Compute, Network, Storage Volume).Each resource is defined as a separate block in input parameters. As shown in FIG 5.3 there are five separate sections. Servers, port, volume, floating IPResource ID must always be unique for every sectionResource Types Must relate to the service that section of template define Such as the followingNova ServerNeutron PortNeutron FloatingIPNeutron FloatingIPAssociationCinder VolumeProperties It is a incline of resource specific property defines via the function.FIG.5.3 (Heat Template Resources)Now that we have an environment template, we need to create a Heat resource type and link it higher up file /etc/heat/templates/cirros_base. yaml.resource_registryOSNovaServerCirros file///etc/heat/templates/cirros_base.yaml5.3.2Heat TemplateThe below template in FIG.5.4 defines the behavior of the stack e.g when and under what conditions the stack will scale up and scale down. cpu_alarm_high and cpu_alarm_low are used in the template to scale up and scale down our environment.FIG.5.4 (Behavior Of Stack)Update Ceilometer Collection musical intervalBy default, Ceilometer will collect CPU data from instances every 10 minutes. For this example, we want to change that to 60 seconds. Change the interval to 60 in the pipeline.YAML file and restartOpenStack services.Check the status of the stack in thought DashboardHeat will create one instance as per defined constitution5.3.3RUNNING THE STACKRun the following command to run the stackemailprotected (keystone_admin) heat stack-create heat_autoscale -f /root/heat_autoscale.YAML -e /root/environment.yamlCheck the status of the stack in Horizon Dashboard as in FIG 5.4FIG5.5 (Heat stack status )In FIG 5.5 and FIG 5.6 shows the heat stack topology and resources, Events are also shown in FIG 5.6FIG 5.6 (Heat Stack Topology)FIG 5.7 (Heat Stack Resources)FIG 5.8 (Heat Stack Events)Heat will create one instance as per defined polity in FIG 5.7FIG 5.9 (Heat Stack Instance)Automatic Scale UPNow we will increase the cpu utilization on one of the instances and will verify if heat autoscalesthe environment or not. To do that run the following commands one the instance that heat created from the stack. As shown in FIG 5.8.FIG 5.10 (Heat Autoscaling)The heat created two more instances based defined policy in the orchestration template. This is because the maximum scale up policy is 3 instances. As shown in FIG 5.8.FIG 5.11 (Two Instance base on policy)List of volumes that heat created based on defined policy threshold as shown in FIG 5.9FIG.5.12 (Volumes that heat created based on defined policy)New Network Topology after adding instances to the private network in FIG 5.10 FIG 5.13 (Heat Topology after 2 instances) 5.3.4SCALE DOWNScale down is the process in heat. Heat automatically scales down once the CPU utilization goes down on the instances. As the load goes back to normal and CPU cools down. The extra instances that were appeared to overcome the load will go back to one instance and all instances will be used efficiently through this way. In our scenario instance aw7blqnbabc2 is the original instance and the rest instances are to overcome the load.

No comments:

Post a Comment