Monday, January 22, 2018
You try to find the very very old, yet useful “Classical Publish Settings”, in the new Azure Portal ??
Don’t look further, just so that I can remember, here is the direct URL to get
Then it still works !
Thursday, January 11, 2018
With the recent announcement of an even closer partnership between SAP and Microsoft, I got the fantastic opportunity the visit SAP EBC with my VISEO Top Management and Key Account Managers.
Indeed, as Microsoft Regional Director in charge of the Azure strategy for the group WW, the SAP management welcomed us and congratulated us on the job done in 2017, and challenges us to become again one of the TOP 5 best partner.
Despite I am into innovation and very high tech, I must admit that I was REALLY REALLY REALLY REALLY impressed by the Innovation center (an entire massive floor dedicated to innovation). Here is one of the room where we have a concentrated amount of digital innovation.
And, despite many people will like the Retail showroom, I really much prefer durt and robots, which are my favorite topic : real-time Machine Learning embedded in devices off-line and Instrstrial IoT with OPC UA standards.
We also had a presentation of a very robust, yet Lean, Innovation SAP process !
These sessions was a great source of inspiration and I already for few ideas that made come true !
The entire VISEO board was present along with their Key Accounts Managers… and it’s Microsoft Regional Director
Wednesday, January 10, 2018
This is a very common question that I have. Also this is quite easy for “us” using VSTS for the last 5 years, because VSTS is so spread out, that some people do no know how to add new users into VSTS.
(to see how to create a Microsoft Account, ex-LiveID, see after)
CONTEXT : Without voluntarily enter into details, let’s start by saying that
- VSTS can use your AD (Active Directory) Account, provided you add an ADFS or use your AAD (Azure Active Directory)
- VSTS can use your Office 365 Corporate Accounts (indeed, it is Azure Active Directory behind the scene)
- VSTS can use a Microsoft Account (formally known as liveID, such as @outlook.com, @outlook.fr, @live.com, @live.fr, …)
The first 2 choices are THE recommended solution in terms of security (where you could also add multi-factor authentication to further improve security). Besides, when the user leaves the company, he automatically looses its access to ALL corporates accounts, including VSTS.
The third option is however used as a “hack” to provide quickly access to VSTS without having the pain to go thought the IT department connecting VSTS to the AAD.
Origin of numerous confusions : when mixing the two !!
If you have a Corporate Account say FName.LastName@Viseo.com, you were able to “convert” it into a Microsoft Account (not possible now for many reasons). But now, when you Log In, you have 2 choices !! (as per today, we have 2 portals : new one as default, and a button to switch to the former one. See next).
HOW TO CREATE A Microsoft Account (former LiveID) ?
Here’s an easy way (out of many) :
- Go to any Microsoft portal using MS Account, for instance https://outlook.com or https://onedrive.com …
- Since you don’t yet have a MS Account, you cannot Sign In, so just click “Sign up for free”
- Then “Create a Microsoft Account
- It’s where you have 2 solutions :
AS PER TODAY, we have 2 portals
Switching back to the previous portal using the link at the bottom right
APPENDICES and ADVANCED and LINKS !
Nowadays, Microsoft offers an easy way to Log in. However to try to understand what’s behind the scene, and for the sake of the illustration, let’s force it back to the former portal (so I can document this before it goes away for a simplified version). The former VSTS login portal accepts both MS Account and Corp Account :
When trying to Log in via Visual Studio 2017, we have this popup :
Then VS2017 detects the Login has 2 types : MS Account and Corporate Account. So he asks the question
(notice you can choose a newer interface)
Choose the one that corresponds to you, then enter the corresponding password (ideally, best not to us the same password for the 2 accounts. Because, in one gets hacked – most likely the MS Account as opposed to Corporate Account with MFA)
(notice the button on the Top to switch back to the new portal)
We have MANY CASES
When you use your Corporate Account that is NOT connected to VSTS (i.e. not connected to Azure AD), for example FName.LastName@Total.com, then, when we start entering the Login FName.LastName@Total.com, the portal will check 2 seconds what type of login it is. When we enter the password
|Microsoft Account (ex Personal LiveID)||
Corporate Account (eg. Azure AD, O365)
LINKS from Microsoft
- Read about cleaning up the Azure AD and Microsoft account overlap
- Learn about connecting your VSTS account to an Azure AD tenant
- Learn about the impact to your VS subscriptions when you connect to AAD
- Learn how to bring guest users, either MSA sign-ins or members of external Azure AD tenants, into your Azure AD tenant
- Provide your users guidance on how to rename their personal accounts
Wednesday, January 3, 2018
ScottGu is coming to Paris!! Hurry up to prepare a great 2.5 hours Hands On Lab, on realtime DataScience on Azure IoT Edge!
Register here for the Labs : https://www.microsoftevents.com/profile/form/index.cfm?PKformID=0x3237525abcd
Here for the entire event : https://experiences.microsoft.fr/evenements/technique/azure-red-shirt-dev-tour/#register
Link to the HOL : https://github.com/azugfr/RedShirtTour-IoT-Edge-AI-Lab (made by Artem SHEIKO and Taras CHIEN ; with the contributors : Vincent Thavonekham + Igor Leontiev)
Below is a v1 introduction for the HOL (will be updated iteratively).
1 Introduction and why this Hands On Lab ?
IoT has been around approximately since 2000, and prior to that M2M (Machine to Machine), with sometimes some industrial standards such as OPC and later OPC UA, and sometimes no standards at all and only proprietary protocols.
Before we had :
- Simple Processing
- [Machine A] <=> [Machine B]
- [Machine A] <=> [Machine B] <=> [Machine C] <=> [Machine A] <=> etc…
- [Machine A] <=> [Server/Cloud] <=> [Machine B]
and [Machine C] <=> [Server/Cloud] <=> [Machine D]
where the complex processing is handled by sending the telemetry the Server/Cloud, that will then analyze near-realtime + take decisions + send back actions via network
We notice that sending back and forth the data through the network is not efficient at all (ex. 3D X-Ray Scanners cannot send 2 TB of Data per second to the Cloud for processing).
But today, we are more interested to provide intelligence DIRECTLY into the sensors, on the so-called “Edge” side. Hence, “Edge Computing”
2 Architectural Overview: Let the Edge decide faster and avoid pyramidal decision structure
3 What Azure IoT offer in terms of Edge Computing in one sentence ?
To ease the understanding, one could define a vision statement of the “Azure IoT Edge Computing” Solution such as :
“Design intelligence from PC (manually with Python 2.7.x or using Cognitive Services as a Black Box), deploy THE SAME into the Cloud, and again THE SAME architecture on the Device side !”
4 Overview of the Azure IoT Edge computing
BEFORE starting the Hands on Lab / Tutorials, because the entire process is quite complicated, we will explain, as an overview the end-to-end high level scenario.
In the HOL, we will see that the extensibility allows us to replace the Module “Azure Stream Analytics on Edge device” by another on composed by your Module containing your own Python code, produced by your DataScientific.
4.1 On your PC (as a DataScientist)
- When DataScientists algorithm: Code you Python algorithm on your PC using Azure Machine Learning Workbench, then sends that to Azure, via a Docker Container
- When using the ML model over and over, we will need to monitor and ensure that the model has not shifted beyond a given limit.
- He can perform basically 2 things:
- a Classification (probability to hit this mountain at this speed ?)
- or a prediction (according to the heat, the number of hours used, etc… the 4rth fan will be out of usage in 3 days). And beyond a threshold of 24 hours, send a purchase order of an identical fan and as soon as I got back an internet connection.
4.2 On Azure Side
Use the Azure IoT Hub that your know, and locate the property Azure IoT Hub Edge.
Configure the reports (using Azure TimeSeries Insight)
4.3 On the Edge side
- Install and configure Module with Stream Analytics job for Edge Hub as a Source and Sink (see later explanation)
4.4 On “all sides”: The Fun part !
Now to glue all sides tightly we will start using concepts that can be made easy when compared to Geography for instance. For a second, imagine that you are the President of a country (or God if you prefer!) and you want to reshape entirely the towns/cities. You then have to take into account the following criteria:
1. Each city and town has its own specialty
2. The cities or Towns could be located around the Capital-area, or de-centralized on an island (i.e. far away with lots of time to travel from the capital to the de-centralized location)
3. The cities and towns are connected together through a mesh of roads, each of them has a sign-post telling where the road comes from and where it goes to
Now on Azure IoT Edge Computing, we have :
a. City or Town ó large or small modules with each of them having its specialty
(IoT Hub, near-realtime processing, Cold Storage,
Hot Storage, aggregation, Datascience computation, …)
b. Capital area vs. island ó the Azure IoT modules are located either in the Cloud
(Capital and Centralized decisions), or on the Edge
c. Mesh of roads with sign post ó Azure IoT Edge routes with a description of the
previous module and the next one
5 Conclusion in Azure IoT Edge
When our leg gets burnt, the hurting information do not need to flow back to the brain. By reflex, the leg automatically moves away from the fire.
Indeed, it would have taken too much time for the leg to send the information to the brain, wait for a decision, and sends the conclusion back to the leg. Rather, the leg relies on local decision for “simple” actions to be taken.
That’s the entire idea of Azure IoT Edge: Have centralized and managed decision in the Cloud, and we rely on local devices that could take decisions, and report it back to the Cloud to carry on further complex decisions.
6 Deeper explanation
Now that you understood, let’s go deeper into the concepts:
- Each module is like a module is like Docker Container, hence we have the image and its “implementation” as “instance”, that is monitored be the Cloud Azure, thanks to a secured agent installed into the Edge
- Now because the complexity is handled mostly by the Cloud, then pushed to the Edge, we have a kind of duplicated information, or call it a “twin” notion.
- These Twins are separated into two types :
- the Module Twins
- and the Device Twins
- Those Twins are necessary and automatically managed by the Cloud behind the scene to hide the complexity of having a Drone working disconnected from the Internet/Cloud and when the Internet is Back, information are synchronized back :
- status (On, Off, …)
- data (Edge contains a micro database)
- commands (upgrade Firmware, etc…)
- Now try coding that using the old fashion way with Assembler or C : How many months or years would that require ? and would that work and the code maintenable ??
Next, I will carry on explaining why Azure IoT Edge is pseudo-complex, but the majority of the complexity is encapsulated behind Microsoft’s technology.
6.1 Why is it so complex ?
In the past, coding a real-time decision making on a Drone, we needed to know well the Intel Chipset and Assembly or C languages. It took a long time and was a tedious and error prone process. I can let you imagine that it was way more complex than the Azure IoT Edge solution. The later offers the following advantages :
- ease the entire ALM process, and perform DevOps with tools that every (good) one knows, such as VSTS-GIT (CB, CT, CD, …)
- secure on both Edge side and on Cloud side (authentication key, X509, SSO, …)
- allow “user friendly” yet powerful code such as Python to be developed an entire IoT+processing+ML system and deploy that (using Docker) all the way to the Edge, via the Cloud that supervises that all. Thus, Microsoft relies on opensource and cross platform technologies that could be ported to any other platform for reversibility needs.
Since we are using a regular Docker, we could extend the features by adding any additional ones.
6.2 What Next ?
- Imagine all this working … with No Internet AT ALL, and with medical regulation constraints, … and even worst … this should work in France with endless crazy regulation ?? Would that be a dream and totally unfeasible ??
- Not so sure : With Azure Stack, we will be able to do that !! https://azure.microsoft.com/en-us/overview/azure-stack/
- Magic ??
- Now imagine, extend all this to SAP and Dynamics365 and with an IoT System without coding anything at all ?? Not possible ??
- It is possible with Azure IoT Central, as SaaS solution !! https://www.microsoft.com/en-us/iot-central
7 FINAL CONCLUSION
Azure IoT offers an entire ecosystem, very rich, open and extensible, from Edge to SaaS, that was build with security and DevOps in mind.
Now it is important to pickup the proper options and design an IoT architecture that suites the needs : that’s the job of IoT & Cloud Enterprise Architects or Cloud Solution Architects.