kubernetes部署服务

Posted walkinginthesun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了kubernetes部署服务相关的知识,希望对你有一定的参考价值。

task为任务名(或服务程序名),部署服务时,需要将task改为对应的服务程序名即可,不可重复。
yaml文件中需要修改的只是有注释的部分。

1. deployment

deployment.yaml

kind: Deployment
apiVersion: extensions/v1beta1
metadata:
  name: task-deployment
spec:
  replicas: 1  # 副本个数
  template:
    metadata:
      labels:
        app: task
    spec:
      volumes:
      - name: task-storage
        hostPath:
          path: /home/liudong  # 宿主机上的需要映射的目录
      containers:
      - name: task-container
        image: 10.3.72.82:5000/fileserver:v1.0.0  # 镜像
        ports:
        - containerPort: 8081  # 服务端口
          name: task
        volumeMounts:
        - mountPath: /data   # 容器内映射目录
          name: task-storage

调用kubectl create -f deployment.yaml创建deployment。

2. service

service.yaml

kind: Service
apiVersion: v1
metadata:
  name: task
spec:
  selector:
    app: task
  type: NodePort
  ports:
  - port: 38081
    targetPort: 8081  # 服务端口     

调用kubectl create -f service.yaml创建service。

通过kubectl get svc查看端口映射

[email protected]:# kubectl get svc
NAME         CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
task         10.254.210.183   <nodes>       38081:30201/TCP   13m

其中,30201映射到应用的8081端口,
curl http://10.3.72.82:30201

以上是关于kubernetes部署服务的主要内容,如果未能解决你的问题,请参考以下文章

kubernetes1.4简介和安装部署

Kubernetes 部署集群内部DNS服务

Kubernetes 清理 pod、服务、部署等

请教kubernetes部署问题,pod一直处于pending状态

从 Kubernetes 部署中公开 SCDF 服务

如何在Kubernetes上进行微服务部署