Operator Lifecycle Manager

Operator Lifecycle Manager 缩写 OLM

官网上的工作流


OLM 负责管理非默认 operator 即从 Operator Hub 里安装来的Operator

查看OLM 状态.

oc get clusteroperator

如果这三个的状态有误, 就有可能是subs, csv, installplan出现问题 或者 错误配置OLM

命名空间 openshift-operator-lifecycle-manager

oc get all -n openshift-operator-lifecycle-manager

查看这两个 pod 详情

oc describe pod/catalog-operator-xxxxxxxxx-xxxxx -n openshift-operator-lifecycle-manager
oc describe pod/olm-operator-xxxxxxxxx-xxxxxx -n openshift-operator-lifecycle-manager

查看 Conditions

查看logs, 去看哪里失败了

oc logs catalog-operator-xxxxxxxx-xxxxx -n openshift-operator-lifecycle-manager
oc logs olm-operator-xxxxxxxx-xxxxx -n openshift-operator-lifecycle-manager

Cluster Service Version (csv) 集群服务版本

csv 是一个 yaml 文件, 用来协助 OLM去运行集群中的 Operator
也用于在用户界面添加信息,比如说版本,描述,logo

oc get csv

查看是所有的
查看 csv

也可以查看这个operator 的 pod , 以此来找到命名空间

oc get pods -A | grep <csv name>

oc get csv -o yaml

Subscription 查看订阅状态

oc get subs -n <operator namespace>

以我的为例

oc describe sub < package name > -n < operator namespace >

查看 Condition , 确实所有的CatalogSource 健康
状态是 false 说明所有

再或者, 查看 sub

oc get subs -n <operator namespace>

oc get subs <subname> -o yaml -n < operator namespace>

installplan

查看 operator 是手动更新还是自动更新

oc get installplan -A

installplan 也是表现着订阅状态的

Subs 里面也包含了 installplan 信息

oc get subs <subname> -o yaml -n < operator namespace>


或者查看 InstallPlan 的状态中的错误

apiVersion: operators.coreos.com/v1
kind: InstallPlan
status:conditions:- lastTransitionTime: "2019-07-26T21:13:10Z"lastUpdateTime: "2019-07-26T21:13:10Z"message: 'error creating clusterrole etcdoperator.v0.9.4-clusterwide-dsfx4: clusterroles.rbac.authorization.k8s.iois forbidden: User "system:serviceaccount:scoped:scoped" cannot create resource"clusterroles" in API group "rbac.authorization.k8s.io" at the cluster scope'reason: InstallComponentFailedstatus: "False"type: Installedphase: Failed

如果是因为缺少权限而导致 operator 安装失败, 可能会出现以上错误

故障排除 OpenShift Operator (OLM) (非集群默认的 Operator)相关推荐

  1. OpenShift 4 - 利用 File Integrity Operator 实现对集群节点进行入侵检测

    <OpenShift / RHEL / DevSecOps 汇总目录> 说明:本文已经在OpenShift 4.9环境中验证 文章目录 File Integrity Operator 功能 ...

  2. Quartz的集群模式和单机模式共存-让一个非集群的Quartz与集群节点并行着运行

    假如你让一个非集群的 Quartz 应用与集群节点并行着运行,设法使用 JobInitializationPlugin和 RAMJobStore Quartz支持可选节点执行job quartz集群, ...

  3. 2021-05-12 MongoDB面试题 应该启动一个集群分片(sharded)还是一个非集群分片的 MongoDB 环境

    我应该启动一个集群分片(sharded)还是一个非集群分片的 MongoDB 环境? 为开发便捷起见,我们建议以非集群分片(unsharded)方式开始一个 MongoDB 环境,除非一台服务器不足以 ...

  4. Redis 基础 - 优惠券秒杀《非集群》

    参考 Redis基础 - 基本类型及常用命令 Redis基础 - Java客户端 Redis 基础 - 短信验证码登录 Redis 基础 - 用Redis查询商户信息 摘要 用Redis生成保证唯一性 ...

  5. operator部署redis集群

    operator部署redis集群 1.现在operator的redis相关包 git clone https://github.com/ucloud/redis-cluster-operator.g ...

  6. minio非集群双机热备

    minio非集群双机热备 常规minio文件同步,都是使用minio做集群处理,但是如果实际生产环境条件达不到官方推荐的四节点,保证2n+1节点存活,也就说最低要求4台服务器文件存储专用 但是如果项目 ...

  7. oracle集群+默认什么组,Oracle RAC 建设过程中必须应知、应做(上)

    原标题:Oracle RAC 建设过程中必须应知.应做(上) 作者:赵海,某城商行系统架构师,专注并擅长银行数据中心解决方案规划及设计.目前在社区会员关注TOP100排行榜中名列第三位,社区专业技能榜 ...

  8. OpenShift 4 之升级集群

    <OpenShift 4.x HOL教程汇总> 有关OpenShift 4集群的升级说明可参见以下两个文档: <OpenShift 4 之集群是如何通过Cluster Version ...

  9. 通过operator部署redis集群(ucloud版)

    operator部署有状态的应用会简单很多 github文档:https://github.com/ucloud/redis-cluster-operator#deploy-redis-cluster ...

最新文章

  1. linux在多核处理器上的负载均衡原理
  2. HDU2680(SPFA算法)
  3. Tensorflow MNIST浅层神经网络的解释和答复
  4. 按键精灵脚本 php,HTML_按键精灵 脚本-学习VBS的一个不错的教程,今天我就从总体上对VBS进行介 - phpStudy...
  5. java的单例设计模式
  6. [HDU 1427]速度计算24点(DFS暴力搜索)
  7. C++设计模式--状态模式(state)
  8. matlab如何读取csv,Matlab:如何读取CSV文件以及如何读取带有字符串数据项的CSV文件 | 学步园...
  9. mongoose在子文档的array里update或insert
  10. CSS教程--CSS 属性选择器
  11. Yaksa让你抛弃Adapter和ViewHolder写RecyclerView
  12. 《算法导论》第十四章----数据结构的扩张(动态顺序统计)
  13. 文献管理三剑客之noteexpress打不开 cannot find import; dll may be missing corrupt or worng
  14. sever2008 ad用户和计算机不见,windows-server-2008 – 当我使用Powershell将用户添加到安全组时,它们不会显示在AD中...
  15. 自动化测试之—Hamcrest匹配器
  16. 电阻分压可以当作电源供电吗
  17. React组件化开发
  18. mybatis 逆向工程 思维导图
  19. secureCRT无法输入
  20. 在anaconda中git找不到命令,可能是设置的git环境变量路径包含中文

热门文章

  1. svg标签和svg文件区别_SVGO减少SVG文件大小的三种方法
  2. 【操作系统】计算机中内存、cache和寄存器之间的关系及区别
  3. react创建动态表格_教程:使用React创建电子表格
  4. 【827. 最大人工岛】
  5. 无线摄像头接有线如何改协议_一对无线网桥能传几个摄像机图像?1公里的无线网桥能传8个400万摄像机吗?...
  6. I - Fire Game
  7. python输出回车_Python print 如何换行输出?
  8. 基于Labview李萨如图形的绘制
  9. TypeError: load() missing 1 required positional argument: ‘Loader‘解决方案
  10. C++STL(标准模板库)学习