Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Kubernetes with Laravel
Search
Bobby Bouwmann
December 11, 2019
Programming
0
240
Kubernetes with Laravel
Bobby Bouwmann
December 11, 2019
Tweet
Share
More Decks by Bobby Bouwmann
See All by Bobby Bouwmann
Routing Laravel
bobbybouwmann
1
340
Laravel Design Patterns 2.0
bobbybouwmann
2
3.4k
Introducing Laravel Dusk
bobbybouwmann
2
90
Other Decks in Programming
See All in Programming
unique パッケージから学ぶ interning と weak reference @ Asakusa.go#3
karamaru
2
810
マルチモジュールにおけるテスト最適化
fxwx23
0
210
Desafios e Lições Aprendidas na Migração de Monólitos para Microsserviços em Java
jessilyneh
2
150
Patched fetch did not work
quramy
4
380
Findy - エンジニア向け会社紹介 / Findy Letter for Engineers
findyinc
4
90k
The Shape of a Service Object
inem
0
520
仮想ファイルシステムを導入して開発環境のストレージ課題を解消する
segadevtech
2
550
How to Break into Reading Open Source
kaspth
2
210
A New Era of Testing
mannodermaus
2
510
Boost Performance and Developer Productivity with Jakarta EE 11
ivargrimstad
0
470
rbs-inlineを導入してYARDからRBSに移行する
euglena1215
1
290
エンジニア1年目で複雑なコードの改善に取り組んだ話
mtnmr
3
2k
Featured
See All Featured
WebSockets: Embracing the real-time Web
robhawkes
59
7.3k
Rails Girls Zürich Keynote
gr2m
93
13k
What's in a price? How to price your products and services
michaelherold
242
11k
Git: the NoSQL Database
bkeepers
PRO
425
64k
StorybookのUI Testing Handbookを読んだ
zakiyama
26
5.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
0
120
Clear Off the Table
cherdarchuk
91
320k
Unsuck your backbone
ammeep
667
57k
Music & Morning Musume
bryan
46
6k
Building Applications with DynamoDB
mza
90
6k
GitHub's CSS Performance
jonrohan
1030
450k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
230
17k
Transcript
Kubernetes with Laravel Kubernetes with Laravel
@bobbybouwmann Kubernetes with Laravel
Kubernetes with Laravel
Kubernetes with Laravel
Agenda • What is kubernetes • Laravel with Kubernetes •
Kubernetes vs Larvel Vapor Kubernetes with Laravel
What is kubernetes? • Orchestra*on pla0orm for containers • Is
compatable with Docker • Manages deployments and scaling Kubernetes with Laravel
Kubernetes with Laravel
kubectl get pods -o wide NAME READY STATUS AGE IP
NODE horizon-794474c567-5mxwm 1/1 Running 8d 172.31.17.141 server01.eu-central-1 app-57c65f4d5b-9jbjc 1/1 Running 8d 172.31.21.72 server01.eu-central-1 app-57c65f4d5b-hlz25 1/1 Running 8d 172.31.9.186 server02.eu-central-1 app-57c65f4d5b-tzbb8 1/1 Running 8d 172.31.26.106 server02.eu-central-1 Kubernetes with Laravel
NAME READY STATUS RESTARTS AGE app-594f6cfd8b-gl84s 1/1 Running 0 3d
app-594f6cfd8b-8623b 1/1 Running 0 3d Kubernetes with Laravel
kubectl apply -f docker/kube/prod.yml NAME READY STATUS RESTARTS AGE app-vb345b238p-4mnz7
0/1 Terminating 0 3d app-vb345b238p-8623b 1/1 Running 0 3d app-7764bd5f8d-k2k55 0/1 Init:0/1 0 7s Kubernetes with Laravel
NAME READY STATUS RESTARTS AGE app-594f6cfd8b-gl84s 1/1 Running 0 3d
app-7764bd5f8d-k2k55 0/1 Init:0/1 0 7s Kubernetes with Laravel
NAME READY STATUS RESTARTS AGE app-7764bd5f8d-k2k55 1/1 Running 0 27s
app-7764bd5f8d-39dd7 1/1 Running 0 3s Kubernetes with Laravel
NAME READY STATUS RESTARTS AGE app-7764bd5f8d-gl84s 1/1 Running 0 3d
app-59b6f55476-nx65z 0/1 CrashLoopBackOff 4 35s Kubernetes with Laravel
NAME READY STATUS RESTARTS AGE cron-594f6cfd8b-5j46r 0/1 ContainerCreating 0 1s
app-7764bd5f8d-gl84s 1/1 Running 0 2d app-7764bd5f8d-j234j 1/1 Running 0 2d Kubernetes with Laravel
NAME READY STATUS RESTARTS AGE cron-594f6cfd8b-5j46r 0/1 Completed 0 12s
app-7764bd5f8d-gl84s 1/1 Running 0 2d app-7764bd5f8d-j234j 1/1 Running 0 2d Kubernetes with Laravel
Laravel with Kubernetes Kubernetes with Laravel
Storage • Database • Storage • Logging • Excep3on Logging
• Sessions • Queues Kubernetes with Laravel
Database // .env DB_CONNECTION=mysql DB_HOST=prod.hbwehrkblh.eu-central-1.rds.amazonaws.com DB_PORT=3306 DB_DATABASE=app DB_USERNAME=app DB_PASSWORD=123KDjh1233DH*(gh2{34jk]h23\h4) Kubernetes
with Laravel
Storage // config/filesystems.php 'disks' => [ 's3' => [ 'driver'
=> 's3', 'key' => env('AWS_ACCESS_KEY_ID'), 'secret' => env('AWS_SECRET_ACCESS_KEY'), 'region' => env('AWS_DEFAULT_REGION'), 'bucket' => env('AWS_BUCKET'), 'url' => env('AWS_URL'), ], ], Kubernetes with Laravel
Logging // config/logging.php 'channnels' => [ 'papertrail' => [ 'driver'
=> 'monolog', 'level' => 'debug', 'handler' => SyslogUdpHandler::class, 'handler_with' => [ 'host' => env('PAPERTRAIL_URL'), 'port' => env('PAPERTRAIL_PORT'), ], ], ], Kubernetes with Laravel
// config/logging.php 'channels' => [ 'stderr' => [ 'driver' =>
'monolog', 'handler' => StreamHandler::class, 'formatter' => env('LOG_STDERR_FORMATTER'), 'with' => [ 'stream' => 'php://stderr', ], ], ], Kubernetes with Laravel
Excep&on logging // config/logging.php [ 'default' => env('LOG_CHANNEL', 'stack'), 'channels'
=> [ 'stack' => [ 'driver' => 'stack', 'channels' => ['daily', 'flare'], 'ignore_exceptions' => false, ], ], ] Kubernetes with Laravel
Kubernetes with Laravel
Excep&on logging // .env SENTRY_LARAVEL_DSN=https://
[email protected]
/8499832 Kubernetes with Laravel
Kubernetes with Laravel
Sessions // .env SESSION_DRIVER=database SESSION_LIFETIME=120 Kubernetes with Laravel
Queues QUEUE_CONNECTION=sync REDIS_HOST=redis REDIS_PASSWORD=null REDIS_PORT=6379 Kubernetes with Laravel
Queues QUEUE_CONNECTION=sync REDIS_HOST=redis REDIS_PASSWORD=null REDIS_PORT=6379 Kubernetes with Laravel
Kubernetes with Laravel
Golden rules • Persistent storage is always external • Container
monitoring • Keep containers small Kubernetes with Laravel
Kubernetes vs Laravel Vapor Kubernetes with Laravel
Kubernetes with Laravel
Kubernetes with Laravel
h"p:/ /bit.ly/laravel-giveaway Kubernetes with Laravel
Kubernetes with Laravel - Any ques*ons? - Kubernetes with Laravel