Cloud and Datacenter Management Blog

Microsoft Hybrid Cloud blogsite about Management


Leave a comment

Dapr for .NET Developers E-book #microservices #dotnet #Dapr #Kubernetes #Azure #DevOps #developers

Dapr is an open source, portable, event-driven runtime that makes it easy for developers to build resilient, microservice, stateless and stateful applications that run on the cloud and edge. Dapr enables developers to focus on writing business logic and not solving distributed system challenges, thereby significantly improving their productivity, and reducing development time. Dapr lowers the bar for entry to build modern cloud native applications based on a microservices architecture and with this v1.0 release, Dapr applications can be deployed to self-hosted infrastructure or Kubernetes clusters in production scenarios.

Here you find an E-book about Dapr for .NET Developers 

Foreword by Mark Russinovich Azure CTO and Technical Fellow Microsoft

With the wave of cloud adoption well underway, there is a major shift happening towards “cloud native” development, often built with microservice-architectures. These microservices are both stateless and stateful, and run on the cloud and edge, embracing the diversity of languages and frameworks available today. This enterprise shift is driven by both the market forces of faster time to market, as well as the scale and efficiencies of building services for the cloud. Even before COVID-19, cloud adoption was accelerating for enterprises and developers were being asked to do even more to deliver on building these distributed system applications, and that has only accelerated since. Developers in enterprises seek to focus on business logic, while leaning on platforms to imbue their applications with scale, resiliency, maintainability, elasticity, and the other attributes of cloud-native architectures, which is why there is also shift towards serverless platforms that hide the underlying infrastructure. Developers should not be expected to become distributed systems experts. This is where Dapr steps in to help you, whether you are building on infrastructure such as Kubernetes, or on a serverless platform.

Dapr is designed as an enterprise, developer-focused, microservices programming model platform with the mantra “any language, any framework, run anywhere”. It makes building distributed applications easy and portable across any infrastructure, from public-cloud, through hierarchical edge, and even down to single node IoT devices.  It emerged from both our experiences building services in Azure as well as time spent working with customers building applications on Azure Kubernetes Service and Azure Service Fabric. Over and over, we saw common problems that they had to address. It became clear that there was a need to provide a “library” of common microservice best practices that developers could use, not only in new greenfield applications, but also to aid in the modernization of existing applications. In the containerized, distributed, and networked cloud native world, the sidecar model has emerged as the preferred approach, in the same way DLLs are preferred in the client/server generation. Using Dapr’s sidecar and APIs give you, as a developer, all the power of distributed systems functionality, with the ease of a single HTTP or gRPC local call.

To address the wide range of scenarios that developers face, Dapr provides features such as state management, service to service invocation, pub/sub and integration to external systems with I/O bindings, which are based on the triggers and bindings of Azure Functions. These in turn take advantage of Dapr’s component model which allows you to “swap out”, say different underlying state stores, without having to change any code, making code more portable, more flexible and allowing for experimentation of what best suits your needs. Developers don’t need to learn and incorporate service SDKs into their code, worry about authentication, secret management, retries or conditional code that targets specific deployment environments.

This book shows how Dapr reduces your development time and overall code maintenance by incrementally “Daperizing” the canonical .NET reference application, eShop. For example, in the original eShop implementation, significant amounts of code were written to abstract between Azure Service Bus and RabbitMQ for publishing events between services. All this code can be discarded and simply replaced with Dapr’s pub/sub API and component model which had an even wider range of pub/sub brokers, rather than just two. Dapr’s actor model, when used in the reworked eShop application, shows the ease of building long running, stateful, event driven, workflow applications with all the difficulties of concurrency and multi-threading removed. By the end of this book, you will see the drastic simplification that Dapr brings to your application development, and I firmly believe all developers embarking on a cloud native app building journey should leverage Dapr.

We publicly announced Dapr with the v0.1 release in Oct 2019 and now, a year and half later, I am thrilled to say that Dapr is ready for production usage with the v1.0 release. Getting Dapr to v1.0 has truly been a community effort. It has been amazing to see the open-source community coalesce around Dapr and grow since it was first announced – from 114 contributors in October 2019 to over 700 in early 2021 – a six-fold increase in 16 months! Contributions to the project have gone to every Dapr repo and have ranged from opening issues, commenting on feature proposals, providing samples, and of course contributing code. The parts of the project community members have contributed to the most include the Dapr runtime, docs, CLI, SDKs and the creation of a rich ecosystem of components. Maintaining this openness is critical to Dapr’s future.

Dapr is really just getting started, though, and you should expect to see more Dapr capabilities and more support for Dapr in Azure services. I hope that you will take advantage of Dapr to enable you to focus on your core business logic and accelerate your microservices development. I am are excited to have you join us in the Dapr community on this journey athttps://github.com/dapr/ and on Discord https://aka.ms/dapr-discord.

Modern distributed systems are complex. You start with small, loosely coupled, independently deployable services. These services cross process and server boundaries. They then consume different kinds of infrastructure backing services (databases, message brokers, key vaults). Finally, these disparate pieces compose together to form an application.

Mark Russinovich Azure CTO and Technical Fellow Microsoft

Thank you Author; Rob Vettor, Sander Molenkamp and Edwin van Wijk for this Awesome E-book 😉


Leave a comment

#WindowsAdminCenter and Windows Server 20H2 Core with WSL2 #Ubuntu Distro #Winserv #WSL2

Windows Server 2019 Core and WSL 2 Ubuntu 18.04

The Windows Subsystem for Linux (WSL) gives you the most command-line tools, utilities, and applications directly on Windows. I’m using Microsoft Windows Admin Center and Windows Server Core 20H2 with Build version 19042.746 to deploy WSL 2 with Ubuntu 18.04 Linux Distro. Here you find the installation of the Windows Server Core 20H2 with Windows Admin Center

In the following steps we will install the Following :

  • Windows Subsystem for Linux (WSL)
  • Move from WSL 1.0 to WSL 2.0
  • Install Ubuntu 18.04 Linux distro

Installing Windows Subsystem for Linux (WSL)

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

This will install the WSL Feature.
When it ask do you want to Restart select No, because we will install the Next Feature :

Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform

Select now Yes for Restarting the Server.

Moving from WSL 1.0 to WSL version 2.0

Before we Move from WSL version 1 to WSL version 2, we need a WSL Kernel Update.
Download here https://aka.ms/wsl2kernel

I Created a Share on the Windows Server via WIndows Admin Center.
And Uploaded the WSL_Update_X64.msi

Run WSL_Update_X64 and Click on Next.

Click on Finish

WSL –Set-Default-Version 2
Now we have Windows Subsystem for Linux version 2 Active.

Install Ubuntu 18.04 Linux Distro for WSL2

With the following Powershell Invoke-WebRequest we get Ubuntu 18.04


Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1804 -OutFile ~/Ubuntu1804.zip -UseBasicParsing
md C:\Distros\Ubuntu1804
Expand-Archive ~/Ubuntu1804.zip C:\Distros\Ubuntu1804


Run Ubuntu 18.04

Ubuntu 18.04 is Running in WSL2 on Windows Server Core 20H2 😉

Conclusion

First of All Microsoft Windows Admin Center is supporting me in the Installation of Windows Subsystem for Linux. We have WSL 2 Running with Ubuntu 18.04 with a lot of possibilities!
What I really like is integration, like in Windows 10 and Docker for desktop with the WSL 2 Engine. Here my Blogpost
Together with VSCode Remote WSL is Cool.

Would be awesome to run Docker Windows and Linux Containers in combination with WSL 2 integration on Windows Server Core edition. Maybe in the Future, who knows?


Leave a comment

Get Started with the #Microsoft Azure Storage Explorer #AzOps #Azure #Cloud #Storage

Upload, download, and manage Azure blobs, files, queues, and tables, as well as Azure Cosmos DB and Azure Data Lake Storage entities. Easily access virtual machine disks, and work with either Azure Resource Manager or classic storage accounts. Manage and configure cross-origin resource sharing rules.

Microsoft Azure Storage Explorer

The Microsoft Azure Storage Explorer App is standalone and available for Windows, Linux and MacOS operating systems.
Here you find the Prerequisites and the Download files for Azure Storage Explorer.

Here you see how easy it is to create a snapshot before you begin with a Installation on the Azure Virtual Machine.

Create a Snapshot

Give the Snapshot a Name and select the Resource Group.

Snapshot Created Successfully 😉

When you open the Azure Portal and search for snapshots :

Phantom OS Disk with a Full Snapshot.

Azure Storage Explorer Emulator for Developers

Azurite open source Azure Storage API compatible server (emulator)

Azurite is an open source Azure Storage API compatible server (emulator). Based on Node.js, Azurite provides cross platform experiences for customers wanting to try Azure Storage easily in a local environment. Azurite simulates most of the commands supported by Azure Storage with minimal dependencies.

Azurite V2 is manually created with pure JavaScript, popular and active as an open source project. However, Azure Storage APIs are growing and keeping updating, manually keeping Azurite up to date is not efficient and prone to bugs. JavaScript also lacks strong type validation which prevents easy collaboration.

Compared to V2, Azurite V3 implements a new architecture leveraging code generated by a TypeScript Server Code Generator we created. The generator uses the same swagger (modified) used by the new Azure Storage SDKs. This reduces manual effort and facilitates better code alignment with storage APIs.

3.0.0-preview is the first release version using Azurite’s new architecture.

Features & Key Changes in Azurite V3

  • Blob storage features align with Azure Storage API version 2020-04-08 (Refer to support matrix section below)
    • SharedKey/Account SAS/Service SAS/Public Access Authentications
    • Get/Set Blob Service Properties
    • Create/List/Delete Containers
    • Create/Read/List/Update/Delete Block Blobs
    • Create/Read/List/Update/Delete Page Blobs
  • Queue storage features align with Azure Storage API version 2020-04-08 (Refer to support matrix section below)
    • SharedKey/Account SAS/Service SAS
    • Get/Set Queue Service Properties
    • Preflight Request
    • Create/List/Delete Queues
    • Put/Get/Peek/Updata/Deleta/Clear Messages
  • Features NEW on V3
    • Built with TypeScript and ECMA native promise and async features
    • New architecture based on TypeScript server generator. Leverage auto generated protocol layer, models, serializer, deserializer and handler interfaces from REST API swagger
    • Flexible structure and architecture, supports customizing handler layer implementation, persistency layer implementation, HTTP pipeline middleware injection
    • Detailed debugging log support, easy bug locating and reporting
    • Works with storage .Net SDK basic and advanced sample
    • SharedKey, AccountSAS, ServiceSAS, OAuth, Public Access authentication support
    • Keep updating with latest Azure Storage API version features (Refer to support matrix)

Introducing the ADF Azure Storage Explorer Extension

Azure Data Factory extension for Storage Explorer

Conclusion

Microsoft Azure Storage Explorer tool can make your life easier to do your Azure Storage Management. Copy – Paste data is a Great and handy feature for Administrators.
Hope this is useful and go try it yourself.


Leave a comment

Running #Dapr in WSL2 Ubuntu 20-04 distro in #WindowsInsider Build 21277 RS and #VSCode

Working with Dapr in WSL2 Remote VSCode and Ubuntu 20.04 distro

Dapr is a portable, event-driven runtime that makes it easy for any developer to build resilient, stateless and stateful applications that run on the cloud and edge and embraces the diversity of languages and developer frameworks.

 

Developer language SDKs and frameworks

To make using Dapr more natural for different languages, it also includes language specific SDKs for Go, Java, JavaScript, .NET and Python. These SDKs expose the functionality in the Dapr building blocks, such as saving state, publishing an event or creating an actor, through a typed, language API rather than calling the http/gRPC API. This enables you to write a combination of stateless and stateful functions and actors all in the language of their choice. And because these SDKs share the Dapr runtime, you get cross-language actor and functions support.

SDKs

Dapr in Standalone version.

I’m using Windows Insider Build version 21277-RS with Docker for Windows Edge and Visual Studio Code.

Docker for Windows Edge Version Running.

Because Docker for Windows Edge support WSL2 Engine and Visual Studio Code too, brought me to an idea to build dapr into Ubuntu 20.04 WSL Distro on my Windows Insiders 21277 RS version on my Surface Book 3. There for you must activate the WSL2 integration with my default WSL distro Ubuntu-20.04.

Docker for Windows WSL 2 Integration.

In your Ubuntu-20.04 WSL2 version, you can install Dapr into your linux distro, more information you find here on dapr.io

Microsoft Windows Subsystem for Linux Installation Guide for Windows 10 with all kind of Linux distro’s 

Dapr init ( in the Ubuntu-20.04 WSL2 Linux distro )

Here you find the Dapr dev environment installation types for Dapr init, I did the standalone version. Dapr makes then the following containers :

Dapr Containers.

Then we have the following running :

  • Dapr Dashboard
  • Zipkin

Zipkin is a distributed tracing system. It helps gather timing data needed to troubleshoot latency problems in service architectures. Features include both the collection and lookup of this data.

Zipkin Traces

Dapr Dashboard

Now we have Dapr running in the WSL2 Ubuntu-20.04 distro, you can use Visual Studio Code on Windows Insiders using Remote WSL and work with your favourite dapr SDK like the list above 😉

Dapr Extension in VSCode

From here you can work with your dapr application.

In this guide dapr is running with Docker containers, but you can also install it on Kubernetes or K8s, AKS, Azure any where, see this overview :

Dapr with Kubenetes Containers.

Dapr Overview.

Important Note : Dapr is now production ready with version 1.0 ! Developers, DevOps, AzOps, you can start with it and Build and Test your own microservices and Container apps !  Hope you are having fun with it too 😉

 

 


Leave a comment

Windows Admin Center and The Container Extension #WAC #Containers #Winserv

Windows Admin Center

Windows Admin Center is a locally deployed, browser-based app for managing Windows servers, clusters, hyper-converged infrastructure, as well as Windows 10 PCs. It comes at no additional cost beyond Windows and is ready to use in production. If you want to work more secure with Windows Server Core images without the GUI or with Microsoft Azure Stack HCI operating system then Windows Admin Center is the tool for the Administrator to manage your workloads on-premises or in the Cloud. You have one web based interface for all your Server consoles (MMC) to manage your Hybrid Datacenter.
Here you can read more about Microsoft Windows Admin Center and download the free software.

Get the best with Windows Admin Center Extensions

Windows Admin Center and the Container Extension

When you have installed Microsoft Windows Admin Center you can configure the settings and extensions for your environment. When you want the benefits of the Microsoft azure Cloud Services you can configure your Azure subscription and add the extensions to your Windows Admin Center. There are also Third Party extensions like Dell, DataOn, Fujitsu and more.
Here you find more information about how extensions work.

Container Extension

In the following step-by-step guide we will work with the Container Extension of Windows Admin Center on a Windows Server 2019. You have already added the server in WAC and installed the Container extension. In my MVPLAB.CLOUD is that Windows Server 2019 datacenter Starship01.mvplab.cloud. When you open the server you will come in the Overview of the Windows Server:

Click on Containers.

Click on Install for the Docker installation on Starship01.mvplab.cloud.

This will install Docker on the Windows Server 2019 and reboot when it’s ready to use for Containers. From this moment you can work with Windows Containers on the host via Windows Admin Center.

Remote Desktop in Windows Admin Center, the docker host is installed with the Windows Filter by default.

When you want to use Docker Linux Containers with Windows Server 2019 host, you have to configure the Linux kit LCOW with a distro on the host. More info here

Containers on Starship01.mvplab.cloud

To start with containers you can create your own, or pull an image from Docker Hub with Windows Admin Center. In my case I pull Windows Server 2019 ltsc with IIS image.

mcr.microsoft.com/windows/servercore/iis  (Image)

windowsservercore-ltsc2019 (Tag)

Click then on Pull.

Select your image and click on Run.
Give your Container a name and set your settings.

Click on Run.

Click on Containers tab and you will see your running Container

More details you see the IP-Address of the Container.

IIS is running on Windows Server 2019 ltsc in a Docker Windows Container.
That was easy right 😉

Making your Own Docker file with Windows Admin Center Container Extension

When you have your own Github repository with your software, you can make your own docker file and make a docker image on your host for deployment. To show this I have used this sample on Microsoft docs, but you can clone also a github repository and copy the dockerfile on the host.

I copied the dockerfile on the host C:\BuildImage.

—————

# Sample Dockerfile

# Indicates that the windowsservercore image will be used as the base image.
FROM mcr.microsoft.com/windows/servercore:ltsc2019

# Metadata indicating an image maintainer.
LABEL maintainer=”jshelton@contoso.com”

# Uses dism.exe to install the IIS role.
RUN dism.exe /online /enable-feature /all /featurename:iis-webserver /NoRestart

# Creates an HTML file and adds content to this file.
RUN echo “Hello World – Dockerfile” > c:\inetpub\wwwroot\index.html

# Sets a command or process that will run each time a container is run from the new image.
CMD [ “cmd” ]


Here is the Microsoft docs website

Image Creation in progress

New Image Created with Windows Admin Center

Running your Own Container image

Container “Hello World – Dockerfile” running

Conclusion :

In Windows Admin Center comes ITpro world and DevOps world Together in One web based console like with the Container extension. Microsoft is developing really fast in Windows Admin Center to get all the right Feature for ITPro, DevOps and SecOps Administrators in one place. Awesome are the Windows Admin Center Extensions, developers makes these better and better to do the job for Administrators 🚀
Windows Server 2019 Core and Azure Stack HCI are Operating systems without a GUI, and with Windows Admin Center they are really good to manage, update and keeping in control of security.
I like Windows Admin Center a lot and it Rocks for managing your hybrid Datacenter 😉

Send your comments and feedback via Microsoft GitHub repo by opening a new issue for the Container Extension. Follow @vrapolinario on Twitter

 

You can Follow Windows Admin Center here on Twitter : @servermgmt


Leave a comment

Start your DevOps pipeline in the Azure Cloud

This blogpost can support your DevOps journey to make your Continuous Integration and Continuous Delivery (CI CD) for companies and or customers.

What is DevOps?

People, Process, and Technology to continually provide value to customers.

While adopting DevOps practices automates and optimizes processes through technology, it all starts with the culture inside the organization—and the people who play a part in it. The challenge of cultivating a DevOps culture requires deep changes in the way people work and collaborate. But when organizations commit to a DevOps culture, they can create the environment for high-performing teams to develop.

My name is James van den Berg and I’m a MVP in Cloud and Datacenter Management on my DevOps journey as an IT Infrastructure Guy managing datacenters on-prem and in the Microsoft Azure Cloud. Today It’s not only a Virtual Machine or a Website to deploy for your customers, it’s much more then that like :

  • Time to market, deploy your solution fast without waiting on dependencies because you automated your process with a CI CD Pipeline.
  • Security and Monitoring to keep you in Controle.
  • Working together with different Teams who are each responsible for a part of the solution.
  • The complete DevOps Pipeline must be Compliant

Here you can start with Azure DevOps on Microsoft Learn platform.

Read More on the Microsoft Tech Community about the step-by-step guide, you will see how easy it can be to Build your own first pipeline!


Leave a comment

#Microsoft Build 2020 Virtual Event May 19-20-21 Build your Schedule Now! #MSBuild #MVPBuzz

Microsoft Build 2020

Choose from 48 hours of continuous content to create your own digital event experience. Registration is free and is required to get full, interactive access to the digital event. Here you can register for Microsoft Build 2020 Virtual Event

The Session Catalog is Live ! Build your own Schedule here 

With 30+ Community talks, learning sessions, and skill-building activities exploring Minecraft, MakeCode, Visual Studio, AI, Azure, and more, there is something here for every student and every level of experience!

Check out the full list here or search by keyword to add lessons to your schedule.

Don’t miss this Awesome Event 👍😎🚀


Leave a comment

Deploy a 10 – Node Azure Service Fabric Standalone Cluster #microservices #Containers

Azure Service Fabric Standalone Cluster

Earlier I wrote a blogpost about Microsoft Azure Service Fabric Standalone Cluster for Dev testing.
This was 5 – Node Azure Service Fabric Cluster locally installed, but now I like to have a bigger ASF Cluster on my
Windows Server 2019 for testing with Visual Studio.

When you have downloaded the Microsoft Azure Service Fabric SDK into a directory

Here you see the JSON Cluster config files

I used the same JSON template for deploying a Azure Service Fabric Standalone Cluster :

Creating Cluster but with a Changed JSON Template.

Here you find the 10 – Node Azure Service Fabric Cluster Config file on Github

10 – Node Microsoft Azure Service Fabric Standalone Cluster for Dev Testing

Important : Use this Azure Service Fabric Standalone Cluster only for Learning and testing and not for production!

Here you find more information and documentation about Azure Service Fabric for Production.


Leave a comment

Microsoft Azure Service Fabric Standalone Cluster for Testing #microservices #Containers #Apps

Microsoft Azure Service Fabric standalone

Azure Service Fabric is a distributed systems platform that makes it easy to package, deploy, and manage scalable and reliable microservices and containers.

To build and run Azure Service Fabric applications on your Windows development machine, install the Service Fabric runtime, SDK, and tools. You also need to enable execution of the Windows PowerShell scripts included in the SDK.

I have installed the latest version :

  • Service Fabric SDK and Tools 4.1.409
  • Service Fabric runtime 7.1.409

here you find more information about installing Azure Service Fabric Standalone version for testing
I have installed the Azure Service Fabric Cluster on my Windows10 Machine for testing only.

When you want to great your own Azure Service Fabric Cluster for Production, you have to prepare your self and making a plan before you build.

When you have your Azure Service Fabric Standalone Cluster running, you want to deploy your microservices, apps or containers on it and test your solution. In the following steps I deploy with Visual Studio a Web App to Azure Service Fabric Cluster Standalone version 7.1.409

Here is a Github Sample for Azure Service Fabric.

git clone https://github.com/Azure-Samples/service-fabric-dotnet-quickstart

Here you have your Clone from Github.

To deploy this App to the Azure Service Fabric Cluster we use Microsoft Visual Studio

Once the application is downloaded, you can deploy it to a cluster directly from Visual Studio.

  1. Open Visual Studio
  2. Select File > Open
  3. Navigate to the folder you cloned the git repository to, and select Voting.sln
  4. Right-click on the Voting application project in the Solution Explorer and choose Publish

Click on Publish.

Select connection Endpoint Local Cluster and click on Publish.

The Web App is Published to the Azure Service Fabric Standalone Cluster.

When you open the Azure Service Fabric Explorer you will see your App Running

This sample is for testing only and is not secure for production, just to learn how it works 😉

Of course you can also deploy Containers with Visual Studio to your Azure Service Fabric Standalone Cluster.

Deploying Service Fabric Container via Visual Studio.

More Azure Service Fabric information

Here you find the Azure Service Fabric documentation

Here you find the Microsoft Azure Service Fabric website

Here you find the Azure Service Fabric Tech Community Blog

Happy Testing your Apps, microservices, and Containers.

Join the Containers in the Cloud LinkedIn Community Group

 


Leave a comment

Microsoft Azure Monitor Overview #Cloud #Analytics #Hybrid #AzOps #Azure

Microsoft Azure Monitor

Monitor, diagnose, and gain insight into the performance and availability of your applications and services with Azure Monitor. In this video, you’ll learn how to use Azure Monitor to collect, analyze and act on telemetry from your cloud and on-premises environments.

Learn how to create time series charts of platform and resource metrics for visualization and analysis with Azure Monitor. Start in Azure Monitor to view metrics across multiple resources or start directly from individual resource blades. You will also learn how to add metrics charts to dashboards in the Azure portal for real-time monitoring and shared access across teams.

In this video, learn about action rules and how you can use them to configure actions and notifications for multiple alerts at scale across a subscription, resource group, and target resource.

In this video, learn how alerts enable you to proactively identify and address issues before it impacts the users of your system. Alerts are created on performance and availability data and can be associated with user-defined actions and notification mechanisms.

In this video, learn how to use source map support in Azure Monitor Application Insights to improve the diagnosis of client-side JavaScript errors. Source maps can be used to unminify call stacks found on the Application Insights end to end transaction details page.

Here you find more information about Microsoft Azure Monitor:


Microsoft Azure Monitor Documentation 

 

Get Started with Microsoft Azure Monitor

Follow Azure Monitor on Twitter 

Microsoft Azure Monitor & Security for Hybrid IT Community Group on LinkedIn

Keep in control of IT with Microsoft Azure Monitor