What Kubernetes is, what it isn’t, and How Can It Benefit Me?

So just what is Kubernetes?  Well first off, Kubernetes has to do with containers.  The official Kubernetes website defines it as Kubernetes (K8s) is an open-source system for automating deployment, scaling, and management of containerized applications. Containers have been a buzzword for a while now as many companies have transformed into a container-centric infrastructure to host their applications.  By doing so, it leaves behind the dependency on an underlying OS that adds complexity to virtualized host environments.  Segregated within its container, the application operates under the illusion that it is getting its own dedicated OS instance.  It’s also isolated from other applications hosted on the same server host.  Containers offer more than just application segregation.  Because container-based applications are independent of their host environment, you can distribute their self contained ecospheres around the world quickly and easily.  Containerization is based on a three-part strategy:

  • Transform an idea into a software application and package it
  • Distribute it where you want in a scalable fashion
  • Run it in its own isolated playground so it doesn’t interfere with other applications

Kubernetes is not a replacement for Docker

So let’s start out by saying what Kubernetes isn’t.  Kubernetes is not a replacement for Docker.  Kubernetes doesn’t create the actual containers themselves.  It provides a platform to manage them.   You don’t implement Kubernetes to create a container-centric infrastructure presence as Kubernetes is not a container hosting solution.  That’s what Docker does.  Docker is an open-source technology that makes it possible to run many applications on the same servers.  It also makes it easy to package and ship applications.  Millions of applications today reside within containers across the world and Docker has become the default container format.  Like Docker, Kubernetes is a portable, extensible, open-source platform.  What it does is make Docker better.  Because they operate in tandem, the two often become incorrectly infused together.  Kubernetes is a collaborative solution that you implement along with Docker.  It is important to note that Kubernetes will work with any containerization technology, but we will use Docker as the de facto example.  

Kubernetes is an Orchestrator


So how does Kubernetes make Docker better?  Well, a key difference between the two is that Docker is a containerizing technology that makes applications easily shippable.  It provides a container based foundation for your application environment.  Kubernetes provides added features that are necessary in more complex multi-node environments.   

Kubernetes is an orchestrator in the same way that software defined networking or virtual server farms need a cluster to operate.  In fact, the name Kubernetes originates from Greek, meaning helmsman or pilot.  A big part of its orchestration is resource management.  Operating under a common resource management model, the components that makeup Kubernetes can work in conjunction to ensure that resources are neither underutilized nor oversubscribed.  The Kubernetes orchestrator also ensures proper load balancing in order to uniformly spread the application load across multiple cluster nodes.  

Who Needs Containerization?

If you have a stand-alone container environment with stable traffic, you may not have a need for Kubernetes.  If however, you have a large enterprise with mission-critical apps residing on multi-node clusters, then Kubernetes can help you overcome challenges that inevitably occur in any complex application enterprise environment.  For instance, let’s say one of your nodes goes down within your cluster.  Suddenly you need to failover containers in order to avoid workload disruption.  This is where Kubernetes takes over and saves the day.  Kubernetes can help you multiple ways including:

  • automate container provisioning
  • ensure optimized load balancing
  • automate failover and recovery
  • ensure efficient scalability within large enterprises

Kubernetes Vocabulary


To better understand Kubernetes, let’s review some of the primary components that make up the vocabulary and architecture of it.

  • Pod – this is the smallest unit and serves as the basic building block of Kubernetes, which represents a running process on your cluster.  A pod encapsulates one or more application containers along with its storage resources, IP address, and whatever options that it needs in order to function in your environment.  It represents a single instance of an application.
  • Worker Node – this can be either a virtual machine or a bare metal server.  Worker nodes host the pods.
  • Master Node – this is the managing node.  The master node assigns pods to worker nodes.

The master node serves as the orchestrator that runs control plane components of the Kubernetes cluster.  It makes global decisions concerning cluster operations and responds to cluster events.   If suddenly you need many more containers fired up to satisfy an unexpected surge in demand for your hosted application, the master node takes charge of this.  Not only does it spin up new containers, but assigns pods to containers in a way that maximizes efficiency and resources.  In other words, it doesn’t just place containers, it places them in the ideal spot to ensure your application runs optimally.  The same level of intelligence-based automation holds true if a node goes down.  The master node also manages the scheduling of pods.  By default, it schedules pods on nodes in a random fashion as resources are available.  Kubernetes can take care of all of these governing functions far more effectively than human intervention.  This makes your application infrastructure far more robust, able to overcome any possible disruption so that it doesn’t actually become one.  

Summary


Kubernetes works very well within Azure application environments.  In fact, all of the major cloud service providers support Kubernetes.  At Xcelacore, we have years of experience working with container-based applications.  Whether it’s creating software to be run in the most complex of environments or conducting extensive QA testing for multi-node container-based applications, we have the experience and expertise to ensure your applications achieve the performance and value that you expect. 

As online retailing continues to grow exponentially, retailers find themselves facing new sets of problems that weren’t indicative of the in-store shopping experience of yesterday.   Two weeks ago, Nike cited industry research that shows that roughly 60 percent of consumers are wearing the wrong shoe size.  This is a significant problem for the athletic shoe giant because many online shoppers overcome the challenge of finding a proper-fitting shoe by purchasing multiple sizes of their desired shoe online and then returning the ones that didn’t fit.  Trying on multiple pairs of shoes in the comfort of your home is definitely a great way to find the perfect fit, but it is also a very cumbersome and expensive solution. 

For one, it’s inconvenient for the customer to order and pay for multiple pairs of shoes and then go through the process of returning the ones that they don’t want. For retailers like Nike, it increases their cost since they have to process a much higher number of returns and credit customer accounts.

Technological Innovation Helps Better Serve Customers (and Improve the Bottom Line)

In order to save costs and better serve its customers, Nike introduced a smartphone app that uses augmented reality (AR) to perform a highly accurate scan of one’s foot utilizing a smartphone camera.  By mapping out a morphology of both feet, the customer is assured that the size ordered is the only one necessary.  This innovative technology builds the level of trust that shoe buyers have in Nike which helps solidify brand loyalty. 

What’s more, Nike saves the foot map results in the customer’s profile for later use.  This insight into the customer’s foot physiology has a number of business benefits for Nike including building personal relationships that retailers are striving to create with each customer in order to better succeed in a hyper-competitive retail environment.  Nike’s undertaking is part of a massive trend in the retail sector as 100 million consumers will shop in AR online and in-store by 2020 according to Gartner, Inc.

AI Helps You Learn About Your Customer

The first commandment of retail is “Know thy Customer.”  To better understand your customer, you need information and a way to process and interpret that information.  This is where AI and cloud service providers such as Azure come into play.  According to a McKinsey study, AI could potentially generate $4 billion to $8 billion in annual revenue for the global retail economy as well as $2 to $5 billion in consumer goods.  A greater insight into shoppers means a greater ability to convert them into regular customers.  That is the power of AI.  AI and the data gleaned can:

  • Increase promotion efficiency
  • Cultivate personal relationships with your customers
  • Innovate and develop new products
  • Increase sales transactions
  • Reduce customer complaints
  • Build brand loyalty

Chatbots and Azure

Chatbots are also growing more prevalent every day in the retail industry. Retailers are using Azure’s Bot Service and Framework to service customers more effectively and efficiently.  Modern bot software today relies on a growing stack of technology and tools in order to deliver increasingly complex experiences that users now demand. 

Gartner has stated that 25 percent of customer service and support operations will integrate chatbot technology by 2020, up from just 2 percent in 2017.  They also believe that within a few years, chatbots will power 85 percent of all customer service interactions.  In fact, by then, they predict that the average consumer will have more conversations with chatbots than with their spouse! Juniper Research estimates that by 2023, 75 percent of all chatbot interactions will be retail-based.  Why? Because the retail sector is one of the most promising sectors for automated agents with huge upside revenue potential. What’s better? Implementing this technology costs less in the retail sector. 

Many online shoppers have experienced chatbots first-hand; but chatbots aren’t limited to online commerce alone.  Large box retailers and shopping malls are integrating them in order to help customers locate and direct them to products on the shelf.   One example is the Mall of America that services 400 million people a year.  The mall’s chatbot is accessible through a number of alternative mediums and helps customers locate retail and restaurant establishments in real-time.  It can even makes suggestions or connect the shopper with a mall associate for additional information.  The integration of online AI-driven tools within the brick-and-mortar environment creates an omni-channel retail experience for the shopper in which they can experience consistent service throughout all of their shopping interactions.  This omni-channel strategy allows consumers to purchase wherever they are, whenever they want – and stay in constant communication.

Sentiment Analysis and Gesture Recognition

The ability to determine what your customers may want before they are even fully certain would be a huge competitive advantage for any retailer.  This requires the ability to understand the opinions or sentiment of shoppers.  The good news is that consumers today express their sentiments everyday through social channels, text messages, chatbots, tweets, online reviews, etc.  One of the ways that Microsoft Azure offers this capability is through text analysis. By analyzing these sentiments, retailers can fine-tune their suggestive marketing strategies when they come in contact with customers. 

Retailers are also integrating apps and kiosks into their stores in order to serve customers more efficiently.  Taco Bell was able to increase their average order transaction by 20 percent by encouraging customers to use its app rather than human cashiers.  Cinemark Theater’s use of self-service kiosks increased concession spending per person for 32 straight quarters.  Kiosks are even more effective when AI technology is integrated with facial and/or gesture recognition.  With facial recognition, frequent customers are instantly identified as they approach a kiosk or storefront. The technology then offers suggestions based upon known shopping history.  And gesture recognition enables shoppers to find their preferred products with a simple wave of the hand using a touchless device.

Moving Forward in Retail

No facet of retail has been untouched by the technological disruption in recent years.  AI helps give the insight you need to create seamless and effortless experiences with customers.  By better understanding your customers you help build customer relationships with your brand. Ultimately this brand loyalty reduces the likelihood that your customers shop elsewhere.  What’s more, the efficiencies that AI brings to your operations helps reduce costs that will add to your business’ profitability.  The digital transformation of the retail sector has already begun.  Now it’s time to fully embrace it. 


Ready to Talk? Contact Us.

Building the right cloud environment to meet business objectives

You’ve probably heard the old saying, “He’s got his head in the clouds,” right? Well today, businesses have a whole lot more in the cloud. According to a 2018 article in CIO magazine, 96 percent of businesses today now use the cloud in some capacity.  Businesses are using the cloud, but they are turning to more than one provider. 81 percent use a multi-cloud strategy.  Even SMBs are embracing the cloud. According to the IDC, more than 90 percent of companies between 100 and 499 employees used the cloud in 2018.  The fact is, cloud computing is a very viable alternative to on-prem computing, and while the two approaches have many things in common, it’s a different world up in the cloud.  Cloud computing utilizes different terminology and protocols supported by completely different architectures.

Multi-cloud, Hybrid Cloud, Hybrid IT

For a startup company today, the cloud is a natural choice, maybe even a no-brainer.  Since cloud computing is based on a variable cost model in which you only pay for the cloud resources you use, the cloud can save companies struggling for capital a great deal of capital expenditure.  The cloud is also perfect because it isn’t geocentric, thus increasing the flexibility and agility of the organization and its users. For companies that already have substantial investment in on-premise environments and data centers, it is unrealistic to simply transition everything to the cloud overnight.  In those instances, a hybrid approach makes sense. A hybrid environment incorporates both on-premise and cloud architectures. Despite the apparent simplicity in all of this, cloud terminology can become confusing so let’s break down some of the basic architectural terminologies.

Multiple Cloud Environment

As its name implies, this refers to the utilization of two or more clouds.  They could be two public clouds such as Azure and AWS or a public cloud and private cloud.  This includes both cloud computing and cloud storage in a single heterogeneous architecture.  The utilization of multiple cloud services offers great flexibility since some cloud environments are more suitable for particular tasks.   It also increases reliability and redundancy while minimizing the risk of vendor lock-in.

Hybrid Cloud

A hybrid cloud is actually a multiple cloud environment consisting of a public and on-premise private cloud.  A good example is Azure Stack which allows you to host resources and services both on-prem and in Azure from a single interface.  A hybrid cloud is ideal for companies that rely on cloud bursting in order to accommodate unpredictable workloads or must host some resources on-premise in order to adhere to industry or government compliance standards. The hybrid cloud offers the flexibility provided by self-provisioning on-demand capabilities of the cloud while retaining full control and management of data and applications when desired.  

Hybrid IT

Most companies that have an existing legacy infrastructure find that not everything in their enterprise is cloud-ready.  That is where Hybrid IT comes in to play. Hybrid architectures incorporate a traditional on-premise datacenter with one or more clouds.  This wide offering of architectures allows organizations to align business objectives with the best available IT solutions.

Azure vs. AWS

AWS and Azure are the two big players on the block when it comes to cloud computing.  AWS was the first cloud player on the market back in 2006 and its headstart gave it a huge advantage over any future competitors.  It would be years later until Microsoft would compete for market share, but the company has a history of entering late and turning up the burners to catch up.  Microsoft has indeed done that with Azure and its solution is growing at an exponential rate, although AWS is still sizably larger.

Both solutions have competitive advantages over one another.  For those companies that utilize open source technology, AWS has been the prime choice as Azure, up until recently, had a large void in open source.  If you are a Microsoft shop and already utilize Windows Active Directory, SQL Server or Visual Studio, then Azure is a natural choice for its familiarity and compatibility.  While Azure is extremely popular amongst C# developers, those who work with other languages such as Node.js, Python or Ruby on Rails gravitate to AWS. It’s also a predominant choice for those that work with Linux and other database platforms.  Azure has a strong concentration of enterprise customers as Microsoft has vast experience working directly with large companies. Much of the initial growth of AWS was due to smaller organizations although it has made great strides in the corporate market recently.

Cloud Computing Trends

Businesses aren’t looking for a specific cloud provider.  They are looking for solutions to business problems. Because no two cloud service providers are the same, companies will continue to utilize multiple providers in order to align business objectives with the best solutions.  

Other trends in the cloud computing market:

  • Up until recently, cloud computing was restricted to the DevOps world and testing environments, but more and more production workloads are being migrated to the cloud today.
  • Artificial intelligence (A)I supported by Internet of Things (IoT) sensory technology will continue to play a growing role in cloud computing due to its scalability and centralized architecture.
  • Voice interaction is becoming a major focus as developers greatly accelerate its use in apps.  Amazon holds a clear lead in this facet thanks to Alexa.
  • Both AWS and Azure are unveiling a serverless computing paradigm in which clouds simply execute snippets of code without bothering developers with provisioning underlying infrastructure.

When it comes to cloud computing, there is no “one” right solution, just as there is no absolute choice between Dell or HP when it comes to physical servers.  Cloud computing is simply about finding the best solution at hand, for the task at hand, and AWS and Azure both have the solutions to accomplish this.


Ready to Talk? Contact Us.