首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kubernetes在尝试使用这些资源应用资源之前,等待apiVersion和种类存在。

Kubernetes在尝试使用这些资源应用资源之前,等待apiVersion和种类存在。
EN

Stack Overflow用户
提问于 2019-01-18 09:04:40
回答 1查看 164关注 0票数 2

在尝试使用这些资源之前,我如何检查和/或等待apiVersion和种类的存在?

示例:

使用纤毛安装纤毛和网络策略

代码语言:javascript
复制
kubectl apply -f cilium.yaml
kubectl apply -f policy.yaml # fails if run just after installing cilium, since cilium.io/v2 and CiliumNetworkPolicy doesn't exist yet

https://github.com/cilium/cilium/blob/master/examples/kubernetes/1.13/cilium.yaml

policy.yaml

代码语言:javascript
复制
apiVersion: cilium.io/v2
description: example policy
kind: CiliumNetworkPolicy
...

编辑:(用以下脚本解决)

代码语言:javascript
复制
#! /bin/bash

function check_api {
    local try=0
    local retries=30
    until (kubectl "api-$1s" | grep -P "\b$2\b") &>/dev/null; do
        (( ++try > retries )) && exit 1
        echo "$2 not found. Retry $try/$retries"
        sleep 3
    done
}

kubectl apply -f cilium.yaml
check_api version cilium.io/v2
check_api resource CiliumNetworkPolicy
kubectl apply -f policy.yaml
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-01-18 09:50:43

您可以使用以下方法检查所支持的版本和种类,即检查与您交谈的API服务器所支持的是什么:

代码语言:javascript
复制
$ kubectl api-versions
admissionregistration.k8s.io/v1beta1
apiextensions.k8s.io/v1beta1
...
storage.k8s.io/v1
storage.k8s.io/v1beta1
v1

还有一个kubectl api-resources,它为您提供了关于资源的种类、短名称以及是否有名称空间的表格式概述。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54250629

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档