Citations of Juju

Suggestions Welcome: If you find any published research that isn’t mentioned here, please add a comment below and we’ll update the list.


Virtual Infrastructure Orchestration for Cloud Service Deployment

Cloud adoption has significantly increased using the infrastructure-as-a-service (IaaS) paradigm, in order to meet the growing demands of computing, storage, and networking, in small as well as large enterprises. Different vendors provide their customized solutions for OpenStack deployment on bare metal or virtual infrastructure. Among these many available IaaS solutions, OpenStack stands out as being an agile and open source platform. However, its deployment procedure is a time taking and complex process with a learning curve. This paper addresses the lack of basic infrastructure automation in almost all of the OpenStack deployment projects. We propose a flexible framework to automate the process of infrastructure bring-up for deployment of several OpenStack distributions, as well as resolving dependencies for a successful deployment. Our experimental results demonstrate the effectiveness of the proposed framework in terms of automation status and deployment time; that is, reducing the time spent in preparing a basic virtual infrastructure by four times, on average.


Performance study of OpenAirInterface 5G System on the Cloud Platform Managed by Juju Orchestration


OpenAirInterface (OAI) 5G is an open source-based software that can implement LTE-based telecommunications systems and it’s protocols, it uses the 3GPP standard on a public computer. OpenAirInterface 5G is used to conduct research on the development of 4G to 5G at a lower cost. In this work, we evaluate the concept of Virtual Networks on the OpenAirInterface 5G network by evaluating the performance of our OpenAirInterface 5G system on a cloud platform managed by Juju Orchestration. The cloud platform used is managed by Metal as a Service (MAAS) to help allocate the network infrastructure, both physical and virtual. Juju Orchestration is used to accelerate and automate the deployment and configuration of OpenAirInterface applications on cloud platforms. The performance evaluation is done by testing the bitrate, latency, jitter, streaming performance, and browsing performance. The performance evaluation shows that the performance quality of the OAI cloud is better, although the differences are not significant. Besides that, the OAI cloud still has it’s big advantages in terms of its scalability process for the ease of automation deployment of applications carried out by Juju Orchestration.

Resource Management in a Containerized Cloud: Status and Challenges


Cloud computing heavily relies on virtualization, as with cloud computing virtual resources are typically leased to the consumer, for example as virtual machines. Efficient management of these virtual resources is of great importance, as it has a direct impact on both the scalability and the operational costs of the cloud environment. Recently, containers are gaining popularity as virtualization technology, due to the minimal overhead compared to traditional virtual machines and the offered portability. Traditional resource management strategies however are typically designed for the allocation and migration of virtual machines, so the question arises how these strategies can be adapted for the management of a containerized cloud. Apart from this, the cloud is also no longer limited to the centrally hosted data center infrastructure. New deployment models have gained maturity, such as fog and mobile edge computing, bringing the cloud closer to the end user. These models could also benefit from container technology, as the newly introduced devices often have limited hardware resources. In this survey, we provide an overview of the current state of the art regarding resource management within the broad sense of cloud computing, complementary to existing surveys in literature. We investigate how research is adapting to the recent evolutions within the cloud, being the adoption of container technology and the introduction of the fog computing conceptual model. Furthermore, we identify several challenges and possible opportunities for future research.

On the modeling of optimal and automatized cloud application deployment

We investigate the problem of modeling the optimal and automatic deployment of cloud applications. We follow an approach based on three main pillars: (i) the specification of the computing resources needed by software components and those provided by the executing environment (e.g. virtual machines or containers), (ii) the declarative description of deployment rules, (iii) and the computation of an optimal deployment that minimizes the total cost by using constraint solving techniques. We experiment with such an approach by applying it to the Abstract Behavioural Specification language ABS, and we validate it by modeling and simulating with ABS (and its tool-suite) the Fredhopper Cloud Services, a worldwide system offering e-Commerce services, currently deployed on Amazon EC2.

A Perspective on “Working with Data” Curriculum Development

From Bare Metal to Scaling as a Service

This paper will go through the process of creating a cloud solution with on-premises bare-metal machines. It will show the process of getting Ubuntu MAAS, Canonical Juju, Ansible, and Kubernetes working on four HP workstation machines, with an L2 switch for networking. This paper will also show our process in documentation, including a cost benefit analysis, and a risk assessment analysis. It will show detailed information on how to install and use the system.

Modelling 5G Cloud-Native Applications by Exploiting the Service Mesh Paradigm

Towards a fully automated and optimized network security functions orchestration

doi: 10.1109/CCCS.2019.8888130

Automated policy-based network security management tools represent a new research frontier to be fully explored, so as to reduce the number of human errors due to a manual and suboptimal configuration of security services. Moreover, the agility that an automated tool would require can be provided by the most recent networking technologies, Network Functions Virtualization and Software-Defined Networking, which move the network management from the hardware level to the software. However, even though a Security Automation approach is nowadays feasible and would bring several benefits in facing cybersecurity attacks, pending problems are that currently only a limited number of automatic management tools have been developed and that they do not have a direct integration with cloud orchestrators, consequently requiring human interaction. Given these considerations, in this paper we propose a novel framework, whose goal is to automatically and optimally allocate and conFigure security functions in a virtualized network service in a formal and verified way, directly integrated in cloud orchestrators. We validated this contribution through an implementation that is able to cooperate with two well-known orchestrators, that are Open Baton and Kubernetes.

Building and evaluating an OpenStack based private Cloud for studying data migration

Cloud computing is essentially a data center with an arrangement of multiple system resources connected to each other for better storage and management of data. This concept of Cloud computing has grown quickly and is now a technology that is widely used. Large data centers are created to serve large number of clients’ workload from various walks of life. When a resource in a data center reaches its end-of-life, it may be realized that instead of investing in upgrading, replacing the resource or legacy applications running on that resource, it is time to possibly decommission such a resource and migrate workloads to the cloud and to other resources in the data center. Data migration between different Cloud resources and the servers of the same private Cloud is risky due to the possibility of data loss and also due to high temporal cost. For my thesis, I have proposed a novel architecture and algorithm to study this phenomenon. I have used MapReduce data processing software framework within a private Cloud environment to determine the data loss. I have proposed metrics such as efficiency, speed, computation time and the cost of data migration and formulae for these metrics to test and evaluate my proposed framework. The data migration technique I have introduced in my experiments shows better performance than the previously available work in cloud computing literature. I have done experiments using image files like png, jpeg and tiff, audio files like wav, video files like mp4 and documents like xls and csv. Whatever small amount of data loss occurred during my experiments could be avoided with a stable network connectivity. I have used large heterogeneous files (text, images, audio and videos) for my algorithm to compute execution time and efficiency. With the limited resources available for the current study, the size of files migrated were bounded due to system limitations and also data loss could not be avoided completely. By improving the configuration of the system architecture and physical servers I might expect to improve the performance further.

Design and Deployment of an Open Management and Orchestration Platform for Multi-Site NFV Experimentation

doi: 10.1109/MCOM.2018.1800084

Management and orchestration of virtual resources and functions, commonly referred to as MANO, are key functionalities of NFV environments. This article describes the design and deployment of the NFV MANO platform of 5TONIC, the open research and innovation laboratory on 5G technologies founded by Telefonica and IMDEA Networks. This NFV MANO platform provides 5TONIC trials and experiments with access to a functional production-like NFV environment, enabling experimentation with novel NFV products and services. As a relevant feature, the platform is capable of incorporating external sites to complement the portfolio of software and hardware resources that can be made available for experimentation activities. The 5TONIC MANO platform has been designed and built using open source technologies. The research carried out during its design and deployment has resulted in a contribution already made to its upstream projects regarding the automated configuration of virtualized network functions. Finally, we explore the scalability properties of the 5TONIC MANO platform, and we experimentally validate its functional capacity to orchestrate multi-site experiments.


Fixit - A Semi-Automatic Software Deployment Tool for Arbitrary Targets


The deployment of software packages becomes more and more difficult. Thus Canonical Ltd. has created a framework called “JuJu” that serves as a DevOps toolchain. JuJu allows an integrated software development, deployment and operation of software packages. Additionally Canocial provided hundreds of open-source JuJu-maintained software packages in an own online store for download. However, our tests revealed that only 14 % of 35 picked packages from the Canonical’s JuJu charm store really be installed as they are. The reason is that many of them are sensitive against mismatches of what is contained in the relevant JuJu files and what exists as target hardware at the customer. Because of that, a new concept and tool called Fixit was created by us for the semi-automatic software-deployment of JuJu software packages onto arbitrary hardware and software environments such as Windows and Linux operating systems. Fixit improves the quota of successful first-try installations from 14 to 69 %. This is accomplished by semi-automatic analysis and transformation of the package source codes.

Beyond Generic Lifecycles: Reusable Modeling of Custom-Fit Management Workflows for Cloud Applications


Note: co-authors include @merlijn-sebrechts, @cory_fu, and @gvseghbr

Automated management and orchestration of cloud applications have become increasingly important, partly due to the large skills shortage in IT operations and the increasing complexity of cloud applications. Cloud modeling languages play an important role in this, both for describing the structure of a cloud application and specifying the management actions around it. The TOSCA cloud model standard recently defined declarative workflows as the preferred way to specify these management actions but, as noted in the standard itself, this is far from ideal. This paper draws lessons from six years of using declarative workflows in Juju for deploying and managing complex platforms such as OpenStack and Kubernetes in production. This confirms the limitations: declarative workflows are inflexible, hard to reuse, and allow for related components to become silently incompatible. This paper proposes the reactive pattern to solve these issues by enabling the creation of emergent workflows using declarative flags and handlers, which can be easily grouped into reusable layers. After more than two years of using this pattern in production as part of our charms. reactive framework, it is clear that it enables reusability and ensures compatibility: 67% of reactive charms share parts of the management workflow and 73% of reactive charms share a relationship workflow.

Occopus: a Multi-Cloud Orchestrator to Deploy and Manage Complex Scientific Infrastructures

A Perspective on “Working with Data” Curriculum Development

Network Slices toward 5G Communications: Slicing the LTE Network

The upcoming 5G ecosystem is envisioned to build business-driven network slices to accommodate the different needs of divergent service types, applications, and services in support of vertical industries. In this article, we describe the network slicing concept by unveiling a novel network slicing architecture for integrated 5G communications. Further, we demonstrate its realization for the case of evolved LTE using state-of-the-art technologies. Finally, we elaborate on the LTE-specific requirements toward 5G, and point out existing challenges and open issues.


Ming: Model- and View-Based Deployment and Adaptation of Cloud Datacenters

ABS: A High-Level Modeling Language for Cloud-Aware Programming

Cloud middleware Ubuntu JuJu is a tool primarily for scaling and orchestrating
a system’s deployment on the cloud. Juju also comes with a GUI for modeling
and visualizing a cloud deployment and saving it to a “recipe” for later reuse.
It is usually accompanied by a configuration-management tool (such as Puppet)
for the provisioning of cloud machines.

Component-based Orchestration of Dynamic IaaS Applications


Orchestration tools for Infrastructure-as-a-Service (IaaS) environments facilitate the deployment and management of cloud-based applications by automating the instantiation of virtual resources and configuration of software packages. While contemporary tools support the deployment of predefined applications, they lack internal support for taking care of changes in application designs. Dealing with this application dynamism in a timely manner requires new development and management techniques. This paper proposes a component-based approach that captures the entire design and runtime management cycle of IaaS applications. First, a component model is introduced that represents virtual computational resources as components and externalises control over their application logic. This model is then applied in a component framework that enables the rapid design of verified applications, and features additional support for the pre-provisioning of generic infrastructure and late configuration of application components. To showcase the capabilities of this approach, it is applied to an elastic media distribution use case.


Photo credits: Alfons Morales/Unsplash

1 Like