Giter Site home page Giter Site logo

Comments (14)

ecordell avatar ecordell commented on May 29, 2024

Hi @eivantsov - if you click on the name of the failed install you should see details about what failed.

The easiest way is to kubectl get csv memcache -o yaml and look at it status block.

Since I see that you're running locally, I imagine the failure is because we configure OLM differently than normal when run locally; you may need to put your CSVs into local-operators for them to work.

from operator-lifecycle-manager.

 avatar commented on May 29, 2024

That's what I did, and previously the status showed reasons for a failed status. Now, I am trying the same thing again and cannot see status block at all:

eugene@ivantsoft ~/Downloads $ oc get ClusterServiceVersions/memcachedoperator.v0.0.1 -o=yaml
apiVersion: operators.coreos.com/v1alpha1
kind: ClusterServiceVersion
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"operators.coreos.com/v1alpha1","kind":"ClusterServiceVersion","metadata":{"annotations":{},"name":"memcachedoperator.v0.0.1","namespace":"default"},"spec":{"customresourcedefinitions":{"owned":[{"description":"Represents a cluster of Memcached apps","displayName":"Memcached App","kind":"Memcached","name":"memcacheds.cache.example.com","resources":[{"kind":"Deployment","version":"v1beta2"},{"kind":"ReplicaSet","version":"v1beta2"},{"kind":"Pod","version":"v1"}],"specDescriptors":[{"description":"The desired number of member Pods for the deployment.","displayName":"Size","path":"size","x-descriptors":["urn:alm:descriptor:com.tectonic.ui:podCount"]}],"statusDescriptors":[{"description":"The current status of the application.","displayName":"Status","path":"phase","x-descriptors":["urn:alm:descriptor:io.kubernetes.phase"]},{"description":"Explanation for the current status of the application.","displayName":"Status Details","path":"reason","x-descriptors":["urn:alm:descriptor:io.kubernetes.phase:reason"]}],"version":"v1alpha1"}]},"description":"Main enterprise application providing business critical features with high availabilty and no manual intervention.","displayName":"Memcached Application","install":{"spec":{"deployments":[{"name":"memcached-app-operator","spec":{"replicas":1,"selector":{"matchLabels":{"app":"memcached-app-operator"}},"template":{"metadata":{"labels":{"app":"memcached-app-operator"}},"spec":{"containers":[{"command":["/usr/local/bin/memcached-operator"],"image":"quay.io/jzelinskie/memcached-operator:v0.0.1","imagePullPolicy":"Always","name":"sao","ports":[{"containerPort":8080,"protocol":"TCP"}]}],"restartPolicy":"Always","serviceAccount":"memcached-operator","serviceAccountName":"memcached-operator","terminationGracePeriodSeconds":5}}}}],"permissions":[{"rules":[{"apiGroups":["*"],"resources":["*"],"verbs":["*"]}],"serviceAccountName":"memcached-operator"}]},"strategy":"deployment"},"keywords":["memcached","app"],"labels":{"alm-owner-enterprise-app":"memcached-app-operator","alm-status-descriptors":"memcached-app-operator.v0.0.1"},"maintainers":[{"email":"[email protected]","name":"Some Corp"}],"maturity":"alpha","provider":{"name":"Example","url":"www.example.com"},"version":"0.0.1"}}
  creationTimestamp: 2019-01-21T16:28:31Z
  generation: 1
  name: memcachedoperator.v0.0.1
  namespace: default
  resourceVersion: "3619"
  selfLink: /apis/operators.coreos.com/v1alpha1/namespaces/default/clusterserviceversions/memcachedoperator.v0.0.1
  uid: 96fc142b-1d99-11e9-95f8-54e1ad81a005
spec:
  customresourcedefinitions:
    owned:
    - description: Represents a cluster of Memcached apps
      displayName: Memcached App
      kind: Memcached
      name: memcacheds.cache.example.com
      resources:
      - kind: Deployment
        version: v1beta2
      - kind: ReplicaSet
        version: v1beta2
      - kind: Pod
        version: v1
      specDescriptors:
      - description: The desired number of member Pods for the deployment.
        displayName: Size
        path: size
        x-descriptors:
        - urn:alm:descriptor:com.tectonic.ui:podCount
      statusDescriptors:
      - description: The current status of the application.
        displayName: Status
        path: phase
        x-descriptors:
        - urn:alm:descriptor:io.kubernetes.phase
      - description: Explanation for the current status of the application.
        displayName: Status Details
        path: reason
        x-descriptors:
        - urn:alm:descriptor:io.kubernetes.phase:reason
      version: v1alpha1
  description: Main enterprise application providing business critical features with
    high availabilty and no manual intervention.
  displayName: Memcached Application
  install:
    spec:
      deployments:
      - name: memcached-app-operator
        spec:
          replicas: 1
          selector:
            matchLabels:
              app: memcached-app-operator
          template:
            metadata:
              labels:
                app: memcached-app-operator
            spec:
              containers:
              - command:
                - /usr/local/bin/memcached-operator
                image: quay.io/jzelinskie/memcached-operator:v0.0.1
                imagePullPolicy: Always
                name: sao
                ports:
                - containerPort: 8080
                  protocol: TCP
              restartPolicy: Always
              serviceAccount: memcached-operator
              serviceAccountName: memcached-operator
              terminationGracePeriodSeconds: 5
      permissions:
      - rules:
        - apiGroups:
          - '*'
          resources:
          - '*'
          verbs:
          - '*'
        serviceAccountName: memcached-operator
    strategy: deployment
  keywords:
  - memcached
  - app
  labels:
    alm-owner-enterprise-app: memcached-app-operator
    alm-status-descriptors: memcached-app-operator.v0.0.1
  maintainers:
  - email: [email protected]
    name: Some Corp
  maturity: alpha
  provider:
    name: Example
    url: www.example.com
  version: 0.0.1

from operator-lifecycle-manager.

 avatar commented on May 29, 2024

@ecordell I have tried with different csv like prometheus, etcd etc. Same result, there's no status and nothing happens in the namespace.

Could you give me some pointers/hints on what I might be doing wrong and how to debug it?

from operator-lifecycle-manager.

 avatar commented on May 29, 2024

@ecordell I have the same results with OpenShift 4.0 deployed to AWS. A CSV gets created, but nothing happens and there's no status for it. Can you help me understand what's missing?

This is the yaml that I apply https://github.com/eclipse/che-operator/tree/0.3.0/olm-catalog

In fact, it happens if I grab any csv from https://github.com/operator-framework/community-operators

Yes, I understand that it should fail because conditions are not satisfied without sa, crd etc. But there's no status and a message saying that.

from operator-lifecycle-manager.

ecordell avatar ecordell commented on May 29, 2024

Can you explain how you deployed OLM? To me it seems that OLM is not configured to watch the namespace you’re creating resources in.

If you could share the olm-operator deployment that would be very helpful

from operator-lifecycle-manager.

 avatar commented on May 29, 2024

This time, it's OpenShift 4.0, so it was deployed as part of installation I suppose. Which exact deployment is in question?

image

from operator-lifecycle-manager.

ecordell avatar ecordell commented on May 29, 2024

from operator-lifecycle-manager.

 avatar commented on May 29, 2024

That I don't know - it was installed like a week ago, probably built from master.

Creating csv in openshift-operator namespace has the same effect, ie no effect.

from operator-lifecycle-manager.

 avatar commented on May 29, 2024

@ecordell update. Installer version 0.9.1

But I have the same results when deploying the latest OLM in OKD 3.11.

from operator-lifecycle-manager.

 avatar commented on May 29, 2024
time="2019-01-22T15:23:49Z" level=info msg="getting from queue" key=openshift-operators/cheoperator.v0.0.1 queue=/clusterserviceversions
--
  | time="2019-01-22T15:23:49Z" level=info msg="not in operatorgroup namespace, skipping" csv=cheoperator.v0.0.1 namespace=openshift-operators

Wrong namespace?

from operator-lifecycle-manager.

 avatar commented on May 29, 2024

@ecordell I am trying a different namespace:


time="2019-01-22T15:41:25Z" level=info msg="openshift-operator-lifecycle-manager/cheoperator.v0.0.1 added"
--
  | time="2019-01-22T15:41:25Z" level=info msg="getting from queue" key=openshift-operator-lifecycle-manager/cheoperator.v0.0.1 queue=/clusterserviceversions
  | time="2019-01-22T15:41:25Z" level=info msg="not in operatorgroup namespace, skipping" csv=cheoperator.v0.0.1 namespace=openshift-operator-lifecycle-manager phase=
  | time="2019-01-22T15:41:25Z" level=warning msg="installmodes not supported" csv=cheoperator.v0.0.1 err="SingleNamespace InstallModeType not supported, cannot configure to watch one namespace" namespace=openshift-operator-lifecycle-manager opgroup=olm-operators phase=

from operator-lifecycle-manager.

 avatar commented on May 29, 2024

The solution was to add:

  installModes:
    - supported: true
      type: OwnNamespace
    - supported: true
      type: SingleNamespace
    - supported: true
      type: MultiNamespace
    - supported: true
      type: AllNamespaces

However, memcached example in the Getting Started guide does not have install modes. Should it perhaps be updated or it's me who's doing smth wrong?

from operator-lifecycle-manager.

ecordell avatar ecordell commented on May 29, 2024

from operator-lifecycle-manager.

 avatar commented on May 29, 2024

@ecordell i got it to work on 3.11 :)

  1. Install OKD 3.11
  2. Deploy OLM
  3. Try memcached csv

from operator-lifecycle-manager.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.