Add defense

This commit is contained in:
nemunaire 2014-09-02 18:22:11 +02:00
parent c3c05e2f38
commit 3dbbbe16e7
5 changed files with 205 additions and 7 deletions

View File

@ -21,7 +21,7 @@
<documents written_in="fr">
<slides name="slides">
<slides name="defense">
<date>2014-09-04T14:45</date>
</slides>

44
slides/Makefile Normal file
View File

@ -0,0 +1,44 @@
DOCNAME = defense
TARGET = defense.pdf
RM ?= rm -f
MPP = perl -I../mpp ../mpp/mpp
MPPFLAGS =
PANDOC = pandoc
PANDOCFLAGS = --latex-engine=xelatex --listings --toc --no-tex-ligatures --normalize --slide-level=2 -M lang=frenchb
BUTLER = perl -I../butler/src ../butler.pl
BUTLERFLAGS = --docname=${DOCNAME} --xml=../internship.xml
LATEX = xelatex
LATEXFLAGS = -halt-on-error -no-shell-escape
DEPS := ../internship.xml $(shell ${MPP} --list-includes ${TARGET:.pdf=.md})
all: ${TARGET}
assistant: MPPFLAGS += --assistant
assistant: all
clean:
${RM} ${TARGET}
${TARGET}: ${DEPS}
.md.mppmd:
${MPP} ${MPPFLAGS} $< > $@
.mppmd.tex:
${PANDOC} ${PANDOCFLAGS} -t beamer --template=../templates/nemu/beamer/template.tex -o $@ $<
#.mppmd.maintex:
# ${PANDOC} ${PANDOCFLAGS} -t latex -o $@ $<
#.maintex.tex:
# ${BUTLER} ${BUTLERFLAGS} --main=$< > $@
.tex.pdf:
${LATEX} ${LATEXFLAGS} -jobname=${@:%.pdf=%} $<
${LATEX} ${LATEXFLAGS} -jobname=${@:%.pdf=%} $< >/dev/null
${RM} ${@:.pdf=.aux} ${@:.pdf=.log} ${@:.pdf=.out} ${@:.pdf=.toc}
.SUFFIXES: .md .mppmd .maintex .tex .pdf

134
slides/defense.md Normal file
View File

@ -0,0 +1,134 @@
% Soutenance de stage de fin d'études
% Pierre-Olivier Mercier
% Jeudi 4 septembre 2014
# Novaquark
## L'entreprise
* Startup fondée en janvier 2014 ;
* fondée par Jean-Christophe Baillie ;
* de 4 collaborateurs à 14 aujourd'hui ;
* actuellement dans l'incubateur Agoranov.
%%image(../templates/nemu/images/nq-high.png)
## L'objet
%%image(../report/img/dual-dark.png, 0.5)
* Jeu-vidéo MMO ;
* monde unique, éditable, rendu par *Voxel* ;
* économie, gameplay émergent : où les joueurs construisent leur propre jeu via leurs interactions.
## Visuel du jeu
TODO image voxel + visuel du jeu
# Le stage
## Présentation du sujet
* Travail avec l'équipe en charge du serveur ;
* mise en place des bases de l'infrastructure de mise à l'échelle :
* virtualisation, *cloud computing* ;
* relevé de métriques,
* déploiement centralisé,
* sécurité du cluster ;
* tests de montée en charge du serveur :
* déploiement automatique,
* dans les nuages.
# Travail effectué
## États de l'art
### Plates-formes d'infrastructure en tant que service (IaaS)
* Amazon Web Services Elastic Cloud 2 ;
* Google Compute Engine.
### Outils de déploiement automatique
* Ansible, Chef, Puppet ;
* Capistrano, Fabric, ...
### Solutions de virtualisation
* Linux Containers (LXC), Docker ;
* Oracle VirtualBox, Linux KVM.
## Réponses à des problématiques
### Chat en jeu
* XMPP : jabberd*, ejabberd, prosody, ...
* IRC, Zephyr, ...
### Authentification centralisée
* LDAP : centralisation ;
* Kerberos : jeu/serveurs et services en jeu (chat, ...).
### Utilisation du serveur par les développeurs
* Machine virtuelle personnelle ;
* interface de gestion simplifiée.
## Conception de recettes de déploiement
### Via Ansible
* Serveur de monitoring ;
* serveur de jeu ;
* serveur de conteneurs génériques.
### via Docker
* Site web du jeu ;
* forum ;
* supervision ;
* LDAP.
## Programme de relevé de métriques système
### sysinfo_influxdb
* Projet libre sous licence CC0 ;
* disponible sur GitHub ;
* écrit en Go (*linkage* statique) ;
* utilise la base de données InfluxDB.
### Métriques relevées
* Utilisation du CPU ;
* mémoire disponible ;
* bande passante utilisée ;
* entrées/sorties disques ;
* charge, *uptime*.
## Tests de montée en charge
### Sur Amazon Web Services EC2
* Déploiement de machines virtuelles ;
* analyse des résultats : métriques, goulots d'étranglements ;
* profiling du code en charge.
# Conclusion
## Conclusion
### J'ai pu travailler:
* avec des notions avant-gardistes : problèmatiques d'un monde unique réparti ;
* sur des technologies d'avenir émergentes : virtualisation légère, conteneurs applicatifs ;
* sur des sujets récurents : *cloud computing*, déploiement, sécurité ;
* pour et avec des projets libres : Ansible, InfluxDB, SBT, ...

View File

@ -1,6 +1,7 @@
\documentclass[$if(fontsize)$$fontsize$,$endif$$if(handout)$handout,$endif$$if(beamer)$ignorenonframetext,$endif$]{$documentclass$}
\usepackage{tikz}
\usetheme{Darmstadt}
\setbeamercolor{structure}{fg=black, bg=white}
\setbeamercolor{structure}{fg=black, bg=black}
\setbeamercovered{dynamic}
\setbeamercolor*{author in head/foot}{parent=palette tertiary}
@ -10,6 +11,23 @@
\setbeamercolor*{section in head/foot}{parent=palette tertiary}
\setbeamercolor*{subsection in head/foot}{parent=palette primary}
\pgfdeclareimage[height=\the\paperheight]{backgroundImage}{images/background}
\setbeamertemplate{background}{
\begin{tikzpicture}
\useasboundingbox (0,0) rectangle (\the\paperwidth, \the\paperheight) ;
\pgftext[at=\pgfpoint{-70pt}{0cm},left,base]{\pgfuseimage{backgroundImage}} ;
\ifnum\thepage>0\relax%
\fill[white, opacity=0.4] (0cm, 0cm) -- (0cm, 1.0\paperwidth) -- (1.0\paperwidth, 1.0\paperwidth) -- (1.0\paperwidth, 0cm) ;
\fi
\end{tikzpicture}
}
\setbeamertemplate{blocks}[rounded][shadow=false]
\setbeamertemplate{footline}
{
\leavevmode%
@ -117,6 +135,8 @@ $if(verbatim-in-note)$
$endif$
$if(tables)$
\usepackage{longtable}
\setmainfont[Ligatures=Common]{LinBiolinum}
% These lines are needed to make table captions work with longtable:
\makeatletter
\def\fnum@table{\tablename~\thetable}
@ -184,17 +204,17 @@ $if(title)$
\title{$title$}
$endif$
$if(author)$
\author{$for(author)$$author$$sep$ \and $endfor$}
\author[$for(author)$$author$$sep$ \and $endfor$]{$for(author)$$author$$sep$ \and $endfor$\newline\scriptsize{sous la direction de M. Jean-Christophe Baillie}}
$endif$
$if(date)$
\date{$date$}
$endif$
\pgfdeclareimage[height=3.4cm]{assistant-logo}{images/assistants}
\institute{\pgfuseimage{assistant-logo}}
\logo{\includegraphics[scale=0.1]{images/epita}}
\setbeamertemplate{title page}[default][colsep=-4bp,rounded=true]
\pgfdeclareimage[width=\textwidth]{nq-logo}{images/nq-high}
\institute{\pgfuseimage{nq-logo}}
%\logo{\includegraphics[scale=0.1]{images/background}}
\begin{document}
$if(title)$

Binary file not shown.

After

Width:  |  Height:  |  Size: 528 KiB