K8s 中所有的内容都抽象为资源,资源实例化之后叫做对象
命名空间级别:
工作负载型资源( workload ): Pod、ReplicaSet、Deployment、StatefulSet、DaemonSet、Job、CronJob ( ReplicationController 在 v1.11 版本被废弃 )
服务发现及负载均衡型资源( ServiceDiscovery LoadBalance ): Service(四层)、Ingress( 七层)、…
配置与存储型资源: Volume( 存储卷 )、CSI( 容器存储接口,可以扩展各种各样的第三方存储卷 )
特殊类型的存储卷:ConfigMap( 当配置中心来使用的资源类型 )、Secret(保存敏感数据)、DownwardAPI(把外部环境中的信息输入给容器)
集群级资源:Namespace、Node、Role、ClusterRole、RoleBinding、ClusterRoleBinding
元数据型资源:HPA、PodTemplate、LimitRange
YAML文件:
在 k8s 中,一般使用 yaml 格式的文件来创建符合我们预期期望的 pod ,这样的 yaml 文件我们一般称为资源清单。
基本语法:
缩进时不允许使用tab键,只允许使用空格
缩进的空格数不重要,只要相同层级元素左侧对齐
#标识注释,从这个字符一直到行尾,都会被解释器忽略
支持的数据结构:对象,键值对的集合 数组 纯量,单个的、不可再分的值
对象 name:steve 或 hash:(name:steve,age:18)
数组 animal -cat -dog animal:[cat,dog]
复合结构 对象和数组可以结合使用
纯量:null用~或空格表示,允许两个!强制转换数据类型 e:!!str 123,字符串不需要用单双引号,双引号不会对特殊字符转义,单引号之中还有单引号需要用两个单引号,其中一个表示转义

[root@k8s-master01 install-k8s]# vim pod.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: myweb
spec:
  replicas: 3
  template:
    metadata:
      labels:
        app: myweb
    spec:
      containers:
      - name: myweb
        image: hub.atguigu.com/library/myapp:v1
        ports:
        - containerPort: 80
[root@k8s-master01 ]# kubectl explain pod/service/node.... 查看资源使用解释
[root@k8s-master01 install-k8s]# kubectl create -f pod.yaml   //yaml文件创建pod
[root@k8s-master01 install-k8s]# kubectl descriabe pod myapp-pod //查看创建信息
[root@k8s-master01 install-k8s]# kubectl logs myapp-pod -n 命名空间 //查看容器日志
Kubectl -n 命名空间 exec myapp-pod -it  -c 容器名 --  /bin/sh  //进入pod中的容器
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐