kubernetes deployment,pod 实践
本文同步gitlab 更新 https://github.com/lifalin0802/falin_repos/blob/master/kubernetes_manual.md
创建自主pod
kubectl run d1 --image httpd:alpine --port 80
pod/d1 createdkubectl get deployments #没有东西
kubectl get pods #有了
kubectl get pods -o wide #有了kubectl describe pod d1 #查看描述
kubectl delete pod d1 #删除pod
创建deployment
kubectl create environment dev #创建名字为dev 的namespace
kubectl create deployment httpd --image httpd:alpine --port 80 -n dev #c创建deployment
kubectl get deployments -n dev
kubectl get deployment -n dev #单复数都可以
这里删除 kubectl delete pod d1
只对自主pod work
run命令也只是启动一个自主的pod,
要点解释:
kubectl create deployment XX
正常创建deployment ,默认会创建一个pod+两个docker容器, 一个docker是httpd本身,另一个是pause 这个容器。- pause容器干啥的?
相当于infor 容器, 用于共享网络,存储。 - pod可以不属于任何namespace,可以没有namespace的概念。
[root@centos ~]# kubectl run d1 --image httpd:alpine --port 80
pod/d1 created[root@centos ~]# kubectl get ns
NAME STATUS AGE
default Active 41h
kube-node-lease Active 41h
kube-public Active 41h
kube-system Active 41h[root@centos ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
d1 1/1 Running 0 70m
nginx-pod-b2796 1/1 Running 0 16h
nginx-pod-g84mg 1/1 Running 0 16h
nginx-pod-mfkv9 1/1 Running 0 16h
[root@centos ~]# kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
d1 1/1 Running 0 98m 172.17.0.7 centos <none> <none>
nginx-pod-b2796 1/1 Running 0 16h 172.17.0.6 centos <none> <none>
nginx-pod-g84mg 1/1 Running 0 16h 172.17.0.4 centos <none> <none>
nginx-pod-mfkv9 1/1 Running 0 16h 172.17.0.5 centos <none> <none>[root@centos ~]# kubectl delete pod d1
pod "d1" deleted
[root@centos ~]# kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-pod-b2796 1/1 Running 0 19h
nginx-pod-g84mg 1/1 Running 0 19h
nginx-pod-mfkv9 1/1 Running 0 19h[root@centos ~]# kubectl create namespace dev
namespace/dev created
[root@centos ~]# kubectl create deployment httpd --image httpd:alpine --port 80 -n dev
deployment.apps/httpd created
[root@centos ~]# kubectl get deployment
No resources found in default namespace.
[root@centos ~]# kubectl get deployments
No resources found in default namespace.
[root@centos ~]# kubectl get deployments -n dev
NAME READY UP-TO-DATE AVAILABLE AGE
httpd 1/1 1 1 15m
[root@centos ~]# kubectl get deployment -n dev
NAME READY UP-TO-DATE AVAILABLE AGE
httpd 1/1 1 1 15m
查看docker
由deployment创建的:
[root@centos ~]# docker ps|grep httpd
7f0d6dbbee25 5c2ee73209da "httpd-foreground" 15 minutes ago Up 15 minutes k8s_httpd_httpd-76f7455774-2vln2_dev_e0e8e85b-149a-4220-9817-26205137f762_0
f4033c816a79 k8s.gcr.io/pause:3.6 "/pause" 15 minutes ago Up 15 minutes k8s_POD_httpd-76f7455774-2vln2_dev_e0e8e85b-149a-4220-9817-26205137f762_0
[root@centos ~]# kubectl get pod -n dev
NAME READY STATUS RESTARTS AGE
httpd-76f7455774-2vln2 1/1 Running 0 16m
[root@centos ~]#
[root@centos ~]# docker stop 7f
7f
[root@centos ~]# docker ps |grep httpd
1b2ebeb00111 5c2ee73209da "httpd-foreground" 14 seconds ago Up 13 seconds k8s_httpd_httpd-76f7455774-2vln2_dev_e0e8e85b-149a-4220-9817-26205137f762_1
f4033c816a79 k8s.gcr.io/pause:3.6 "/pause" About an hour ago Up About an hour k8s_POD_httpd-76f7455774-2vln2_dev_e0e8e85b-149a-4220-9817-26205137f762_0
[root@centos ~]#
默认pod namespace 是 <none>
查看deployment
若改成replica副本数量是2, 则启动
4个docker
[root@centos ~]# docker ps | grep httpd
93d9558ff466 5c2ee73209da "httpd-foreground" 12 seconds ago Up 11 seconds k8s_httpd_httpd-76f7455774-v45fb_dev_be9d0c08-6330-42b9-acd1-1cccc569beb4_0
9918a9c4ac8b k8s.gcr.io/pause:3.6 "/pause" 13 seconds ago Up 12 seconds k8s_POD_httpd-76f7455774-v45fb_dev_be9d0c08-6330-42b9-acd1-1cccc569beb4_0
1b2ebeb00111 5c2ee73209da "httpd-foreground" 11 minutes ago Up 11 minutes k8s_httpd_httpd-76f7455774-2vln2_dev_e0e8e85b-149a-4220-9817-26205137f762_1
f4033c816a79 k8s.gcr.io/pause:3.6 "/pause" About an hour ago Up About an hour k8s_POD_httpd-76f7455774-2vln2_dev_e0e8e85b-149a-4220-9817-26205137f762_0
1个deployment
[root@centos ~]# kubectl get deployment -n dev
NAME READY UP-TO-DATE AVAILABLE AGE
httpd 2/2 2 2 79m
2个pod:
[root@centos ~]# kubectl get pods -n dev
NAME READY STATUS RESTARTS AGE
httpd-76f7455774-2vln2 1/1 Running 1 (17m ago) 83m
httpd-76f7455774-v45fb 1/1 Running 0 5m56s
[root@centos ~]# kubectl describe pod d1
Name: d1
Namespace: default
Priority: 0
Node: centos/192.168.5.100
Start Time: Mon, 11 Apr 2022 07:08:33 -0400
Labels: run=d1
Annotations: <none>
Status: Running
IP: 172.17.0.7
IPs:IP: 172.17.0.7
Containers:d1:Container ID: docker://b368ac46d5990c4b129260bd1a9f1865e2c23a02157fdc99d227fd8a28ff1635Image: httpd:alpineImage ID: docker-pullable://httpd@sha256:4eb4177b9245c686696dd8120c79cd64b7632b27d890db4cad3b0e844ed737afPort: 80/TCPHost Port: 0/TCPState: RunningStarted: Mon, 11 Apr 2022 07:09:13 -0400Ready: TrueRestart Count: 0Environment: <none>Mounts:/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-xspzq (ro)
Conditions:Type StatusInitialized TrueReady TrueContainersReady TruePodScheduled True
Volumes:kube-api-access-xspzq:Type: Projected (a volume that contains injected data from multiple sources)TokenExpirationSeconds: 3607ConfigMapName: kube-root-ca.crtConfigMapOptional: <nil>DownwardAPI: true
QoS Class: BestEffort
Node-Selectors: <none>
Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300snode.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events: <none>
在这里插入代码片
kubernetes deployment,pod 实践相关推荐
- Spring Cloud Kubernetes容器化实践
随着公司业务量和产品线的增加,项目越来越多,普通运维系统架构对整个软件研发生命周期的管理越来越难,效率低下,难以统一管理.近年来Docker统一了容器标准,对于软件开发流程产生了深远的影响,Docke ...
- 阿里巴巴 Kubernetes 应用管理实践中的经验与教训
作者 | 孙健波(阿里巴巴技术专家).赵钰莹 导读:云原生时代,Kubernetes 的重要性日益凸显.然而,大多数互联网公司在 Kubernetes 上的探索并非想象中顺利,Kubernetes 自 ...
- Kubernetes之Pod调度
本文讲的是Kubernetes之Pod调度[编者的话]Kubernetes调度器根据特定的算法与策略将pod调度到工作节点上.在默认情况下,Kubernetes调度器可以满足绝大多数需求,例如调度po ...
- Kubernetes中Pod的调度策略
Kubernetes中Pod的调度策略 1.Pod调度 在 Kubernetes 平台上,我们很少会直接创建一个 Pod,在大多数情况下会通过 RC.Deployment. DaemonSet.Job ...
- JDOS 2.0:Kubernetes的工业级实践
JDOS(Jingdong Datacenter Operating System)1.0于2014年推出,基于OpenStack进行了深度定制,并在国内率先将容器引入生产环境,经历了2015年618 ...
- Kubernetes 最佳安全实践指南
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 前言 对于大部分 Kubernetes 用户来说,安全是 ...
- 阿里云 Serverless Kubernetes 的落地实践分享
简介:Serverless Kubernetes 基于 Kubernetes 之上,提供按需使用.节点免运维的 Serverless 能力,让开发者真正实现通过 Kubernetes 标准化 API ...
- 容器编排技术 -- Kubernetes Deployment
容器编排技术 -- Kubernetes Deployment 1 创建 Deployment 1.1 Pod-template-hash label 2 更新Deployment 2.1 Rollo ...
- 4 Kubernetes资源-Pod控制器(1)
4 Kubernetes资源-Pod控制器(1) Kubernetes中Pod分为自主式和控制器管理式: YAML指定类型为Pod的均为自主式,此类Pod退出后不会被创建: YMAL指定类型为Repl ...
最新文章
- Nature综述——真菌的多样性:真菌的高通量测序及鉴定
- 写个测试程序测试下,单片机使用浮点型数效率有多低
- 更改windows2003最大连接数的方法
- 清理Oracle安装目录里的一些日志信息
- 按钮控件里面的间距问题
- 深入理解JVM(三)——配置参数
- oracle查询相同想,返回相同总和的查询-Oracle SQL
- centos8安装mysql_Linux宝塔面板安装
- 软件测试--IEEE829标准
- java爬取前程无忧(51job)
- 基于图像传感器的可见光通信的优缺点分析
- 程序员怎么做可以安全通过试用期
- spring boot结合FastDFSClient做下载文件注意事项
- linux 防火墙 443端口映射,linux防火墙实现端口转发、端口映射及双向通路
- 类似Confluence的软件有哪些
- STM32-SPI资料整理
- ios swift 纯代码设置UITableViewCell的style
- FairyGUI-GComponent组件
- 微型连接器行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
- 华为HCIP-DATACOM题库解析271-300(821)