I recently attend the Microsoft Ignite UK Tour, which was a two day event in the London Excel arena. An event focused on Microsoft’s Azure and Office 365 offerings, consisting of 100+ deep-dive sessions and workshops along with 350+ experts!
- Deploying your application faster and safer
- Protecting Apps and data on Azure
- Selecting the right data storage strategy for your cloud application
- Leveraging automation to power Microsoft Threat Protection
- Investing in Serverless: less servers, more code
- Integrated SecOps and incident response with Microsoft Threat Protection
- Hosting and scaling service-based applications on Azure
- Diagnosing failure in the Cloud
A vast range of talks attending covering numerous areas of Microsoft Azure, I will summarise into some sections
DevOps – what is it?
My first talk included this question in the presentation, what really is DevOps?
- A job title?
- Combination of Developers and Ops?
- Does it mean the ability to develop faster?
- Less human error?
Yes to all this!
DevOps is a combination of all of the above allowing the increase of velocity, ability to reduce downtime and human error. Combining all this into the projects growth from design through to development and further will lead to a better lifecycle of the product.
Statististics to reflect the use of DevOps:-
- 46x development frequency
- Faster time to market
- 7x lower change failure rate
- 2,555x faster lead time for changes
- Increased revenue
- 2,604x faster mean time to recover
Source: 2018 Accelerate: State of DevOps: Strategies for a New Economy.” N. Forsgren, J. Humble, G. Kim. DevOps Research and Assessment (DORA)
DevOps is the union of people, process, and products to enable continuous delivery of value to our end users.
Donovan Brown – Microsoft
Using Azure DevOps to assist you, a great service offered by Microsoft to build workflows and pipelines to deploy your applications.
“Plan smarter, collaborate better and ship faster with a set of modern dev services.”
Azure DevOps has numerous tools to assist you
- Azure Pipelines:- Build, test and deploy CI/CD
- Azure Repos – Get unlimited cloud-hosted private Git repos
- Azure Boards – Deliver value to users faster using proven agile tools
Nearly everything you want to deploy will consist of sort of storage, have you a storage strategy for this? Reasons to implement a strategy
- Allowing better pace for new products and features
- Maintain security and strategy posture
- Increase system performance
- Decrease costings on data storage
There are numerous storage services available on Azure including:
Disks – Managed disks or VHDs in a Storage Account, choices of standard HDD, premium SSD etc
Files – Azure Files is an offering that allows the configuration of SMB File Share Managed by Azure
Blobs – Scalable, rest based cloud object storage
Tables – Ability to auto-scale, NoSQL store, very inexpensive!
Queues – Created at scale for Cloud Services
How do you chose a data storage method?
You need to decide on a number of factors including
Kind of data?
Properties of data?
A handy tutorial on how to choose a data approach in Azure
A modern cloud search as a service capability for your website or application, allowing you to quickly tune search results to create specific models that can tie in with search results ending in specific business goals.
- Multi-language support
- Proximity search
- Customizable scoring models
The evolution of applications and the cloud
On Premises -> IaaS -> PaaS -> Serverless
Azure Functions – This resources allows you to execute code based on events that you specify, no need to pay for an IaaS VM for a continuous period, pay on demand!
Functions by the numbers
- Over 40,000 active users
- Over 275,000 apps
- Over 2.9 Billion daily runs
Read my recent blog on Azure Functions
“When we can develop a solution in a week using Azure Functions versus four months using traditional methods, that represents a drastic improvement in our ability to solve business-critical problems”
Hristo Papazov – Relativity
If you need write stateful functions in a severless environment, there is an extension of Functions called Durable functions. This extension will manage state, checkpoints and restarts for you.
An example of using durable functions would be Function chaining – ability to execute functions on sequence in a particular order
Other Serverless resources provided by Azure
Logic Apps – Design workflows and orchestrate processes
Event Grid – Manage all events that can trigger code
Further info on Azure Serverless Computing https://azure.microsoft.com/en-gb/overview/serverless-computing/
Why use Azure Kerbernetes Server(AKS)?
- Microsoft managed
- Control plane free of charge
- Automated upgrades and patches
- Secured and hardened
- Easy & auto cluster scaling
When to use AKS?
- Want to run Linux based workloads in containers
- Wanting to use Kerbernetes but not build & manage the infrastructure
- Ability to run modern micro-transactions architectures
- Have fine grained control over compute, storage & network
- Remain framework, platform & stack agnostic
Azure Service Fabric
An azure offering that is a distributed systems platform that makes it easy to package, deploy and manage scalable and reliable microservices and containers.
Artifical Intelligence (AI)
It was good to hear how Microsoft use AI to assist with Machine Learning resulting in the creation of a number of services including Azure Cognitive Service
Azure Cognitive Services include:
- Vision – Image Tagging, Thumbnails
- Speech – Speech To Text
- Language – Text translation, up to 60+ languages
- Knowledge – Customised decision making
- Search – Visual search with object detection
Microsoft AI Platform
Microsoft also offer the ability to take Machine Learning Models offline onto your device using xmarin, a good demo of this was shown on stage. Machine learning on a mobile device in offline mode using the offline model!
That was fun!
A great event run by Microsoft, I look forward to the next one! Was also good to catchup with some people I speak to often on Twitter! – thanks to @kainossoftware for sending me!