mountainss Cloud and Datacenter Management Blog

Microsoft Hybrid Cloud blogsite about Management


Leave a comment

Getting started with #Microsoft Azure Cognitive Services in #Containers #Azure #AI #AKS #Docker

Microsoft Visual Studio Code Tools for AI

With container support, customers can use Azure’s intelligent Cognitive Services capabilities, wherever the data resides. This means customers can perform facial recognition, OCR, or text analytics operations without sending their content to the cloud. Their intelligent apps are portable and scale with greater consistency whether they run on the edge or in Azure.

Bringing AI to the Edge via  Corporate Vice President, Azure AI Eric Boyd

Get started with these Azure Cognitive Services Containers

Building solutions with machine learning often requires a data scientist. Azure Cognitive Services enable organizations to take advantage of AI with developers, without requiring a data scientist. We do this by taking the machine learning models and the pipelines and the infrastructure needed to build a model and packaging it up into a Cognitive Service for vision, speech, search, text processing, language understanding, and more. This makes it possible for anyone who can write a program, to now use machine learning to improve an application. However, many enterprises still face challenges building large-scale AI systems. Today Microsoft announced container support for Cognitive Services, making it significantly easier for developers to build ML-driven solutions.

Microsoft got the following Containers :

  • Text Analytics Containers
  • Face Container
  • Recognize Text Container

More information from Director of Program Management Applied AI Lance Olson here

Start with Installing and running Containers

Request access to the private container registry

You must first complete and submit the Cognitive Services Vision Containers Request form to request access to the Face container. The form requests information about you, your company, and the user scenario for which you’ll use the container. Once submitted, the Azure Cognitive Services team reviews the form to ensure that you meet the criteria for access to the private container registry.

Important !

You must use an email address associated with either a Microsoft Account (MSA) or Azure Active Directory (Azure AD) account in the form. If your request is approved, you then receive an email with instructions describing how to obtain your credentials and access the private container registry.

Read more about installing the Containers here

The Face container uses a common configuration framework, so that you can easily configure and manage storage, logging and telemetry, and security settings for your containers.
Configuration settings
Configuration settings in the Face container are hierarchical, and all containers use a shared hierarchy, based on the following top-level structure:

  • ApiKey
  • ApplicationInsights
  • Authentication
  • Billing
  • CloudAI
  • Eula
  • Fluentd
  • Logging
  • Mounts

Read more here about Configuring the Containers

Follow Containers in the Cloud Community Group

 

Advertisements


Leave a comment

Upgrading Azure #Kubernetes Cluster and Set #Azure monitor Alerts on #AKS


Current version of Kubernetes on Microsoft Azure.

Upgrading Microsoft Azure Kubernetes Services

Azure Kubernetes Service (AKS) makes it simple to deploy a managed Kubernetes cluster in Azure. AKS reduces the complexity and operational overhead of managing Kubernetes by offloading much of that responsibility to Azure. As a hosted Kubernetes service, Azure handles critical tasks like health monitoring and maintenance for you. In addition, the service is free, you only pay for the agent nodes within your clusters, not for the masters.

AKS clusters support Role-Based Access Control (RBAC). An AKS cluster can also be configured to integrate with Azure Active Directory. In this configuration, Kubernetes access can be configured based on Azure Active Directory identity and group membership.
For more information, see, Integrate Azure Active Directory with AKS.

From here I will do a step-by-step Upgrade of a Microsoft Azure Kubernetes Cluster to a newer version and set Azure Monitor alert rule active for the future to get an Alert notification when a colleague is upgrading the AKS Services.

Here you see all the newer versions of Kubernetes.

Upgrading to version 1.11.1 of Kubernetes.

IMPORTANT NOTE :

When upgrading an AKS cluster, Kubernetes minor versions cannot be skipped. For example, upgrades between 1.8.x -> 1.9.x or 1.9.x -> 1.10.x are allowed, however 1.8 -> 1.10 is not. To upgrade, from 1.8 -> 1.10, you need to upgrade first from 1.8 -> 1.9 and then another do another upgrade from 1.9 -> 1.10

KubeCluster Activity Log

At the green arrow on this picture you can download the activities into CSV file. At the Red arrow you see the User ID who initiated the Upgrade of the Kubernetes Cluster. This is important information for Azure Alert monitoring.

10 minutes later Kubernetes Cluster is Upgraded to version 1.11.1

Upgrade is done.

We now do a minor Upgrade of Kubernetes from version 1.11.1 to 1.11.2 to get the newest version on Azure.
Click on 1.11.2 version and hit Save.

 

Microsoft Azure Monitoring Alerts

When you click on the second activity of the Upgrade you see at arrow 2 that you can add an Activity Log Alert by Azure monitoring.

Creating Rule Alerts.

  1. Define Alert condition is already set. We want an Alert notification on Upgrading KubeCluster.
  2. Define Alert details, must be set.
  3. Define Action Group, must be set to create the Alert Rule.

2. Define the Alert Details.

3. Define Action Group : Click on + New Action Group

Click on OK

Created Action Group name AKSAdmins

An action group is a collection of notification preferences defined by the user. Azure Monitor and Service Health alerts are configured to use a specific action group when the alert is triggered. Various alerts may use the same action group or different action groups depending on the user’s requirements.

More information on Creating and managing action groups in the Azure portal can be found here

For information on how to use Azure Resource Manager templates to configure action groups, see Action group Resource Manager templates.

 

From here you can Create the Alert Rule and make it Active.

Azure Monitor Alerts with one rule Enabled.

Here is our Active KubeCluster Alert Rule.

Now we will get a notification when a Colleague is Upgrading our KubeCluster in the Future 😉

KubeCluster is now running the latest available version of Kubernetes.

Kubernetes Cluster nodes are Healthy and running version 1.11.2

Here you see in the Kubernetes Dashboard the Node version of Kubernetes.

For Developers and DevOps it’s Great to work with Microsoft Visual Studio Code and the Azure Kubernetes Services (AKS) to work in a CI/CD Pipeline, to create continuous business applications in the Cloud.

Here is my Azure KubeCluster running in Visual Studio Code 🙂

And at last, most important thing is that my Application is running on my Azure Kubernetes Cluster for the Business My Test Site.

Hope this blogpost is useful for you and your business to manage your AKS Cluster in the Microsoft Cloud.

More information About Azure Kubernetes Service (AKS) :

 Upgrade an Azure Kubernetes Service (AKS) cluster via Azure CLI

Azure Kubernetes Service (AKS) Docs

Monitor Azure Kubernetes Service (AKS) container health (preview)

Microsoft Azure Kubernetes Services website Start Free here

Follow Containers in the Cloud Community Group on LinkedIn


Leave a comment

Scale and Upgrade your Azure Kubernetes Cluster #AKS #Containers #Azure #Kubernetes #DevOps #Cloud


I start with a 2 Node Kubernetes Cluster.

Azure Kubernetes Service (AKS) makes it simple to deploy a managed Kubernetes cluster in Azure. AKS reduces the complexity and operational overhead of managing Kubernetes by offloading much of that responsibility to Azure. As a hosted Kubernetes service, Azure handles critical tasks like health monitoring and maintenance for you. In addition, the service is free, you only pay for the agent nodes within your clusters, not for the masters.

When you have a Web App like Joomla CMS running on Microsoft Azure Kubernetes Services (AKS) and you need more capacity or performance, you can really easy Scale-Up and Scale-Down when needed. It is easy to scale an AKS cluster to a different number of nodes. Select the desired number of nodes and run the az aks scale command. When scaling down, nodes will be carefully cordoned and drained to minimize disruption to running applications. When scaling up, the az command waits until nodes are marked Ready by the Kubernetes cluster.

Scaling your Azure Kubernetes Cluster (AKS)

In the following step-by-step guide I’m scaling my AKS Cluster from 2 nodes to 4 node Kubernetes Cluster :

Here you can scale your Cluster to the right Size
Click on Save to execute.

One AKS Cluster can Scale-Up to 100 vCPU’s and 350 GB of Memory 😉

It’s updating now my 2 Node AKS Cluster to 4 Nodes.
( wait a couple of minutes )

Done !

In Visual Studio Code a got 4 Nodes

In the AKS Cluster Health Monitor you see the Update of the Config.

When you open the Kubernetes Dashboard you see the load on the 4 Nodes.

When you don’t need a 4 Node Cluster performance and/or capacity any more because of the workload, you can scale your Cluster back to 2 Node Cluster for example.

Scaling down to 2 Node AKS Cluster.

Back to 2 Node Azure Kubernetes Cluster.

Just Refresh in Visual Studio Code
2 Node Cluster Again.

And my Joomla CMS Web App is running on 2 Node AKS Cluster.

This was Scaling your Microsoft Azure Kubernetes Cluster (AKS), the Next step-by-step guide I’m Upgrading my Azure Kubernetes Cluster (AKS) to a New version.

Upgrading your Azure Kubernetes Cluster (AKS)

My Current version of AKS is 1.10.5

I’m Upgrading to Kubernetes version 1.10.6
Click on Save to Execute.

After +/- 10 minutes my AKS Cluster was Up-to-Date.

with kubectl version you see the Changes in Visual Studio Code (VSC)


And of course you get notified by the Azure Portal when your Upgrade is Done 🙂

When you like to work from Azure CLI or Cloudshell or VSC you can Upgrade your Kubernetes Cluster from here

More information about Azure Kubernetes Services (AKS) :

Kubernetes versions on GitHub

Kubernetes Documentation

Microsoft Azure AKS Docs

Hope this easy Quick Step-by-Step Guides are helpful for you and your Business.


Leave a comment

Installing Joomla Web App on your #Azure Kubernetes Cluster #AKS #Containers #DevOps

When you have your Microsoft Azure Kubernetes Cluster (AKS) created and running in the Cloud you want to run some pods (Containers) for your Business Solution. In the Next steps I created a Joomla CMS Web App on my Kubernetes Cluster in Microsoft Azure by playing with some tooling.

First I installed Chocolatey via Powershell in the Administrator modus :

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString(‘https://chocolatey.org/install.ps1’))

With Chocolatey v0.10.11 I installed Helm on my Windows10 Surface by typing :

Choco install kubernetes-helm

Type helm init

Here you find the Helm QuickStart Guide for your commands on your Azure Kubernetes Cluster

Type : helm repo update

This will update your stable repository packages

With the following command I installed Joomla CMS on my Azure Kubernetes Cluster (AKS) :

helm install stable/joomla  ( In Powershell )

When you have Visual Studio Code installed with the Kubernetes Extension you can manage your Joomla
web application for Content Management.

Here you can inside the Pods (Containers) via terminal

But most important is that your workload ( Joomla CMS Web App ) is running in the Cloud on a Scalable Azure Kubernetes Cluster for the Business.

Hope this Quick Guide is helpful for you and your Business.

More information :

Microsoft Azure Kubernetes Services (AKS) docs


Leave a comment

Create #Azure Kubernetes Cluster and Manage in Visual Studio Code #VSC #Kubernetes #Cloud


In this Step-by-Step Guide we will Create a Microsoft Azure Kubernetes Cluster (AKS) and add it to Microsoft Visual Studio Code to manage and use it.

This time I have created the Kubernetes Cluster via the Azure Portal, when you don’t have an Azure Subscription you can start here 

Azure Kubernetes Service (AKS) makes it simple to deploy a managed Kubernetes cluster in Azure. AKS reduces the complexity and operational overhead of managing Kubernetes by offloading much of that responsibility to Azure. As a hosted Kubernetes service, Azure handles critical tasks like health monitoring and maintenance for you. In addition, the service is free, you only pay for the agent nodes within your clusters, not for the masters.

You can of course also Create your Azure Kubernetes Cluster via Azure CLI in Cloudshell.

Here you see the steps from the Azure Portal to Create your Azure Kubernetes Cluster :

Fill in the Basics and Click on Authentication tab

Here you have your SPN and you can manage RBAC.
go to Networking TAB.

Network Settings, keep http application routing on yes.

Click on Monitoring TAB.

Azure Monitoring settings.

Review + Create will Validate your Configuration.

Click on Create.

It’s Deploying the Azure Kubernetes Cluster.

Here you find the Overview of your AKS Cluster in the Azure Portal.

Your Microsoft Azure Kubernetes Cluster is now running by Default with Azure monitoring enabled, and I like to have it in Microsoft Visual Studio Code.

Install the latest Azure CLI 2.0 version
(You need version 2.0.27 or higher)

my version of Azure CLI is 2.0.41

In the Next Visual Studio Code steps I’m already logged-in my Azure Subscription.

When you have Microsoft Visual Studio Code installed with the Kubernetes Extension you can Create or add Existing Cluster to VSC.

Choose Cluster type Azure Kubernetes Service

Choose the right Azure Subscription.

Here you will see your Azure Kubernetes Cluster
KubeCluster in my Azure Subscription

Now you Azure Kubernetes Cluster (AKS) is added to VSC 😉

When you right click on your Kubernetes Cluster you can open Dashboard.

Here you see my two-nodes in Kubernetes Dashboard.

Status of one Kubernetes node.

Here you see the pods (Containers) and also the Azure Monitoring Agent.

Now you can install or Build your solution on your Azure Kubernetes Cluster (AKS).

Monitoring and managing your AKS solution is important to see what is going on. That’s why the Azure Monitoring Agent is on by Default.

Here you see my Container Monitoring Solution for all my Containers.
( Azure AKS and Docker containers on-premises )

What is NEW and AWESOME is Azure Monitoring – Container Health Services.

Health Overview of your AKS Cluster

Health overview of your AKS Nodes

Health Overview of your AKS Controllers

For Troubleshooting you can use the Azure logs of your solution and query what is wrong.

And Scaling your AKS Cluster is Never been Easier then this 🙂

Hope this Step-by-Step Guide is useful for you and your Business to start with Containerize your Apps in the Cloud

JOIN Containers in the Cloud Community Group

 


Leave a comment

A Great #Microservices E-book about Architecture for Containerized #dotnet Apps #Docker #Kubernetes #Containers

Enterprises are increasingly realizing cost savings, solving deployment problems, and improving DevOps and production operations by using containers. Microsoft has been releasing container innovations for Windows and Linux by creating products like Azure Container Service and Azure Service Fabric, and by partnering with industry leaders like Docker, Mesosphere, and Kubernetes. These products deliver container solutions that help companies build and deploy applications at cloud speed and scale, whatever their choice of platform or tools.
Docker is becoming the de facto standard in the container industry, supported by the most significant vendors in the Windows and Linux ecosystems. (Microsoft is one of the main cloud vendors supporting Docker.) In the future, Docker will probably be ubiquitous in any datacenter in the cloud or on-premises.
In addition, the microservices architecture is emerging as an important approach for distributed mission-critical applications. In a microservice-based architecture, the application is built on a collection of services that can be developed, tested, deployed, and versioned independent

You can download .NET Microservices Architecture for Containerized .NET Application E-book here

eShoponContainers 


Leave a comment

Deploying Containers on #Kubernetes Cluster in #Docker for Windows CE and on #Azure AKS

Kubernetes Custer via Docker for Windows CE Edge

Docker CE for Windows is Docker designed to run on Windows 10. It is a native Windows application that provides an easy-to-use development environment for building, shipping, and running dockerized apps. Docker CE for Windows uses Windows-native Hyper-V virtualization and networking and is the fastest and most reliable way to develop Docker apps on Windows. Docker CE for Windows supports running both Linux and Windows Docker containers.
Download Docker for Windows Community Edition Edge here

From Docker for Windows version 18.02 CE Edge includes a standalone Kubernetes server and client, as well as Docker CLI integration. The Kubernetes server runs locally within your Docker instance, is not configurable, and is a single-node cluster.

I’m using Docker for Windows CE version 18.05.0

Now your Single node Kubernetes Cluster is running.

To get the Kubernetes Dashboard you have to install it with Kubectl :

kubectl create -f https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/recommended/kubernetes-dashboard.yaml

Run kubectl proxy

Keep this running.

Go with your browser to : http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/login  and you can skip kubeconfig for now.

You are now in the Kubernetes Dashboard.

Now it’s time to make your first containers (Pods) on Kubernetes.
Click on +CREATE in the upper right corner.

For example code I used a yaml script to deploy Nginx with 3 replicas

Deploying the Nginx Containers (Pods)

Nginx is running on Kubernetes.

With Microsoft Visual Studio Code and the Kubernetes extension you can play with Nginx Containers (pods) locally on your laptop.

When you need more capacity and want to scale-up with more Containers (Pods) for your solution, you can use Microsoft Azure Cloud with Azure Kubernetes Services

Monitor Azure Kubernetes Service (AKS) with container health (Preview) and with Analytics