k8s实战-1

k8s实战-1


一、资源创建方式

1.命令行

就是直接通过命令的方式创建,比如我要创建namespace,

powershell 复制代码
kubectl create namespace hello

删除:

bash 复制代码
kubectl delete -f hello

2.yaml

简单来说,就是在命令行上创建yaml文件,并apply这个应用文件即可

bash 复制代码
vi hello.yaml

填充如下内容:

bash 复制代码
apiVersion: v1
kind: Namespace
metadata:
  name: hello

使用apply执行文件内容:

bash 复制代码
kubectl apply -f hello.yaml

二、命名空间

命名空间主要是来隔离资源的,针对于不同的环境,可以通过命名空间进行隔离。比如隔离prod、dev和test的配置文件,这样某个环境只能使用命名空间内的配置文件。

创建namespace

bash 复制代码
kubectl create ns hello
kubectl delete ns hello
yaml 复制代码
apiVersion: v1
kind: Namespace
metadata:
  name: hello

三、Pod

运行中的一组容器,Pod是kubernetes中应用的最小单位。Pod中可以运行多个容器,可以理解为Pod就是一个车间,容器就相当于车间中的不同部门,Pod起到管理这个车间的能力。

下面针对Pod的一些操作:

bash 复制代码
#默认在default命名空间中
kubectl run mynginx --image=nginx

# 查看default名称空间的Pod
kubectl get pod 
# 描述
kubectl describe pod Pod名字
# 删除
kubectl delete pod Pod名字
# 查看Pod的运行日志
kubectl logs Pod名字

# 每个Pod - k8s都会分配一个ip
kubectl get pod -owide

# 使用Pod的ip+pod里面运行容器的端口
curl 192.168.169.136

# 集群中的任意一个机器以及任意的应用都能通过Pod分配的ip来访问这个Pod

总结

本篇文章主要介绍一些基本的概念,涉及到namespace,pod。针对k8s的操作,可以通过dashboard操作,也可以在命令行中操纵,这个看个人喜好,但是工作中几乎都是在命令行操作的。

相关推荐
你才是臭弟弟17 分钟前
Amazon S3 和 MinIO (数据湖的选型)
大数据·云原生
Gold Steps.1 小时前
MySQL Operator for Kubernetes自动实现整个生命周期
mysql·云原生·kubernetes
GHL2842710901 小时前
Docker Desktop 启动报错“Virtualization support not detected“
c++·docker·容器
susu10830189112 小时前
docker启动kafka
docker·容器·kafka
NGINX开源社区3 小时前
借助 Okta 和 NGINX Ingress Controller 实现 K8s OpenID Connect 身份验证
运维·nginx·kubernetes
何以不说话4 小时前
记录一下学习日常⑩(docker)
linux·运维·docker·容器
阿里云云原生4 小时前
RUM 链路打通实战:打破移动端可观测性黑洞
阿里云·云原生·rum
久绊A4 小时前
K8s集群异常Pod高效排查命令(kube-system核心场景)
云原生·容器·kubernetes
小二·5 小时前
Go 语言系统编程与云原生开发实战(第3篇):企业级 RESTful API 开发 —— 中间件、验证、文档与权限控制
云原生·golang·restful
你的不安5 小时前
Docker相关知识
docker·容器