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
280
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.6k
Introducing Laravel Dusk
bobbybouwmann
2
130
Other Decks in Programming
See All in Programming
return文におけるstd::moveについて
onihusube
1
1.4k
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
570
Alba: Why, How and What's So Interesting
okuramasafumi
0
210
月刊 競技プログラミングをお仕事に役立てるには
terryu16
1
1.2k
ゼロからの、レトロゲームエンジンの作り方
tokujiros
3
1.1k
QA環境で誰でも自由自在に現在時刻を操って検証できるようにした話
kalibora
1
140
Androidアプリの One Experience リリース
nein37
0
1.2k
Package Traits
ikesyo
1
210
AppRouterを用いた大規模サービス開発におけるディレクトリ構成の変遷と問題点
eiganken
1
450
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
190
Внедряем бюджетирование, или Как сделать хорошо?
lamodatech
0
940
Fixstars高速化コンテスト2024準優勝解法
eijirou
0
190
Featured
See All Featured
Done Done
chrislema
182
16k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
30
2.1k
Optimizing for Happiness
mojombo
376
70k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
A Tale of Four Properties
chriscoyier
157
23k
Gamification - CAS2011
davidbonilla
80
5.1k
GraphQLとの向き合い方2022年版
quramy
44
13k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.6k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
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