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
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
1.2k
ecspresso, ecschedule, lambroll を PipeCDプラグインとして動かしてみた (プロトタイプ) / Running ecspresso, ecschedule, and lambroll as PipeCD Plugins (prototype)
tkikuc
2
1.9k
PHPで作るWebSocketサーバー ~リアクティブなアプリケーションを知るために~ / WebSocket Server in PHP - To know reactive applications
seike460
PRO
2
770
サーバーゆる勉強会 DBMS の仕組み編
kj455
1
300
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
オニオンアーキテクチャを使って、 Unityと.NETでコードを共有する
soi013
0
370
見えないメモリを観測する: PHP 8.4 `pg_result_memory_size()` とSQL結果のメモリ管理
kentaroutakeda
0
940
shadcn/uiを使ってReactでの開発を加速させよう!
lef237
0
300
Swiftコンパイラ超入門+async関数の仕組み
shiz
0
170
Amazon Nova Reelの可能性
hideg
0
200
AHC041解説
terryu16
0
400
混沌とした例外処理とエラー監視に秩序をもたらす
morihirok
13
2.3k
Featured
See All Featured
Being A Developer After 40
akosma
89
590k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.5k
A better future with KSS
kneath
238
17k
Building Applications with DynamoDB
mza
93
6.2k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
YesSQL, Process and Tooling at Scale
rocio
170
14k
Thoughts on Productivity
jonyablonski
68
4.4k
KATA
mclloyd
29
14k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
RailsConf 2023
tenderlove
29
970
Docker and Python
trallard
43
3.2k
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