首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >InSpec Kubernetes资源包Ruby错误

InSpec Kubernetes资源包Ruby错误
EN

Stack Overflow用户
提问于 2021-02-26 18:39:36
回答 1查看 92关注 0票数 0

尝试开始使用inspec测试kubernetes:https://github.com/bgeesaman/inspec-k8s

我在这里找到的makedocker镜像中运行它:https://github.com/bgeesaman/inspec-k8s-sample

我有多个eks集群和一个本地docker-desktop集群。当我尝试通过:inspec exec . -t k8s://docker-desktop (将kubeconfig -name: xxx与放在k8s://之后的值匹配)连接到其中任何一个时,我总是得到相同的错误:

代码语言:javascript
复制
# inspec exec -t k8s://docker-desktop
Traceback (most recent call last):
        20: from /usr/local/bundle/bin/inspec:23:in `<main>'
        19: from /usr/local/bundle/bin/inspec:23:in `load'
        18: from /usr/local/bundle/gems/inspec-bin-4.18.51/bin/inspec:11:in `<top (required)>'
        17: from /usr/local/bundle/gems/inspec-4.18.51/lib/inspec/base_cli.rb:35:in `start'
        16: from /usr/local/bundle/gems/thor-0.20.3/lib/thor/base.rb:466:in `start'
        15: from /usr/local/bundle/gems/thor-0.20.3/lib/thor.rb:387:in `dispatch'
        14: from /usr/local/bundle/gems/thor-0.20.3/lib/thor/invocation.rb:126:in `invoke_command'
        13: from /usr/local/bundle/gems/thor-0.20.3/lib/thor/command.rb:27:in `run'
        12: from /usr/local/bundle/gems/inspec-4.18.51/lib/inspec/cli.rb:284:in `exec'
        11: from /usr/local/bundle/gems/inspec-4.18.51/lib/inspec/cli.rb:284:in `new'
        10: from /usr/local/bundle/gems/inspec-4.18.51/lib/inspec/runner.rb:78:in `initialize'
         9: from /usr/local/bundle/gems/inspec-4.18.51/lib/inspec/runner.rb:86:in `configure_transport'
         8: from /usr/local/bundle/gems/inspec-4.18.51/lib/inspec/backend.rb:53:in `create'
         7: from /usr/local/bundle/gems/train-kubernetes-0.1.6/lib/train-kubernetes/transport.rb:9:in `connection'
         6: from /usr/local/bundle/gems/train-kubernetes-0.1.6/lib/train-kubernetes/transport.rb:9:in `new'
         5: from /usr/local/bundle/gems/train-kubernetes-0.1.6/lib/train-kubernetes/connection.rb:13:in `initialize'
         4: from /usr/local/bundle/gems/train-kubernetes-0.1.6/lib/train-kubernetes/connection.rb:36:in `parse_kubeconfig'
         3: from /usr/local/bundle/gems/k8s-ruby-0.10.5/lib/k8s/client.rb:40:in `config'
         2: from /usr/local/bundle/gems/k8s-ruby-0.10.5/lib/k8s/transport.rb:81:in `config'
         1: from /usr/local/bundle/gems/k8s-ruby-0.10.5/lib/k8s/transport.rb:117:in `token_from_exec'
/usr/local/bundle/gems/k8s-ruby-0.10.5/lib/k8s/transport.rb:117:in ``': No such file or directory - aws (Errno::ENOENT)

我认为这是因为eks kubeconfigs链接到了亚马逊网络服务的个人资料。但是我在docker- well上也得到了同样的错误。

我尝试使用以下命令更新Makefile COMMANDCOMMAND=docker run --rm -it -v pwd:$(WORKDIR) -v $(HOME)/.kube:/root/.kube:ro -v $(HOME)/.aws:/root/.aws:ro

之后,错误以No such file or directory - aws结束,但没有任何快乐。

有什么办法可以解决或者进步吗?

谢谢

小更新,它确实在确保名称正确后开始运行。但后来又停了下来..

我已经连接到docker- when (当我最初运行它时,它还没有运行)我已经连接到了一个eks集群

我做了一个vi controls/basic.rb来开始看,玩我的测试,它又开始出错了。

我认为这可能是由于我的更改的语法问题而导致的错误,所以我创建了一个新的make build,但现在仍然没有什么好处:(

我还尝试将chef/inspec镜像更新到最新的4.26,但这破坏了dockerfile,因为它不再有apk

EN

回答 1

Stack Overflow用户

发布于 2021-02-26 19:28:28

好吧,我不明白,但我可以让它运行:

它看起来像是使用kubectx链接到即时通信工具。如果我将kubectx设置为docker-desktop,然后运行docker镜像,它就能正常工作。如果设置为其他值,则不会。

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

https://stackoverflow.com/questions/66384257

复制
相关文章

相似问题

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