Sign in
Benjamin Guinebertière
How to configure the firewall and the load balancer in Azure – Comment configurer le pare-feu et le répartiteur de charge dans Azure
MSDN Blogs
>
Benjamin Guinebertière
>
How to configure the firewall and the load balancer in Azure – Comment configurer le pare-feu et le répartiteur de charge dans Azure
How to configure the firewall and the load balancer in Azure – Comment configurer le pare-feu et le répartiteur de charge dans Azure
Benjamin GUINEBERTIERE
18 Sep 2011 3:30 PM
Comments
0
English
Français
A typical Azure application would look like this:
Une application Azure typique ressemble à ceci:
So how do you open ports, decide how the load balancer behaves, and so on? What if you want to open additional ports (other than the HTTP 80 one)?
Mais comment ouvre-t-on des ports, comment décide-t-on du comportement du répartiteur de charge? Comment cela se passe-t-il pour ouvrir d’autres ports que le port 80 en HTTP?
Let’s take as an example, a distributed application that has the following components (Azure roles):
Prenons pour exemple une application distribuée qui a les composants suivants (des rôles Azure):
The following table shows on which ports the different services expose their content, i.e. they are implemented inside the distributed application.
Le tableau suivant montre sur quels ports les différents services exposent leur contenu, c’est-à-dire, comment ils sont implémentés au sein de l’application distribuée.
Web UI
80
Public Web Services
80
Sockets Server
50123
Internal Web Services
8080
From the users perspective, the services must be exposed as this:
Du point de vue des utilisateurs, les services doivent être exposés ainsi:
Web UI
http://sampleapp.contoso.com:80
Public Web Services
http://sampleapp.contoso.com:8080
Sockets Server
TCP sample.contoso.com:50000
Internal Web Services
N/A
Let’s see how this can be configured.
Voyons comment cela se configure.
Remember: Windows Azure Platform is a
platform as a service (PaaS)
, so the configuration is done thru the description of a distributed application.
Souvenez-vous: la plateforme Windows Azure est une
platform as a service (PaaS)
, et donc cette configuration est faite dans la description de l’application distribuée.
As everything is deployed as a single distributed application, the load balancer will expose one DNS name which is somename.cloudapp.net where “somename” is a name you choose when creating a deployment slot (hosted service).
Comme tout est déployé en tant qu’une unique application distribuée, le répartiteur de charge exposera un unique nom DNS qui est somename.cloudapp.net où “somename” est le nom que vous choisissez en créant l’emplacement de déploiement (hosted service).
Then, you just have to create a CNAME entry in your DNS that binds sampleapp.contoso.com to somename.cloudapp.net.
Ensuite, vous devez créer une entrée de type CNAME dans votre DNS qui fait correspondre sampleapp.contoso.com à somename.cloudapp.net.
NB:
NB:
- the load balancer always balances to all the nodes of a role. In order to implement sticky session, you might need a solution as the one
I described earlier
.
- le répartiteur de charge répartit toujours sur tous les noeuds d’un rôle.Pour mettre en oeuvre de l’affinité de session, il peut être nécessaire de mettre en place une solution comme cellle que
j’ai décrite précédemment
.
-
I described earlier
the lifecycle of the virtual IP address corresponding to somename.cloudapp.net.
-
J’ai décrit précédemment
le cycle de vie de l’adresse IP virtuelle correspondant à somename.cloudapp.net.
You also need to define how internal implementations are translated as public end points at somename.cloudapp.net. This is done by describing endpoints in the cloud service definition (.csdef) which is an XML file (1).
On doit aussi définir comment les implémentations internes sont traduites en points de terminaison publics à somename.cloudapp.net. Cela est fait en décrivant les points de terminaison dans la définition de l’application en nuage (.csdef) qui est un fichier XML (1).
Windows Azure will configure the load balancer and the firewalls so that only the declared endpoints can be accessible from one role to another (InputEndpoints and InternalEndpoints) and only InputEndpoints can be accessible from the Internet.
Windows Azure configurera le répartiteur de charge et les pare-feu de façon à ce que seuls les points de terminaison déclarés puissent être accessibles d’un rôle à l’autre (InputEndpoints et InternalEndpoints) et de façon à ce que seuls les InputEndpoints soient accessibles depuis Internet.
Azure storage (blobs, non relational tables and queues) are always accessible from within the distributed application and from the Internet.
Le stockage Azure (blobs, tables non relationnelles et queues) sont toujours accessibles depuis l’application distribuée et depuis Internet.
SQL Azure must be configured. In order for a SQL Azure Server to be accessible from within Windows Azure, a check box must be used:
SQL Azure doit être configuré. Pour que SQL Azure soit accessible depuis Windows Azure, une case à cocher doit être utilisée:
NB:
Load balancing only happens for InputEndpoints, not for InternalEndpoints. But you have APIs to get all internal IP addresses in order to implement you interrole communication. You’ll find 2 examples
in an article about ARR
and
another one about load tests
.
NB:
La répartition de charge n’a lieu que pour les InputEndpoints, pas pour les InternalEndpoints. Mais on dispose d’APIs pour avoir les adresses IP internes de façon à implémenter sa communication inter-rôles. On trouvera 2 exemples
dans un article à propos d'ARR
et
un autre à propos des tests de charge
.
In terms of tooling, when using Visual Studio, you get a graphical user interface that generates the .csdef file:
D’un point de vue outillage, quand on utilise Visual Studio, on a une interface graphique qui aide à générer le fichier .csdef:
Conclusion
As Windows Azure is a PaaS, load balancer and firewall configuration are part of the definition of a distributed application. It is a set of end points which are described in an XML file.
Conclusion
Comme Windows Azure est une PaaS, la configuration du répartiteur de charge et du pare-feu font partie de la description d’une application distribuée. C’est un ensemble de points de terminaison qui sont décrits dans un fichier XML.
Benjamin
(1) a .csdef file is eventually contained in a .cspack file created by the
cspack.exe utility
which comes with Azure SDK.
(1) un fichier .csdef se retrouve en fin de parcours dans un fichier .cspack créé par
l’utilitaire cspack.exe
qui est fourni par le SDK de Windows Azure.
0 Comments
Azure
,
Network
,
PaaS
Leave a Comment
Name
Comment
Please add 6 and 1 and type the answer here:
Post
Blog - News
TechDays
Accélérateur Windows Azure (http://aka.ms/cloud)
Blogs proches:
Windows Azure France
|
Big Data France
Forum des Architectures Applicatives Microsoft sur LinkedIn
Les nouvelles mensuelles de Windows Azure: Le bulletin Azure
Latest important hyperlinks | Les derniers hyperliens importants (twitter)
Tags
.NET Framework 2.0 development
.NET Framework 4.0
AppFabric
archims
Architecture
Azure
BizTalk Server
BizTalk Server 2004
BizTalk Server 2006
Certificates
cloud
Hadoop
IdentityFederation
idmgt
KB
Level-100
Level-200
niveau-100
PaaS
public-cloud
SOA
web
Web Infrastructure
Windows Azure
Windows Azure SQL Database
Options
Blog Home
About
Email Blog Author
Share this
RSS for posts
Atom
RSS for comments
Archive
Archives
April 2013
(2)
March 2013
(1)
December 2012
(1)
November 2012
(1)
October 2012
(3)
September 2012
(2)
July 2012
(2)
June 2012
(2)
May 2012
(1)
April 2012
(1)
March 2012
(5)
February 2012
(2)
January 2012
(3)
December 2011
(10)
November 2011
(6)
October 2011
(7)
September 2011
(6)
July 2011
(7)
June 2011
(1)
May 2011
(9)
March 2011
(5)
January 2011
(2)
December 2010
(5)
November 2010
(4)
October 2010
(3)
September 2010
(3)
July 2010
(6)
June 2010
(2)
May 2010
(3)
April 2010
(3)
March 2010
(4)
February 2010
(7)
January 2010
(7)
December 2009
(1)
November 2009
(1)
November 2008
(1)
October 2008
(1)
September 2008
(1)
December 2007
(1)
October 2007
(1)
September 2007
(3)
August 2007
(1)
July 2007
(1)
June 2007
(1)
April 2007
(1)
January 2007
(1)
December 2006
(1)
September 2006
(3)
April 2006
(6)
March 2006
(2)
July 2005
(1)
May 2005
(1)
April 2005
(2)