kubectl apply -f k8s: не может распознать службу и развертывание и не имеет совпадений для вида "Service" в версии "v1" - PullRequest
0 голосов
/ 27 мая 2019

У меня kubernetes работает на OVH без проблем.Но я недавно переустановил сервер сборки из-за других проблем и настроил все, но при попытке применить файлы выдает эту ужасную ошибку ... я что-то пропустил?и что на самом деле означает эта ошибка?

+ kubectl apply -f k8s
unable to recognize "k8s/driver-cluster-ip-service.yaml": no matches for kind "Service" in version "v1"
unable to recognize "k8s/driver-deployment.yaml": no matches for kind "Deployment" in version "apps/v1"
unable to recognize "k8s/driver-mysql-cluster-ip-service.yaml": no matches for kind "Service" in version "v1"
unable to recognize "k8s/driver-mysql-deployment.yaml": no matches for kind "Deployment" in version "apps/v1"
unable to recognize "k8s/driver-mysql-persistent-volume-claim.yaml": no matches for kind "PersistentVolumeClaim" in version "v1"
unable to recognize "k8s/driver-phpmyadmin-cluster-ip-service.yaml": no matches for kind "Service" in version "v1"
unable to recognize "k8s/driver-phpmyadmin-deployment.yaml": no matches for kind "Deployment" in version "apps/v1"

Я попробовал все предыдущие ответы на SO, но ни один не удался для меня.Я не думаю, что мне это действительно нужно, «поправь меня, если я ошибаюсь».Я действительно хотел бы получить некоторую помощь в этом.

Я установил kubectl, и я получил файл конфигурации, который я использую.И когда я выполняю команду kubectl get pods, я получаю модули, которые были развернуты до

Это некоторые из файлов yml

k8s / driver-cluster-ip-service.yaml

apiVersion: v1
kind: Service
metadata:
  name: driver-cluster-ip-service
spec:
  type: ClusterIP
  selector:
    component: driver-service
  ports:
    - port: 3000
      targetPort: 8080

k8s / driver-deploy.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: driver-deployment
spec:
  replicas: 1
  selector:
    matchLabels:
      component: driver-service
  template:
    metadata:
      labels:
        component: driver-service
    spec:
      containers:
        - name: driver
          image: repo.taxi.com/driver-service
          imagePullPolicy: Always
          ports:
            - containerPort: 8080
      imagePullSecrets:
        - name: taxiregistry

dockerfile

FROM maven:3.6.0-jdk-8-slim AS build
COPY . /home/app/
RUN rm /home/app/controllers/src/main/resources/application.properties
RUN mv /home/app/controllers/src/main/resources/application-kubernetes.properties /home/app/controllers/src/main/resources/application.properties
RUN mvn -f /home/app/pom.xml clean package

FROM openjdk:8-jre-slim
COPY --from=build /home/app/controllers/target/controllers-1.0.jar /usr/local/lib/driver-1.0.0.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","/usr/local/lib/driver-1.0.0.jar"]

kubectl get pods command get pods

kubectl api-versions

api-versions

1 Ответ

2 голосов
/ 28 мая 2019

решение найдено

Мне пришлось поместить бинарный файл в папку .kube, которая должна быть помещена в корневой каталог. В моем случае мне сначала пришлось вручную создать папку .kube в корневом каталоге.

После этого я установил переменную env в эту папку и поместил туда мой файл конфигурации с моими настройками

Затем мне пришлось поделиться папкой с пользователем jenkins и применить права к группе jenkins

Дженкинс не был в курсе, поэтому мне пришлось перезапустить сервер Дженкинса.

И это сработало как шарм!

Имейте в виду, чтобы перезапустить сервер jenkins, чтобы внесенные изменения вступили в силу для jenkins.

...