Parmi les nombreuses bonnes pratiques que l'on peut adopter dans le Cloud, il en est deux qui reviennent fréquemment :
- Scalability : la capacité de mise à l'échelle, de faire coller la taille de l'infrastructure au besoin
- Reliability : la possibilité d'améliorer la disponibilité d'un service en s'organisant pour pouvoir faire face à tout type de défaillance
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
Tour de France Azure PaaS 7/7 Bonnes pratiques
1. Tour de France
Azure PaaS
Lyon 3 Avril, Issy-les-Moulineaux 5 Avril, Lille 10 Avril,
Bordeaux 12 Avril, Toulouse 24 Avril
Aix-en-Provence 26 Avril, Nantes 3 Mai
3. Tour de France Azure PaaS
Démarrer sur Azure
Exécuter une application
Stocker des informations
Sécuriser la solution
Accélérer avec le DevOps
Ajouter de l’intelligence
Bonnes pratiques
5. Cloud
service
realities
SOFTWARE WILL HAVE BUGS
Rigor on change management & safe deployment,
monitoring, detection and mitigation
HARDWARE WILL FAIL
Engineer the software to protect against this
HUMANS WILL MAKE MISTAKES
we are continuously investing in automation
6. CUSTOMER
Balance of responsibility
Cloud architectures
Design for high-availability
Leverage Microsoft resources
MICROSOFT RESOURCES
Service resiliency guide
Cloud dev patterns & practices
Proactive and reactive support
CLOUD PLATFORM RELIABILITY
Availability, change orchestration, monitoring, communications, recommendations
7. Balance of responsibility
Data governance &
rights management
Responsibility SaaS PaaS IaaS On-prem
Client endpoints
Account & access
management
Identity & directory
infrastructure
Application
Network controls
Operating system
Physical network
Physical datacenter
CustomerMicrosoft
Physical hosts
Balance of control and responsibility
depends on the category of the service
MOVE-IN READY
Prepackaged solutions bundled with existing
services
Use immediately with minimal configuration
SOME ASSEMBLY REQUIRED
Existing services are a starting point, with additional
configuration for a custom fit
BUILD FROM THE GROUND UP
Building blocks, create your own solution or apps
from scratch
13.
In-VM Scheduled
Events
Surfaces information regarding
upcoming maintenance or user
initiated events (for example, reboot)
so your application can perform
preventive tasks and minimize the
effect of the event.
Examples of operations after
notification include completing (or
canceling) in-flight transactions,
reassigning other tasks to other VMs
in the cluster, or removing the VM
from a load balancer pool.
Available for all Azure Virtual
Machine types including PaaS and
IaaS.
https://docs.microsoft.com/en-us/azure/virtual-
machines/virtual-machines-scheduled-events
17. from one place – the Azure portal
Azure Advisor Azure Resource HealthAzure Monitor
Personalized
recommendation guide
helping you follow best
practices
Optimize across four areas -
high availability, performance,
security, and cost
Diagnose and get support
when an Azure issue impacts
your resources
Guides you through solutions
to mitigate issues with Azure
resources
Native monitoring and
diagnostics for all your Azure
resources
Monitor, diagnose, alert, and
be notified of events in your
cloud infrastructure
Monitor, optimize and diagnose
YOUR AZURE RESOURCES
http://aka.ms/azureresourcehealth/http://aka.ms/azureadvisor
/
https://aka.ms/azmonitor/
At scale, assume that-
Hardware will fail
Humans will make mistakes
Software will have bugs
When operating in the cloud, we focus efforts on driving human errors and hardware issues into the software. This leads to our design principle-
* “If we can’t correct it in the software at scale, it wont operate at the level that our customers would expect.”
When delivering the service, we take the following steps to mitigate impact of errors:
Anytime there is a hardware error we look at how we can engineer the software to protect against the error
Anytime an operator makes a mistake, we look at how we can change that operation and put it into the code limiting the opportunity for the operator to make that mistake again.
All of this work including changes in software and error mitigation are driven using the guiding principle of continuous improvement in software development and design.
Azure Supportability = not in scope of this discussion
The balance of control and responsibility for managing solutions depends on the category of the service. The chart summarizes the balance of responsibility for both Microsoft and the customer.
Developer Support
https://azure.microsoft.com/en-us/support/plans/developer/
Standard Support
https://azure.microsoft.com/en-us/support/plans/standard/
Advanced Support for Partners
https://partner.microsoft.com/en-US/support/advanced-cloud-support
Premier Support for Partners
https://www.microsoft.com/en-us/microsoftservices/premier-support-partners.aspx
Blue are reliability
Black are comms
In-VM Scheduled Events – Public Preview- 4/3
GA ETA 7/1 (John Day)
Régions prenant en charge les zones de disponibilité 2018-03-06
Est des États-Unis 2
Centre des États-Unis
Europe de l'Ouest
France-Centre
Les services Azure qui prennent en charge les zones de disponibilité sont les suivants : 2018-03-06
Machines virtuelles Linux
Machines virtuelles Windows
Jeux de mise à l’échelle de machine virtuelle
Managed Disks
Équilibreur de charge
Adresse IP publique
Stockage redondant dans une zone
Base de données SQL
Resource health is a new service in the Azure Preview portal that exposes the health of Azure resources (e.g. virtual machines, websites and SQL Databases) to help quickly identify the root cause of the problem. Based on the root cause it provides actionable guidance and tooling to solve the issues, including the option to submit a support ticket.
Recommendations on customer best practices based on their configuration (VM, Website, SQL Database, etc.).
Configure Email, SMS or WebHook notifications for Service health or Activity Log events.
Send mail to AzureNotificationsPr@microsoft.com if you would like to participate in the Private Preview
We strive to acknowledge category of service incidents (based on impact), post updates and RCAs in Azure public SHD.
Add managed disks
Simplify availability sets and managed disks
Matrix of cost, complexity and
Safe, Compliant and Secure
Staged rollout through rings of validation
Pause/Resume rollout based on health checks
Access to fresh code early, and ensure app compat just works
all issues that could potentially arise in the prod are caught early.
since they allocate a small footprint of they services in canary, it will help them identify any problems before they are in prod
Principles of deployment: Safe, Compliant and Secure
Safe – Staged rollouts, health checks, pause/resume
Rings of validation - Test, Stage, Pilot, Canary, Prod/Broad/Worldwide
/*AZs within a Region – these are not updated at the same time as well*/
Region pairs - we never update both at the same time
Stop rollout if we see issues based on health checks
Flighting - % of WW (clusters)
This is applicable to both core component deployments and customer deployments
IaaS -> PaaS -> PaaS even more scalable -> Hybrid architecture, step by step
More than one way to do things
Deploy, monitor, adjust, deploy…
I will use the typical phases of the app lifecycle and see how DevOps technology helps each step of the way