创建资源的两种方式

创建资源的两种方式


用命令行的方式创建:

//创建Pod控制器,deployments

[root@master ~]# kubectl run web --image=nginx --replicas=5

//查看控制器情况

[root@master ~]# kubectl get  deployments.

//查看资源详细信息

[root@master ~]# kubectl describe deployments. web

PS:查看某种资源对象,没有指名称空间,默认是在default名称空间,可以加上-n选项,查看指定名称空间

[root@master ~]# kubectl get  pod  -n=kube-system

注意:直接运行创建的Deployment资源对象,是经常使用的一个控制器类型,除了deployment,还有rc,rs等Pod控制器,Deployment是一个高级的Pod控制器

 

//创建Service资源类型

[root@master ~]# kubectl expose deployment web --name=web-svc --port=80 --type=NodePort

PS:如果想要外网能够访问服务,可以暴露deployment资源,得到service资源,但svc资源的类型必须为NodePoet

映射端口范围:30000-32767

 

服务的扩容与缩容:

[root@master ~]# kubectl scale deployment web --replicas=8

//通过修改yuml文件进行扩容与缩容

[root@master ~]# kubectl edit deployments. web

服务的升级与回滚:

[root@master ~]# kubectl  set  image deployment  web  web=nginx:1.15

//通过修改配置文件进行升级

[root@master ~]# kubectl  edit  deployments. web

//回滚

[root@master ~]# kubectl  rollout  undo deployment web

配置清单(yml、yaml):


常见yaml文件写法,以及字段的作用:

五个一级字段:

apiVersion:

api版本信息

kind:

资源对象的类别

metadata:

元数据。名称字段必须写

spec:

用户期望的状态

status:

资源现在处于什么样的状态

Deployment

[root@master ~]# vim web.yaml
kind: Deployment
apiVersion: extensions/v1beta1
metadata:
  name: web
spec:
  replicas: 2
  template:
    metadata:
      labels:
        app:  web_server
    spec:
      containers:
      - name: nginx
        image:  nginx
[root@master ~]# kubectl  apply -f  web.yaml

service

kind: Service
apiVersion: v1
metadata:
  name: web-svc
spec:
  selector:   //标签选择器,和Deployment里的标签要一样
    app:  web_server
  ports:
  - protocol: TCP
    port: 80
    targetPort: 80
[root@master ~]# kubectl apply -f  web-svc.yml

使用相同的标签和标签选择器,使两个资源对象相互关联

PS:(本质的意义:提供一个统一的接口)

      创建的Service资源对象,默认的type为ClusterIP,意味着集群内任何节点都可以访问,它的作用是为后端真正提供服务的Pod提供一个统一的访问接口,如果想要外网访问服务,应该把type改为NodePort

kind: Service
apiVersion: v1
metadata:
  name: web-svc
spec:
  type: NodePort  //指定类型,让外网来访问
  selector:
    app:  web_server
  ports:
  - protocol: TCP
    port: 80
    targetPort: 80
    nodePort: 30033   //指定集群映射端口,范围是30000-32767

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值