zeus
4 years ago
7 changed files with 3438 additions and 672 deletions
@ -0,0 +1,88 @@ |
|||||
|
= Architecture! |
||||
|
Apostolos rootApostolos@swarmlab.io |
||||
|
// Metadata: |
||||
|
:description: Architecture instructions |
||||
|
:keywords: Architecture |
||||
|
ifndef::env-browser[] |
||||
|
:data-uri: |
||||
|
endif::[] |
||||
|
:images-cdn: http://localhost:3080/images |
||||
|
:toc: right |
||||
|
:toc-title: Table of contents |
||||
|
:toclevels: 4 |
||||
|
:source-highlighter: highlight |
||||
|
:no-header-footer: |
||||
|
:nofooter: |
||||
|
:last-update-label!: |
||||
|
:icons: font |
||||
|
:sectnums: |
||||
|
:url_mongodb: https://en.wikipedia.org/wiki/MongoDB |
||||
|
|
||||
|
|
||||
|
|
||||
|
.Architecture |
||||
|
**** |
||||
|
We will be trying to create a swarm implementation that will allow communication between all of the members/nodes. |
||||
|
**** |
||||
|
|
||||
|
== Deploy microservices to a Swarm cluster |
||||
|
|
||||
|
[.float-group] |
||||
|
-- |
||||
|
[.right] |
||||
|
image::./microservices-swarm.png[Docker,650,role=right] |
||||
|
|
||||
|
:hardbreaks: |
||||
|
|
||||
|
{empty} + |
||||
|
{empty} |
||||
|
|
||||
|
:!hardbreaks: |
||||
|
|
||||
|
.microservices architecture |
||||
|
|
||||
|
* a microservice performs a simple task |
||||
|
** communicates with clients or |
||||
|
** other microservices |
||||
|
*** communication mechanisms such as REST API requests or Websocket etc |
||||
|
|
||||
|
[NOTE] |
||||
|
==== |
||||
|
|
||||
|
* Microservices can include any programming language you like |
||||
|
** and with the orchestration tools they are easy to deploy and maintain |
||||
|
|
||||
|
This architecture uses NodeJS and Redis microservices deployed as Docker containers |
||||
|
==== |
||||
|
-- |
||||
|
|
||||
|
|
||||
|
=== Scalability |
||||
|
|
||||
|
You can scale your application by updating the number of replica nodes in the swarm cluster |
||||
|
|
||||
|
[source,yml] |
||||
|
---- |
||||
|
... |
||||
|
deploy: |
||||
|
replicas: 15 |
||||
|
placement: |
||||
|
max_replicas_per_node: 1 |
||||
|
constraints: |
||||
|
- node.labels.region==regio1 |
||||
|
... |
||||
|
---- |
||||
|
|
||||
|
.Segmentation |
||||
|
TIP: Dynamic infrastructure: services can scale up and down without waiting for each other. |
||||
|
|
||||
|
=== Availability |
||||
|
|
||||
|
No single point of failure. |
||||
|
|
||||
|
=== Security |
||||
|
=== Configuration |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
After Width: | Height: | Size: 92 KiB |
File diff suppressed because it is too large
Loading…
Reference in new issue