首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >部署到kubernetes

部署到kubernetes
EN

Stack Overflow用户
提问于 2020-05-22 22:51:14
回答 1查看 170关注 0票数 0

我想在kubernetes上部署前端和后端应用程序。我写yaml文件(这是从helm temlate得到的):

代码语言:javascript
复制
# Source: quality-control/templates/ingress.yaml
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: RELEASE-NAME-quality-control
  labels:
    app.kubernetes.io/name: quality-control
    helm.sh/chart: quality-control-0.1.0
    app.kubernetes.io/instance: RELEASE-NAME
    app.kubernetes.io/managed-by: Tiller
spec:
  rules:
    - host: "quality-control.ru"
      http:
        paths:
          - path: /
            backend:
              serviceName: RELEASE-NAME-quality-control
              servicePort: http

---
# Source: quality-control/templates/deployment.yaml
apiVersion: apps/v1beta2
kind: List
items:
- apiVersion: apps/v1beta2
  kind: Deployment
  metadata:
    name: quality-control-frontend
    labels:
      app.kubernetes.io/name: quality-control-frontend
      helm.sh/chart: quality-control-0.1.0
      app.kubernetes.io/instance: RELEASE-NAME
      app.kubernetes.io/managed-by: Tiller
  spec:
    replicas: 1
    selector:
    matchLabels:
      app.kubernetes.io/name: quality-control-frontend
      app.kubernetes.io/instance: RELEASE-NAME
    template:
      metadata:
        labels:
          app.kubernetes.io/name: quality-control-frontend
          app.kubernetes.io/instance: RELEASE-NAME
        logger: external
        sourcetype: quality-control-frontend
      spec:
        containers:
          - name: quality-control
            image: "registry.***.ru:5050/quality-control-frontend:stable"
            imagePullPolicy: Always
            env:
            - name: spring_profiles_active
              value: dev

            ports:
              - containerPort: 80
                protocol: TCP
                livenessProbe:
                  httpGet:
                    path: /healthcheck
                    port: 80
                    protocol: TCP
                  initialDelaySeconds: 10
                  periodSeconds: 10
            resources:
            limits:
              cpu: 2
              memory: 2048Mi
            requests:
              cpu: 1
              memory: 1024Mi

- apiVersion: apps/v1beta2
  kind: Deployment
  metadata:
    name: quality-control-backend
    labels:
      app.kubernetes.io/name: quality-control-backend
      helm.sh/chart: quality-control-0.1.0
      app.kubernetes.io/instance: RELEASE-NAME
      app.kubernetes.io/managed-by: Tiller
  spec:
    replicas: 1
    selector:
      matchLabels:
        app.kubernetes.io/name: quality-control-backend
        app.kubernetes.io/instance: RELEASE-NAME
    template:
      metadata:
        labels:
          app.kubernetes.io/name: quality-control-backend
          app.kubernetes.io/instance: RELEASE-NAME
          logger: external
          sourcetype: quality-control-backend
      spec:
        containers:
          - name: quality-control
            image: "registry.***.ru:5050/quality-control-backend:stable"
            imagePullPolicy: Always
            env:
            - name: spring_profiles_active
              value: dev

            ports:
              - containerPort: 80
                protocol: TCP
                resources:
            limits:
              cpu: 2
              memory: 2048Mi
            requests:
              cpu: 1
              memory: 1024Mi


---
# Source: quality-control/templates/service.yaml
apiVersion: v1
kind: List
items:
  - apiVersion: v1
    kind: Service
    metadata:
      name: quality-control-frontend
      labels:
        app.kubernetes.io/name: quality-control-frontend
        helm.sh/chart: quality-control-0.1.0
        app.kubernetes.io/instance: RELEASE-NAME
        app.kubernetes.io/managed-by: Tiller
    spec:
      type: ClusterIP
      ports:
      - port: 80
        targetPort: 80
        protocol: TCP
      selector:
        app.kubernetes.io/name: quality-control-frontend
        app.kubernetes.io/instance: RELEASE-NAME

  - apiVersion: v1
    kind: Service
    metadata:
    name: quality-control-backend
    labels:
        app.kubernetes.io/name: quality-control-backend
        helm.sh/chart: quality-control-0.1.0
        app.kubernetes.io/instance: RELEASE-NAME}
        app.kubernetes.io/managed-by: Tiller
    spec:
      type: ClusterIP
      ports:
        - port: 8080
          targetPort: 8080
          protocol: TCP
      selector:
        app.kubernetes.io/name: quality-control-backend
        app.kubernetes.io/instance: RELEASE-NAME

但我在部署时遇到一个错误:

代码语言:javascript
复制
Error: release quality-control failed: Deployment.apps "quality-control-frontend" is invalid: [spec.selector: Required value, spec.template.metadata.la                             bels: Invalid value: map[string]string{"app.kubernetes.io/instance":"quality-control", "app.kubernetes.io/name":"quality-control-frontend"}: `selector`                              does not match template `labels`]
EN

回答 1

Stack Overflow用户

发布于 2020-05-23 02:33:03

第一个部署对象中存在缩进问题

将其更改为

代码语言:javascript
复制
spec:
    replicas: 1
    selector:
    matchLabels:
      app.kubernetes.io/name: quality-control-frontend
      app.kubernetes.io/instance: RELEASE-NAME

代码语言:javascript
复制
spec:
    replicas: 1
    selector:
      matchLabels:
        app.kubernetes.io/name: quality-control-frontend
        app.kubernetes.io/instance: RELEASE-NAME

服务列表中也存在缩进问题,需要将其从

代码语言:javascript
复制
- apiVersion: v1
    kind: Service
    metadata:
    name: quality-control-backend
    labels:
        app.kubernetes.io/name: quality-control-backend
        helm.sh/chart: quality-control-0.1.0
        app.kubernetes.io/instance: RELEASE-NAME}
        app.kubernetes.io/managed-by: Tiller

代码语言:javascript
复制
- apiVersion: v1
    kind: Service
    metadata:
      name: quality-control-backend
      labels:
        app.kubernetes.io/name: quality-control-backend
        helm.sh/chart: quality-control-0.1.0
        app.kubernetes.io/instance: RELEASE-NAME
        app.kubernetes.io/managed-by: Tiller
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61957721

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档