Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Pablo Fredrikson @pablokbs Meetup 22/11
Slide 2
Slide 2 text
Pablo Fredrikson @pablokbs ● Nerd ● Lead SRE @ Invision ● 12 años con Linux / Software Libre ● 4+ años con Docker ● 2 años con Docker en producción
Slide 3
Slide 3 text
No content
Slide 4
Slide 4 text
Buenos tiempos
Slide 5
Slide 5 text
No content
Slide 6
Slide 6 text
No content
Slide 7
Slide 7 text
No content
Slide 8
Slide 8 text
Buenos tiempos
Slide 9
Slide 9 text
No content
Slide 10
Slide 10 text
No content
Slide 11
Slide 11 text
No content
Slide 12
Slide 12 text
No content
Slide 13
Slide 13 text
No content
Slide 14
Slide 14 text
No content
Slide 15
Slide 15 text
LA NUBE (o la computadora de otro)
Slide 16
Slide 16 text
Auto Scaling Groups (o ASGs)
Slide 17
Slide 17 text
Auto Scaling Groups (o ASGs) ● Deseado/Max/Min ● Reglas Auto Escalamiento ● Launch configuration (script inicio) ● Tags
Slide 18
Slide 18 text
Buenos tiempos
Slide 19
Slide 19 text
No content
Slide 20
Slide 20 text
data "aws_ami" "coreos" { filter { name = "coreos" values = ["coreos/images/hvm-ssd/coreos-${version}*"] } } resource "aws_launch_configuration" "workers" { name = "cluster1-workers" image_id = "{data.aws_ami.coreos.id}" instance_type = "m3.large" user_data = "${my_install_script}" }
Slide 21
Slide 21 text
#!/bin/bash ./install-kubernetes-worker.sh ${kubernetes_version}
Slide 22
Slide 22 text
resource "aws_autoscaling_group" "workers" { name = "cluster1-workers" max_size = 5 min_size = 2 desired_capacity = 4 health_check_type = "ELB" launch_configuration = "${aws_launch_configuration.workers.name}" tag { key = "KubernetesVersion" value = "${kubernetes_version}" propagate_at_launch = true } }
Slide 23
Slide 23 text
resource "aws_autoscaling_group" "workers" { name = "cluster1-workers" max_size = 5 min_size = 2 desired_capacity = 4 health_check_type = "ELB" launch_configuration = "${aws_launch_configuration.workers.name}" tag { key = "AmiVERSION" value = "${ami_version}" propagate_at_launch = true } }
Slide 24
Slide 24 text
Paradoja de Teseo
Slide 25
Slide 25 text
${kubernetes_version} = 1.8 kubernetesVersion = 1.8 ${kubernetes_version} = ?
Slide 26
Slide 26 text
${kubernetes_version} = 1.9 kubernetesVersion = 1.8 ${kubernetes_version} = ? x
Slide 27
Slide 27 text
${kubernetes_version} = 1.9 kubernetesVersion = 1.9 ${kubernetes_version} = ? x
Slide 28
Slide 28 text
${ami_version} = coreos-1668 amiVersion = coreos-1668 ${ami_version} = ?
Slide 29
Slide 29 text
Theseus ● Drena nodos antes de matarlos ● Ventana de mantenimiento ● Concurrencia ● Maneja versiones de kubernetes, versiones de AMI, versiones de scripts ● Automático
Slide 30
Slide 30 text
Es open source?
Slide 31
Slide 31 text
No.
Slide 32
Slide 32 text
No content
Slide 33
Slide 33 text
Buenos tiempos @pablokbs
Slide 34
Slide 34 text
¿Preguntas? @pablokbs @InvisionApp