Docker meetup 2012106: Introduction à Rancher
-
Upload
rachid-zarouali -
Category
Technology
-
view
286 -
download
2
Transcript of Docker meetup 2012106: Introduction à Rancher
PRESENTATION:Rachid Zarouali
Responsable SI
Synolia: intégrateur solutions E-Commerce/CRM/BI
twitter: @xinity
3
RANCHER:Developpé par RancherLabsOutil de pilotage d'infrastructure Docker100% OpenSourceProduction ready depuis la Version 1.2Version "entreprise" bientôt disponible
4
VUE D'ENSEMBLE:Modulaire:
UI: WebApp d'administrationrancher-compose: Cattle: Orchestration interneAPI REST
Mode: Serveur<->Agent(s)Support de Mesos/Kubernetes/SwarmSupport des principaux IaaS/PaaS
Integration de docker-machine
5
FONCTIONNALITÉSHigh Availability (DB mysql externe)RBAC (envionnement uniquement)Rancher Catalog (public ou privé)Rolling UpgradeRancher Services (DNS, Metadata, ....)HealthCheckAutoScaling
8
HIIGH AVAILABILITYActif/actifNécessite :
2 node server minimumune DB Mysql externe
Attention au sizing Mysql!
50 connexion/server2Go de RAM
9
CONTRÔLE D'ACCÈSGithubActive DirectoryLDAPSHIBBOLETH (v1.2)Compte locaux (Mysql)Environnement uniquement
AdminUser
10
RANCHER CATALOGRéférentiel d'application / stack applicative
dépot git structuré
2 formes disponibles par défaut:
Certifié rancherCommunity
S'appuie sur {docker,rancher}-compose
11
RANCHER CATALOG ├── traefik │ ├── 0 │ │ ├── docker-compose.yml │ │ ├── rancher-compose.yml │ │ └── README.md │ ├── 1 │ │ ├── docker-compose.yml │ │ ├── rancher-compose.yml │ │ └── README.md │ ├── 2 │ │ ├── docker-compose.yml │ │ ├── rancher-compose.yml │ │ └── README.md │ ├── 3 │ │ ├── docker-compose.yml │ │ ├── rancher-compose.yml │ │ └── README.md │ ├── 4 │ │ ├── docker-compose.yml │ │ ├── rancher-compose.yml │ │ └── README.md │ ├── catalogIcon-Traefik.svg │ └── config.yml
12
ROLLING UPGRADE
Stack applicative uniquementUpgrade "safe"Downgrade/Rollback possibleBlue/green deployment
https://botleg.com/stories/blue-green-deployment-with-docker/
13
AUTOSCALING
Répartition dynamique des servicesStack / Catalog uniquementS'appuie sur rancher-compose/!\ ne pas utiliser à haute charge /!\Scaling manuel pour tout autre "service"
14
RANCHER SERVICES
Ensemble de services internes / externesSimplifient le déploiement / administrationDNSIPSEC (overlay network) LBHealthCheckServeur de metadata
15
INSTALLATION
Linux (Kernel 3.10+)RancherOSCoreOSVMware photon/!\ RHEL/Centos /!\
devicemapper loopback
16
INSTALLATION (BIS)manuellement
docker run -d --restart=unless-stopped -p 8080:8080 rancher/server
Receipt Ansible / Salstack GCE:
$ gcloud compute instances create rancher-server \ --image-family coreos-beta \ --image-project coreos-cloud \--machine-type n1-standard-1 \--scopes useraccounts-ro,storage-rw,logging-write,monitoring-write,service-management,service-control,compute-rw,cloud-platform
$ gcloud ssh core@rancher-server
$ docker run -d --restart=unless-stopped -p 8080:8080 rancher/server
17
FOLLOW THE RULES !!!
N°1 : sur le serveur en production, d'agent tu n'installera point!
N°2 : Une DB Mysql externe tu deploiera, la HA tu activera !
N°3 : L'authentification par défaut tu configureras !
18
MONITORING:intégré
cpu / ram / disque / network
metric graphite ( mode push )
mode push (api non documentée)
applications tierces:
cadvisorprometheus exportercollectd docker plugin
External services (sematext / DataDog ...)
19
KUBERNETES INTEGRATION1 node minimum ( minikube like )deploiement automatiqueRancher Catalog spécifique (pauvre)s'appuie sur les Rancher ServicesKubernetes Dashboard KO :(
24
MESOS INTEGRATION3 nodes minimumDéploiement automatique
( un peu douloureux ! )
s'appuie sur les Rancher ServicesMesos Marathon disponibleCatalog Marathon KO (DCOS Only)
26