Your Browser is Out of Date

Nytro.ai uses technology that works best in other browsers.
For a full experience use one of the browsers below

Dell.com Contact Us
United States/English
Logan Dane
Logan Dane

Undergraduate Intern at Dell Technologies, Studying Software Engineering at the University of Texas at Dallas. Works with virtualization, containerization, and orchestration. In his free time, he enjoys Pickleball, Disc Golf, and going to the gym.


Social Handles: Instagram:@LoganCDane LinkedIn: linkedin.com/in/logan-dane

Assets

Home > Edge > Retail Edge > Blogs

retail edge

Using Edge Computing to Enhance Customer Experience and Operational Efficiency - Part 1

Logan Dane Logan Dane

Thu, 10 Aug 2023 12:41:15 -0000

|

Read Time: 0 minutes


Edge computing is becoming increasingly valuable for retailers who are trying to stay competitive. Through edge computing, retailers can do real-time analysis of data and management of different machines. Edge computing can also provide solutions to problems previously thought unsolvable, or it could help to improve the efficiency of the business.

The goal of this document is to provide insights regarding current problems in the retail space, along with showcasing possible edge computing solutions to solve those problems. This research document aims to provide a comprehensive analysis of potential edge computing solutions for those current problems in the retail sector, including retail shrink, stocking, and item locations.

I have found three separate problems on my own in the retail sector that may possibly be solved using computer vision on edge computing platforms. For each problem, I will introduce the problem including any relevant background information, a real-world scenario of the problem in action, why it would be beneficial for the company to solve the problem, a description of a possible solution using Dell Technologies’ hardware, and two diagrams explaining the solution in more depth. I will then explain how these solutions can be compounded into a single solution to solve the problems more efficiently, and why edge computing is the right tool for the job.

In addition to the three problems I have found, I interviewed multiple shoppers and asked what kinds of problems they encountered in retail spaces. While the problems are not directly solved by edge computing, the impact we make on store sales and efficiency may also help to lessen the impact of these problems.

Problem 1: Retail shrink

Overview

Retail shrink is a significant problem for many businesses. There are several types of shrinkage commonly found in stores. The three main types of shrinkage in retail are shoplifting, employee theft, and return fraud. Shoplifting is when external individuals steal inventory from a retail store. Employee theft occurs when individuals associated with a business steal from or defraud the company. Return fraud occurs when someone steals a product and then returns it for a refund. Other types of shrinkage include administrative error, which can include mislabeling merchandise for a lower price or refunding merchandise for more than it is worth, and vendor fraud, which occurs when vendors overcharge or add fees to invoices to steal physical inventory from the store when they are onsite.

Shoplifting is a serious issue that causes stores to lose significant amounts of money. According to the Annual Retail Theft Survey, 21 large retail companies with 18,994 stores reported over $136 million in recovered dollars from shoplifters in 2019. This amount does not even include the money lost from shoplifters that they did not apprehend.

Directly stealing is not the only way to shoplift. Some individuals take items where the weight needs to be measured and hold on them gently so that the weight of the item is less than it should be. Others take an item that does not get weighed and weigh it like something it is not, such as taking a valuable notebook and placing a sticker on it saying that it is ten pounds of apples.

Real-world scenario

Suppose I am at a store and come across a fresh bunch of bananas. I proceed to scan the bananas at the self-checkout machine. The machine prompts me to weigh the bananas, and I hold them slightly so that they weigh a quarter of a pound instead of their actual weight of five pounds. As a result, I pay twelve cents instead of 2.5 dollars for the bananas.

Additionally, let us say I purchase a bag of apples from the same store. The store offers two options: organic and regular apples. Although the organic apples are more expensive, I prefer them and decide to purchase them by scanning them as the cheaper regular apples. This action causes the company to lose the extra money they would have made from selling organic apples because of my dishonesty.

Benefits of addressing the problem

Reducing retail shrink can help businesses save money and increase profits. When you reduce retail shrink, you will have more money that you can then reinvest back into the business. Reducing shrinkage can also help businesses improve customer satisfaction.

Preventing shoplifting can benefit stores in many ways. For instance, stores can earn more money since people will not be stealing their items. With fewer goods stolen, stores will have more goods to sell, which means they will have more potential revenue to make. Stores can also save money because instead of having to spend money replacing stock, they can sell the stock they already have. In addition, preventing shoplifting can help stores maintain a positive reputation and customer experience.

Possible solution

This solution I devised requires use of a retail store’s pre-existing or newly installed camera system. You will also need a Dell VxRail cluster for compute power and storage along with computer vision applications for analyzing the incoming video feeds. You will also need to have connectivity with the self-checkout machines.

In this solution, the store will have cameras set up throughout the aisles of the store, and they will have cameras at the self-checkout as well. The cameras will feed live camera data to the VxRail cluster. The cluster will contain pre-trained machine learning models capable of identifying and tracking different products throughout the store. At the self-checkout, the customer will scan their items and place them in the bags. The camera installed at the self-checkout will verify that the barcode the customer scanned is actually for the item (example: making sure the customer did not put a cereal box barcode on a laptop to get it cheaper). If the item is determined to be incorrectly labeled, it will ask the customer to scan it again, and if the item is still incorrect, it can alert a cashier to assess the situation.

Since the models will be able to track the products throughout the store, it can also catch people hiding products in their clothes or leaving the products in the basket at the self-checkout and not scanning them. This way, we can prevent shoplifting from both stolen items and purposefully mislabeled items.

This solution also gives us valuable data that the store can use to better prevent shoplifting and improve the customer experience. The store will know what items are more likely to be shoplifted, and they will be able to take precautions to prevent future shoplifting, such as keeping them in a locked glass door or keeping the items in the back.

Figure 1. Technological diagram

Figure 2. Shelf-checkout sequence diagram

In this diagram, the security cameras send the real-time camera footage over to the cluster. The Cluster then gives the footage to the nodes containing the ML models, which process the footage and give the resulting product info back to   cluster. The cluster receives the scanned product from the self-checkout and sends both the scanned product and the product info from the ML model over to the Item Verifier App which verifies that the camera footage matches what the self-checkout scanned. The app sends the validity of the item back to the cluster, which can pass that info back to the self-checkout to continue the customer’s purchase. Th cluster can log any of the attempted shoplifts into a database that the retail employees will be able to view from a dashboard.

Read more

For more information about using edge computing to enhance the customer experience and operational efficiency, see Part 2 and Part 3 of this blog. 

Home > Edge > Retail Edge > Blogs

retail edge

Using Edge Computing to Enhance Customer Experience and Operational Efficiency - Part 2

Logan Dane Logan Dane

Thu, 10 Aug 2023 12:41:15 -0000

|

Read Time: 0 minutes


As discussed in Part 1, this blog provides a comprehensive analysis of potential edge computing solutions for those current problems in the retail sector, including retail shrink, stocking, and item locations.

In this part, we will be looking at more potential problems as well as suggested solutions for them. 

Problem 2: Stocking (Empty store shelves)

Overview

Stocking store shelves is an essential part to keeping up sales in a retail store. Customers expect to find what they need when they visit a store, and they may switch to a competitor if they encounter frequent out-of-stocks. It is essential for retailers to adopt an efficient and effective replenishment strategy that ensures optimal inventory levels and minimizes out-of-stocks. According to retail store IHL Group, shoppers encounter out-of-stocks in as often as one in three shopping trips, about 32% of those being empty shelves.

A common replenishment strategy that some retailers use is to stock store shelves only on specific days, such as once or twice a week. This approach may seem convenient and cost effective, since it would reduce the labor needed to frequently restock the shelves. However, this strategy also has some drawbacks that can harm the sales performance and profitability of the retailer.

Firstly, products sell at different rates. Some products may sell faster than others, and some days may even have higher sales than other days. This means that some products may sell out of stock before the next time the shelves are restocked, while other products take up too much space that can be used to hold other, more sought-after products.

Secondly, not having store shelves stocked continuously lowers the customer satisfaction with the store. The store may not seem reliable if they never have the items in stock, and customers may feel frustrated or disappointed with the store. It is even possible that customers will then switch to a competing retailer to meet their needs.

Real-world scenario

Once, I went to the store to purchase some potato chip. I went to the store on a Friday afternoon after class, one day before the typical restocking. Upon entering the store, I found that all the potato chips were sold out. There were not even corn chips available. Instead of waiting another day for the store to restock, I went to another store and purchased some other brand of chips. As a result of this experience, the first store not only lost the sale of my bag of potato chips but also likely lost the sales from other customers who were looking for chips that day.

Benefits of addressing the problem

Restocking products when they need to be restocked has several benefits that can improve the sales performance and profitability of the retailer. There are some benefits to restocking shelves: you can attract and retain customers, and you can optimize your inventory management.

Customers are more likely to enter and stay in a store that has well-stocked and appealing shelves. They can easily locate the products they want to buy, and they can also discover new products that are tempting to purchase. This can increase the likelihood of impulse purchases and repeat visits, since the customer would be happy with the store.

Restocking shelves can help retailers to monitor their inventory levels and prevent overstocking and understocking. By keeping track of what products are selling well and what products are not, retailers can adjust their orders and promotions accordingly. This can reduce inventory costs, waste, and shrinkage, and improve cash flow and profitability.

Possible solution

Like in the last solution, you will need a camera system, a Dell VxRail cluster for both compute power and storage, and computer vision applications for analyzing the incoming video feeds. Additionally, the cluster can connect to shelves that gather the weight of the items on top to better represent how many items more accurately there are on the shelf.

In this solution, there will once again be cameras placed in the aisles of the store. The cameras will feed real-time footage to the VxRail cluster, where pre-trained models with knowledge of the products will analyze the footage and determine how many of each product there are left. When the stock of a product in an aisle is running low, the system can alert the employees that the item needs to be restocked.

Sometimes, the shelves are built in a way that is difficult to see how many of a certain item there are in a shelf from how they are lined up. To solve this, the customer can use weighted shelves that record how heavy the items on the shelf are. The sensors in the shelf report back to the VxRail cluster, which combined with the Computer Vision view of the shelves, can be used to get an accurate reading of how many of each item there are on the shelves.

This solution gives the store valuable data regarding store traffic and the items the store needs to purchase more of. If an item is frequently running out of stock, the store may want to look into expanding the shelf space that the item takes up or keeping more of the items in the back. That way, this solution can also help you with inventory management.

Figure 1. Technological diagram

Figure 2. Shelf-stock sequence diagram

In this diagram, the security cameras feed the real-time camera footage of the aisles over to the VxRail cluster. At the same time, the weight sensors in the shelves will send the weight info over to the cluster as well. Both the camera footage and the weight information will be passed over to the ML Models nodes, which can then use the information to count how many of the products there are on the shelves. This count can then be passed back to the cluster, which can hand it off to the Threshold Checker application. The Threshold Checker application, which the store owners can customize to change what amount of an item on a shelf is considered low stock, then checks the status of the amount of the item against the threshold and gives the value back to the cluster, which stores it in the Database. The Dashboard can then show all of the items and their amounts, and which items are in need of restocking.

Problem 3: Storing (Misplaced items)

Overview

One of the challenges that retailers face is customers misplacing items in the store. This can lead to lost sales, and customers may not be able to find the products they are looking for or may purchase a different product instead. Customers often pick up a product at the store, but then leave it in a placed where it does not belong when they realize they do not want it anymore. This creates clutter, confusion, and inefficiency in the store layout and inventory management. Moreover, currently where stores have mobile apps that can tell you what aisle an item is supposed to be in, customers may get frustrated or confused if the app does not match the reality of the store layout. This can damage the customer’s trust and loyalty and reduce the likelihood of repeat purchases. Sometimes when inventory is missing and not accounted for, it has simply been mistaken for another item. Therefore, it is important for retailers to maintain a consistent and accurate inventory system. For more information, see 5 Most Common Reasons for Inventory Discrepancy and How to Resolve Them

Real-world scenario

One time at the store, I was looking to purchase some cayenne pepper seasoning for a recipe of mine. I went to a local store and checked the store’s mobile app to see if cayenne pepper was in stock. The app indicated that the store had cayenne pepper in stock, so I went down to the correct aisle. Despite going through all the different rows multiple times, I could not find the cayenne pepper. I went to purchase the other ingredients, when I noticed that the cayenne pepper was not in the correct location. If I could not find where the cayenne pepper was misplaced to, the store would have lost my sale.

Benefits of addressing the problem

Solving this problem can have many benefits for both the retailers and the customers. Some of the benefits are improved customer satisfaction, increased sales and revenue, and reduced costs and waste.

Customers would be able to find the products they want more easily and quickly, without having to search the aisles for misplaced items. They can also trust that the products they see on the shelves are fresh, available, and correctly priced.

When products are in their proper locations, they are more likely to catch the attention of potential buyers and generate impulse purchases. Customers are also more likely to buy more items when they have a good shopping experience and can see all the options available.

Misplaced products can cause inventory errors, shrinkage, and spoilage. By keeping the products in the areas that they belong in, retailers can avoid these losses and save money on labor, storage, and disposal. They can also optimize their space utilization and merchandising strategies.

Possible solution

As for the other two solutions, you will need a camera setup, a Dell VxRail cluster for compute power and storage, and computer vision applications for analyzing the incoming video feeds.

This solution will also require the use of cameras in the storefront. Like the first two solutions, the cameras will need to be placed in the aisle to monitor the items there. The cameras will send live camera footage over to the VxRail cluster which has pre-trained models that know all the items. The cameras will be identified based on what aisle they are in, so the apps of the VxRail cluster will know what aisle the item came from as well. The machine learning models will report back what items are in the aisle to a separate app of the VxRail cluster, which will check a database containing items and their locations to make sure that the item is in the proper spot. If it is not, it can alert an employee and they can go and retrieve the item and put it in the proper location.

There is a lot of data that can be gathered in this solution. For example, you can find out what products are being left at what places. If a lot of the same product are being misplaced in the same location, then maybe there is another product nearby that they would rather have. The store can then find these competing brands and decide how they want to organize their store more to encourage more sales. The store could also find products that are more likely to be removed from the cart, and then use that data to determine what products need to be stocked less.

Figure 3. Technological diagram

Figure 4. Location check sequence diagram

In this diagram, the security cameras feed the real-time camera footage to the Dell VxRail cluster. The cluster sends that footage to the ML Models, which reports the items there and their current locations. The cluster receives the correct location info from the database, and passes the database info, and the items and their current locations to the location check app. The app will verify that it is in the right spot and will send the state of the item’s location back to the cluster, which can then store it in the database. The store owner’s dashboard can then showcase the locations of the items, and which ones are in the wrong spot.

Read more

For more information about using edge computing to enhance the customer experience and operational efficiency, see Part 1 and Part 3 of this blog. 

Home > Edge > Retail Edge > Blogs

retail edge

Using Edge Computing to Enhance Customer Experience and Operational Efficiency - Part 3

Logan Dane Logan Dane

Thu, 10 Aug 2023 12:41:15 -0000

|

Read Time: 0 minutes


As discussed in Part 1 and Part 2, this blog provides a comprehensive analysis of potential edge computing solutions for those current problems in the retail sector, including retail shrink, stocking, and item locations.

In this part, we will be looking at a consolidated solution for the problems discussed in Part 1 and Part 2. 

Consolidated solution

Solution overview

All three solutions I have created for the retail problems involve the use of smart cameras and computer vision to analyze products and their whereabouts in the store. Since there are so many common pieces between the solutions, it would be easy to create a fourth solution that encompasses and solves the three problems.

For this solution, there are many different items you will need. The retail store’s pre-existing or newly installed cameras must be placed throughout the store aisles, the self-checkout stations, and the storefront. You also need the Dell VxRail cluster which has the compute power, storage, machine learning models, and computer vision applications. The computer vision applications themselves are use real-time video analysis to identify, track, and count products on the shelves, validate self-checkout items, and monitor where the items are located. The self-checkout machines must be connected to the cluster. Optionally, you can use the shelf weight sensors to complement the cameras in the aisle for better estimates of the number of items on the shelves.

There are many different problems that are solved with this solution, the first being shoplifting. At the self-checkout machines, the customers scan their items like normal, but the cameras send the feed to the ML models to verify in real-time whether the item is correctly labeled. If a mismatch is detected, then the customer is prompted to try again. If the customer is unable to fix it, then the system can alert the cashiers to assist. The system can also track products throughout the store to make sure nobody is storing items in their clothing or refusing to scan them at the self-checkout. If they do, the system can alert a staff member to handle it.

The next problem being solved with this solution is the monitoring of stock in the shelves. The cameras stationed throughout the aisles record and send real-time footage back to the cluster, which can count how many items there are on the shelf. The store can set thresholds to determine low-stock situations, and when the amount of the product enters that threshold, the system will alert the employees to go and restock the shelf. Additionally, the customer can add weight sensors to the shelf to aid the system in determining how many items there are on the shelf. This will enhance the inventory management, and it will minimize the amount of time a product is unable to be purchased due to empty shelves.

The last problem to be solved with this solution is misplaced items in the store. Using the same cameras and real time footage from the last problem, the models on the cluster will determine what products there are on the shelf. The cameras will be assigned an aisle when they are installed, and the store will enter beforehand what camera corresponds with which aisle and tray. A separate store database will contain information on what item goes where in the store, and the application will check the item location against the store database to make sure it is in the right spot. If it is not, the system can alert an employee to return the item to its proper location.

From combining all three solutions, the store can gain valuable data about the store and its items as well. The system can record what items are attempted to be shoplifted, and if enough people are trying to steal the items, the store may want to take precautions by putting them behind glass or storing them in the back. The store will also gain data on how fast a product’s available stock is being sold, so that the store can determine which items sell slowly and have too much shelf space, and which items need more shelf space so they can put more in the aisles. The system will also record what items are frequently misplaced, which the store owners can use to reorganize the layout and optimize the shelf arrangements to encourage more sales.

Figure 1. Technological diagram

This solution would use the same sequence diagrams as the other three, since they are all different use cases that would be running concurrently.

Figure 2. Shelf-checkout sequence diagram

Figure 3. Shelf stock sequence diagram

Figure 4. Location check sequence diagram

Why edge?

Why do we need to use edge computing in these solutions as opposed to something like the cloud? While you can run apps and databases in the cloud, there are two main reasons why it is imperative that we use edge computing to create these solutions.

The first of these reasons is that we need real-time analysis of the camera footage. Having to transfer your camera footage to the machine learning models and back would be extremely time consuming, and you would lose all the benefits of running the analysis on-site. For example, in the time it would take for you to receive your data back about the stock levels of a product, you may have lost out on many sales because the product was not available.

The second reason is the cost of using a cloud service. Not only is transferring all your camera footage to another server in the cloud extremely slow, but it would also be very expensive. Stores have a lot of cameras and sending the video to another site would take all of your bandwidth, and it would cost a lot of money to get it transferred over there. The price it would take to hold all your camera footage while you did analysis on it would cost more than it would be worth to get the analysis.

More possible problems

Introduction

I took the time to interview people about what problems they encountered when they went to the store. By interviewing actual customers of retail environments, I could gather more insight into what problems affected the lives of shoppers, problems that could possibly lose the business of the customer. If the customer has their problems solved, it may result in more business for the store. These problems are not directly solved by the edge computing solutions I designed, but I believe the impact the solutions make on store efficiency and sales will help to lessen the impact of these problems.

Interviewees and their problems

Interviewee 1: Undergraduate intern, Dell Technologies

Problem: Every store is different

Having a consistent layout in stores can be important because it can help customers find what they are looking for more easily. When walking into a brand-new store, even if the franchise is the same, the layout of the store will be different. This can make it harder for customers to find what they want, which could make the customer go to another store the next time they need to buy something. In addition, having things hard to find can negatively affect the customer experience. Customers may become frustrated if they cannot find what they are looking for and may leave the store without making a purchase.

On the other hand, having things hard to find can also cause the customers to spend more time in the store looking around, which can make them more likely to pick up and buy things that they do not need.

Interviewee 2: Undergraduate intern, Dell Technologies

Problem 1: Occupancy is high

High occupancy can be a problem for stores because it can negatively affect the customer experience. When stores are crowded, customers may feel uncomfortable and may not want to spend as much time in the store. In addition, high occupancy can also lead to safety concerns. If there are too many people in the store at once, it can be difficult for customers to move around and for employees to keep track of everyone.

Problem 2: Time it takes to get checked out is high

Having a long checkout time will negatively impact the sales of the business. Waiting customers could give up and abandon their carts, and they may even go to a different store where the checkout time is shorter.

Interviewee 3: Undergraduate intern, Dell Technologies

Problem 1: Labels of what items in the aisle are not detailed enough

When aisle signs are not detailed enough, it can affect the customer flow, the customer experience, and the sales performance of the store. If aisle signs do not correctly communicate what is in the aisle, then customers will spend more time wandering in the store, when they could be getting checked out to make room for more customers.

Problem 2: Calling for help needs to be easier

Sometimes, customers need to call upon staff to find help. If a customer does not know where something is at in a store, it is possible that one of the retail workers knows instead. In some stores, a customer getting help requires them searching the store for an available attendant.

Interviewee 4: Undergraduate intern, Dell Technologies

Problem: Too expensive

Having an item at a high price means that the company will get more money when it is sold, but sometimes it means that the company will have a harder time selling the item. If an item is priced to highly, a customer may choose to go to a competing store where the prices are lower instead.

Interviewee 5: Undergraduate intern, Dell Technologies

Problem: It is too hard to find things in the store

When it is hard to navigate a store, customers will not be able to find what they are looking for and may leave the store without making a purchase. This can lead to the store losing sales. If a customer leaves the store once because it is too confusing, it is unlikely that they will enter the store again.

Conclusion

In conclusion, edge computing is a valuable resource that can help retail owners elevate and exceed in their business. Edge computing is becoming increasingly valuable for retailers looking to do real-time analysis of data and management of different machines, allowing them to solve new problems and generate more sales. I looked over three different problems in the retail sector that impacted sales, those being retail shrink, empty shelves, and misplaced items, and discussed how those could be solved using edge computing through a text overview and diagrams. I then went over how these solutions all had similar parts, and how you could combine them into one solution to solve all three problems at once. I then went over why edge computing was the right tool for the job and how it was a better choice than other computing options. To end it off, I talk about how I interviewed multiple shoppers on their problems in retail stores. Overall, edge computing is a powerful tool that can help retailers improve their business and provide better customer experiences.

Read more

For more information about using edge computing to enhance the customer experience and operational efficiency, see Part 1 and Part 2 of this blog. 


Home > Workload Solutions > Computer Vision > Blog

Automating the Installation of AWX Using Minikube and Ansible

Oliver Chen Logan Dane Oliver Chen Logan Dane

Tue, 02 Aug 2022 19:38:15 -0000

|

Read Time: 0 minutes

Introduction

As the use of virtualization (VMs and containers) expands rapidly in many organizations, automation is needed for virtual server management to address the tedious and repetitive tasks. Ansible is a powerful tool for automation, deployment, and configuration management that has historically required living on the command line interface (CLI). The open-source version of Ansible Tower is AWX - a web-based user interface (UI) for Ansible. When we wanted to explore how AWX works we quickly realized that the existing AWX installation guides need an overwhelming amount of trial and error to make work. This blog presents how to execute a reliable installation process and also explains the automation of the process that reduced our installation to just running a single command. Our comparison and selection of an Ansible UI from a list of 4 options is documented in this blog if you want to learn about that effort.

AWX overview

AWX is a UI solution that sits on top of the Ansible CLI supporting functionality such as visualization of host management and running job status including Ansible playbooks, specification of job parameters, and login authentication. Since AWX is an open-source version of an enterprise product, it has very limited official documentation. During our testing we encountered issues such as insufficient dependency specs, failure to pull Docker images, and inability to visualize our AWX instance. There are many different unofficial guides, but unfortunately, very few of them work reliably without the need for debugging. This blog documents a simple and reliable method for installing AWX.

Prerequisites

Our goal was to deploy AWX on a management system that can connect to a workload environment for VM automation. The only prerequisites you need to get started is to have Ansible installed in the management system and to have your Docker Hub login credentials available. It is crucial to store your Docker Hub username and password in a file named secret.enc under the vars folder of the playbook in following format:

docker_hub_username: <your username>

docker_hub_password: <your password>


Then, you should encrypt the file using a command similar to the one below using Ansible Vault.

$ ansible-vault encrypt secret.enc


Testing system details

Processor

8 x Intel® Xeon® Gold 6338 CPU @ 2.00GHz

Memory

8GB

Hard disk

128GB

OS

Ubuntu 18.04.6 LTS

Ansible version

2.13.1

Table 1: System Details

Components to be deployed by the Installation Playbook

Minikube version

1.26.0

Docker version

20.10.17

Kubernetes version

1.21.4

Table 2: Components to be Deployed

Installation Process

Figure 1: High-level Overview of the Components in the Installation

The goal is to have a running instance of AWX accessible with a browser. With this design, the user only needs one command to run the playbook that installs AWX. This command asks for the sudo permission so the playbook can use elevated privileges whenever necessary. A vault password is also requested to use the encrypted Docker Hub credentials described above for a successful login into Docker. Minikube and Docker are automatically installed by the installation playbook. Minikube is the backbone of this installation process and provides the resources that the AWX instance is installed on. Docker ensures that the Minikube pods are ready for initializing AWX. 

$ ansible-playbook AWX-Install.yml --ask-become-pass -e @vars/secret.enc --ask-vault-pass -e ansible_python_interpreter=/usr/bin/python3


Here is an outline of the background process for the Ansible playbook:

1. The playbook installs the necessary prerequisites. 

2. The playbook logs into and sets up Docker.

3. A Minikube instance is run with specified configurations. 

Figure 2: Creation of Minikube Instance

4. An image pull secret is created and patched to the service account based on the Docker Hub credentials for successful image pulls.

Figure 3: Creation of an Image Pull Secret

5. AWX operator is deployed and it runs as a pod[PD1] .

Figure 4: Deployment of AWX Operator

Figure 5: Running AWX Operator Pod[SM2] 

6. AWX instance is deployed with 4 pods for the instance and 1 pod for postgres.

Figure 6: Deployment of AWX Instance

Figure 7: Deployment File (ansible-awx.yml)

Figure 8: Running Pods for AWX Instance and Postgres[SM3] 

7. Expose the port for the AWX instance through port forwarding and display the IP address and login information for accessing the instance.

Installation result

After running the Ansible install AWX playbook, the login information including username, password, and IP address with port for the AWX instance will be displayed as a part of the detailed output. 

Figure 9: An Example of the Playbook Output with Login Information

Then, you can access the dashboard for AWX using your host’s IP address and port 32483 with login credentials provided from the above output. 

Figure 10: AWX Dashboard After a Successful Installation and Login

Common errors and solutions

A few errors that you may encounter during the installation process:

  • ImagePullBackOff: Kubernetes fails to pull container images from Docker Hub. It is important to make sure that you are logged into Docker Hub successfully using Ansible Vault. You can also login manually using docker login, but it is less secure.
  • Certificate and connection related errors: Ensure that VM resources are sufficient for running Minikube with predefined specifications. If multiple users are working on the same server with several Kubernetes clusters, such errors may also occur due to resource limitations.

Conclusion

This blog introduces a quicker and more convenient way to reliably install AWX. With a simple goal of having a running AWX instance on a server, this blog demonstrates a straightforward solution to achieve that goal while many other existing guides need much more customizations and configurations for the successful execution of an AWX deployment.