2. 2
SOBRE MIM
Senior Software Engineer @RedHat
Projetos atuais: Istio / Envoy / OpenShift Service Mesh
Contribuidor de software livre de longa data (Debian,
Ubuntu, GNOME)
Natural de Maceio – AL :)
Twitter: @jwendell
9. 9
SERVICOS AINDA TEM QUE LIDAR COM...
Balanceamento no lado do cliente
Tolerancia a falhas
Observabilidade
Monitoramento / Rastreamento
Circuit Breaking
13. 13
“MICRO” SERVICES?
Service A (Go)
Library 1
Library 2
Library 3
Library 4
Microservice A
Service B (Java)
Library 5
Library 6
Library 7
Library 8
Microservice B
14. 14
MICRO SERVICES!
Service A (Go)
Microservice A
Service B (Java)
Microservice BProxy
Funcionalidades em comum vao aqui!
17. 17
COMUNICACAO ENTRE OS SERVICOS
chama http://serviceB
Service A (Go)
Microservice A
Service B (Java)
Microservice B
PodPod
Sem o Proxy
18. 18
COMUNICACAO ENTRE OS SERVICOS
Com o Proxy
chama http://serviceB
Service A (Go)
Microservice A
Envoy
Service B (Java)
Microservice B
Envoy
PodPod
20. 20
SERVICE MESH
Sem automacao, manter e configurar
todos esses proxies pode ser chato,
tedioso e o pior, muito suscetivel a
erros.
Precisamos de um Control Plane.
21. 21
APRESENTO O ISTIO
Control plane para um service mesh
Abstrai conceitos do Envoy e sua
configuracao
Facil de operar: YAML files - kubectl
ou istioctl podem ser usados
22. 22
ISTIO SERVICE MESH
Service 1
Microservice 1
Envoy
Service N
Microservice N
Envoy
Control Plane
Istio
Configura os proxies
Data Plane
23. 23
ISTIO SERVICE MESH
Service 1
Microservice 1
Envoy
Service N
Microservice N
Envoy
Control Plane
Istio
Configura os proxies
Data Plane
Service Discovery
Regras (YAML)
24. 24
PRINCIPAIS FEATURES DO ISTIO
Gerenciamento de trafego
Seguranca
Observabilidade
Flexivel, extensivel
25. 25
GERENCIAMENTO DE TRAFEGO
Tratamento de falhas
Timeouts
Retries
Health check / Circuit Breaker
Injecao de falhas
Delays
Aborts
Controle de trafego
Roteamentos (canary, etc)
Espelhamento
29. 29
SERVICE MESH E’ COMPLICADO
Eu preciso mesmo de service mesh?
Istio e’ um grande projeto, com muitas
features e muito configuravel
Seus servicos podem ter problemas com
service mesh
Configuracoes ainda sao necessarias...
etc...
31. 31
OPENSHIFT
OpenShift: distribuicao Kubernetes
OpenShift Service Mesh: distribuicao
Istio, disponivel gratuitamente junto
com o OpenShift
Algumas diferencas: Multitenant,
OpenSSL (FIPS), CNI, Operator,
Injecao do sidecar
Estabilidade e suporte