[K8s学习笔记] 透过depolyment操控pod


Deployment

Create a Simple Deployment

最简单的deployment就是启动某个image,然後不带其他设定

kubectl create deployment <name-of-depl> --image=<image-name>

可以透过 kubectl get deployment 检查deploy的状态

等到状态变成ready後就可以用 kubectl get pod 看到所有running的pod

pod name是由replicaset id + pod id组成

通常也不会去动replicaset,他会在deployment时由K8s自动设定

Pod info

要看pod的更详细讯息可以用

kubectl describe pod <pod_name>

会分别列出到pod成功running前的各步骤花了多久时间

Debug a Pod

如果deploy失败或是要查看log,可以使用

kubectl logs <pod-name>

要连进某个pod的terminal可以透过

kubectl exec -it <pod_name> -- bin/bash

用法和在docker要连进contianer的terminal非常类似

Edit the Deployment

kubectl edit deployment <name-of-depl>

当你修改并储存deployment的设定後,pod就会自动重建 (旧的被删掉,直接创新的)

但是旧的replicaset并不会被删掉,只会把刚刚那个Pod从中移除

Delete the Deployment

要连带pod + replicaset 一并删除的话

kubectl delete deployment <depl-name>

可以透过kubectl get replicaset去确认

Create Deployment with YAML File

比较常见的做法还是先写好YAML档再去deploy

kubectl apply -f <filename>

deployment这种型态会根据kind还有apiVersion来决定

apiVersion: apps/v1
kind: Deployment

如果以这种方式deploy的,往後只要修改档案,pod就会自动重建了


Reference

Kubectl Basic Commands - Create and Debug Pod in a Minikube cluster | Kubernetes Tutorial 18


<<:  资安学习路上-怎麽开始的

>>:  自主学习Android_APP开发 #纪录2

【Day16】电子商务与行销篇-电子商务

#odoo #开源系统 #数位赋能 #E化自主 从Google 在 2020 年 12 月发表的智慧...

[DAY 05] 盐水豆签羹

盐水豆签羹 地点:台南市盐水区朝琴路19号 时间:14:00~19:00 这一家的照片忘了拍 但是还...

[Day2][笔记] React.js 常用 的 ES6 语法(1)

前言 React.js 是一套 JavaScript 函式库,而其写法也的确如同其字面上意思,写起来...

Day 6. Hashicorp Nomad: Submit a Job

Hashicorp Nomad: Submit a Job 今天来写最基本的提交工作(Submit ...

Day28 Policy-based authorization

之前有说到 ASP.NET Core Identity 使用的是基於 Claim 的验证,其实 AS...