OpenShift容器中读取Project信息

背景
在日常运维管理中,经常需要获取OpenShift集群资源的信息,甚至创建、编辑或删除资源。我们都很清楚,使用oc命令就能够非常方便地完成这些操作。但是有时,我们希望通过调用接口来实现,以便于与其它组件或者应用进行集成。那么我们该如何做呢?本篇就以读取Project信息为例,展示如何通过HTTP请求操作OpenShift的资源。
操作
- 首先需要创建具有读取Project信息权限的clusterrole project_view
1 | cat <<EOF | oc create -f - |
- 为需要调用的应用POD添加获取Project信息的权限
1 | oc adm policy add-cluster-role-to-user project_view -z default |
为所有应用授予获取Project信息的权限
1 | oc adm policy add-cluster-role-to-group project_view system:serviceaccounts |
- 通过发送serviceaccount认证信息,应用Pod实例中便可通过HTTP请求获取Project信息
1 | $ TOKEN=$(cat /run/secrets/kubernetes.io/serviceaccount/token) |
- 完成
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Michael Blog!
