904 research outputs found
End-to-End Automation in Cloud Infrastructure Provisioning
Infrastructure provisioning in the cloud can be time-consuming and error-prone due to the manual process of building scripts. Configuration Management Tools (CMT) such as Ansible, Puppet or Chef use scripts to orchestrate the infrastructure provisioning and its configuration in the cloud. Although CMTs have a high level of automation in the infrastructure provisioning still remains a challenge to automate the iterative development process in the cloud. Infrastructure as Code is a process where the infrastructure is automatically built, managed, and provisioned by scripts. However, there are several infrastructure provisioning tools and scripting languages that need to be used coherently. In previous work, we have introduced the ARGON modelling tool with the purpose of abstracting the complexity of working with different DevOps tools through a DSL. In this work, we present an end-to- end automation for a toolchain for infrastructure provisioning in the cloud based on DevOps community tools and ARGON
A DevOps approach to integration of software components in an EU research project
We present a description of the development and deployment infrastructure being created to support the integration effort of HARNESS, an EU FP7 project. HARNESS is a multi-partner research project intended to bring the power of heterogeneous resources to the cloud. It consists of a number of different services and technologies that interact with the OpenStack cloud computing platform at various levels. Many of these components are being developed independently by different teams at different locations across Europe, and keeping the work fully integrated is a challenge. We use a combination of Vagrant based virtual machines, Docker containers, and Ansible playbooks to provide a consistent and up-to-date environment to each developer. The same playbooks used to configure local virtual machines are also used to manage a static testbed with heterogeneous compute and storage devices, and to automate ephemeral larger-scale deployments to Grid5000. Access to internal projects is managed by GitLab, and automated testing of services within Docker-based environments and integrated deployments within virtual-machines is provided by Buildbot
Cloud WorkBench - Infrastructure-as-Code Based Cloud Benchmarking
To optimally deploy their applications, users of Infrastructure-as-a-Service
clouds are required to evaluate the costs and performance of different
combinations of cloud configurations to find out which combination provides the
best service level for their specific application. Unfortunately, benchmarking
cloud services is cumbersome and error-prone. In this paper, we propose an
architecture and concrete implementation of a cloud benchmarking Web service,
which fosters the definition of reusable and representative benchmarks. In
distinction to existing work, our system is based on the notion of
Infrastructure-as-Code, which is a state of the art concept to define IT
infrastructure in a reproducible, well-defined, and testable way. We
demonstrate our system based on an illustrative case study, in which we measure
and compare the disk IO speeds of different instance and storage types in
Amazon EC2
The Making of Cloud Applications An Empirical Study on Software Development for the Cloud
Cloud computing is gaining more and more traction as a deployment and
provisioning model for software. While a large body of research already covers
how to optimally operate a cloud system, we still lack insights into how
professional software engineers actually use clouds, and how the cloud impacts
development practices. This paper reports on the first systematic study on how
software developers build applications in the cloud. We conducted a
mixed-method study, consisting of qualitative interviews of 25 professional
developers and a quantitative survey with 294 responses. Our results show that
adopting the cloud has a profound impact throughout the software development
process, as well as on how developers utilize tools and data in their daily
work. Among other things, we found that (1) developers need better means to
anticipate runtime problems and rigorously define metrics for improved fault
localization and (2) the cloud offers an abundance of operational data,
however, developers still often rely on their experience and intuition rather
than utilizing metrics. From our findings, we extracted a set of guidelines for
cloud development and identified challenges for researchers and tool vendors
Selecting a Deployment Automation Tool for CRM Software in Elisa Oy
Software passes through several phases during its production process which are typically designing, developing, testing and delivering. In the software development life cycle (SDLC), the ultimate aim is to deliver the software product to its intended users with the expected functionality. Deployment is a critical step which harnesses all the work done in the previous stages in the SDLC and makes the software available to the end user. Thus, failure in the final deployment stage will waste the effort expended in earlier phases.
The responsibility for deployment usually belongs to operations teams and it is done manually or then partially automated, often using inefficient scripts. Manual deployment can be extremely difficult task, and it is easy to blunder with repetitive routines consisting of many steps such as setting up similar environments and installing software components in those environments. Some operations teams attempt to ease the manual work by writing scripts to automate the process, but ultimately this method can become complicated and burdensome.
The deployment process delays can be avoided and redundant costs eliminated in the error prone manual deployment process by changing the work culture and automating said processes. There are several products on the market to help automate this process. Achieving fully automated provisioning is the ultimate goal to produce and update services rapidly within enterprise applications in large corporations. Full automation is accomplished when the environments are set up automatically, and software installation is automatic in those environments.
The objective of this research is to introduce these automation tools to the Customer Relation Management (CRM) system at Elisa Oy and to develop a proposal for automating the deployment process as an alternative to its current manual process. CRM as a large system consists of numerous sub systems and software components. A deployment case with a selected tool will be demonstrated to show how the automation can be accomplished
An Industry-Based Study on the Efficiency Benefits of Utilising Public Cloud Infrastructure and Infrastructure as Code Tools in the IT Environment Creation Process
The traditional approaches to IT infrastructure management typically involve the procuring, housing and running of company-owned and maintained physical servers. In recent years, alternative solutions to IT infrastructure management based on public cloud technologies have emerged. Infrastructure as a Service (IaaS), also known as public cloud infrastructure, allows for the on-demand provisioning of IT infrastructure resources via the Internet. Cloud Service Providers (CSP) such as Amazon Web Services (AWS) offer integration of their cloud-based infrastructure with Infrastructure as Code (IaC) tools. These tools allow for the entire configuration of public cloud based infrastructure to be scripted out and defined as code. This thesis hypothesises that the correct utilization of IaaS and IaC can offer an organisation a more efficient type of IT infrastructure creation system than that of the organisations traditional method. To investigate this claim, an industry-based case study and survey questionnaire were carried out as part of this body of work. The case study involved the replacement of a manually managed IT infrastructure with that of the public cloud, the creation of which was automated via a framework consisting of IaC and related automation tools. The survey questionnaire was created with the intent to corroborate or refute the results obtained in the case study in the context of a wider audience of organisations. The results show that the correct utilization of IaaS and IaC technologies can provide greater efficiency in the management of IT networks than the traditional approac
Cloud Infrastructure Automation Through IaC (Infrastructure as Code)
Cloud computing has emerged as a key force in the IT sector, allowing businesses to take use of the cloud's scalability and cost-effectiveness to satisfy their IT requirements. When compared to the traditional on-premise method, companies that use cloud services can benefit from higher efficiency, dependability, and agility, as well as lower operational expenses and improved security. In spite of all the benefits, configuring cloud services may be a difficult and time-consuming procedure, especially when done manually. As a solution to the mentioned challenges, the Infrastructure as Code (IaC) was introduced. IaC has revolutionised the way organisations approach IT. Organisations may gain improved efficiency, dependability, and agility by exploiting the cloud's scalability and cost-effectiveness, as well as automating the provisioning, configuration, and administration of infrastructure with different IaC tools. However, using cloud and IaC can also present challenges, including complexity, collaboration, versioning, testing, security, integration, and automation. This paper discusses the overview of cloud computing and IaC. Explores the benefits and challenges of using these technologies. Concludes by emphasising the importance of careful planning and execution when using cloud and IaC, in order to maximise the benefits while minimising the difficulties
- …