故障排除 OpenShift Operator (OLM) (非集群默认的 Operator)
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)相关推荐
- OpenShift 4 - 利用 File Integrity Operator 实现对集群节点进行入侵检测
<OpenShift / RHEL / DevSecOps 汇总目录> 说明:本文已经在OpenShift 4.9环境中验证 文章目录 File Integrity Operator 功能 ...
- Quartz的集群模式和单机模式共存-让一个非集群的Quartz与集群节点并行着运行
假如你让一个非集群的 Quartz 应用与集群节点并行着运行,设法使用 JobInitializationPlugin和 RAMJobStore Quartz支持可选节点执行job quartz集群, ...
- 2021-05-12 MongoDB面试题 应该启动一个集群分片(sharded)还是一个非集群分片的 MongoDB 环境
我应该启动一个集群分片(sharded)还是一个非集群分片的 MongoDB 环境? 为开发便捷起见,我们建议以非集群分片(unsharded)方式开始一个 MongoDB 环境,除非一台服务器不足以 ...
- Redis 基础 - 优惠券秒杀《非集群》
参考 Redis基础 - 基本类型及常用命令 Redis基础 - Java客户端 Redis 基础 - 短信验证码登录 Redis 基础 - 用Redis查询商户信息 摘要 用Redis生成保证唯一性 ...
- operator部署redis集群
operator部署redis集群 1.现在operator的redis相关包 git clone https://github.com/ucloud/redis-cluster-operator.g ...
- minio非集群双机热备
minio非集群双机热备 常规minio文件同步,都是使用minio做集群处理,但是如果实际生产环境条件达不到官方推荐的四节点,保证2n+1节点存活,也就说最低要求4台服务器文件存储专用 但是如果项目 ...
- oracle集群+默认什么组,Oracle RAC 建设过程中必须应知、应做(上)
原标题:Oracle RAC 建设过程中必须应知.应做(上) 作者:赵海,某城商行系统架构师,专注并擅长银行数据中心解决方案规划及设计.目前在社区会员关注TOP100排行榜中名列第三位,社区专业技能榜 ...
- OpenShift 4 之升级集群
<OpenShift 4.x HOL教程汇总> 有关OpenShift 4集群的升级说明可参见以下两个文档: <OpenShift 4 之集群是如何通过Cluster Version ...
- 通过operator部署redis集群(ucloud版)
operator部署有状态的应用会简单很多 github文档:https://github.com/ucloud/redis-cluster-operator#deploy-redis-cluster ...
最新文章
- linux在多核处理器上的负载均衡原理
- HDU2680(SPFA算法)
- Tensorflow MNIST浅层神经网络的解释和答复
- 按键精灵脚本 php,HTML_按键精灵 脚本-学习VBS的一个不错的教程,今天我就从总体上对VBS进行介 - phpStudy...
- java的单例设计模式
- [HDU 1427]速度计算24点(DFS暴力搜索)
- C++设计模式--状态模式(state)
- matlab如何读取csv,Matlab:如何读取CSV文件以及如何读取带有字符串数据项的CSV文件 | 学步园...
- mongoose在子文档的array里update或insert
- CSS教程--CSS 属性选择器
- Yaksa让你抛弃Adapter和ViewHolder写RecyclerView
- 《算法导论》第十四章----数据结构的扩张(动态顺序统计)
- 文献管理三剑客之noteexpress打不开 cannot find import; dll may be missing corrupt or worng
- sever2008 ad用户和计算机不见,windows-server-2008 – 当我使用Powershell将用户添加到安全组时,它们不会显示在AD中...
- 自动化测试之—Hamcrest匹配器
- 电阻分压可以当作电源供电吗
- React组件化开发
- mybatis 逆向工程 思维导图
- secureCRT无法输入
- 在anaconda中git找不到命令,可能是设置的git环境变量路径包含中文
热门文章
- svg标签和svg文件区别_SVGO减少SVG文件大小的三种方法
- 【操作系统】计算机中内存、cache和寄存器之间的关系及区别
- react创建动态表格_教程:使用React创建电子表格
- 【827. 最大人工岛】
- 无线摄像头接有线如何改协议_一对无线网桥能传几个摄像机图像?1公里的无线网桥能传8个400万摄像机吗?...
- I - Fire Game
- python输出回车_Python print 如何换行输出?
- 基于Labview李萨如图形的绘制
- TypeError: load() missing 1 required positional argument: ‘Loader‘解决方案
- C++STL(标准模板库)学习