如果 Helm 部署的状态为failed,我该如何确定导致其失败的原因?
我使用 secp256k1 生成了密钥和证书,运行rke版本 v1.2.8,并收到以下错误:
FATA[0000] Failed to read certificates from dir [/home/max/cluster_certs]: failed to read certificate [kube-apiserver-requestheader-ca.pem]: x509: unsupported elliptic curve
Run Code Online (Sandbox Code Playgroud)
kubectl version:
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.1", GitCommit:"5e58841cce77d4bc13713ad2b91fa0d961e69192", GitTreeState:"clean", BuildDate:"2021-05-12T14:18:45Z", GoVersion:"go1.16.4", Compiler:"gc", Platform:"linux/amd64"}
Run Code Online (Sandbox Code Playgroud)
我已经通过以下方式生成了根 CA 密钥和证书:
openssl ecparam -name secp256k1 -genkey -noout -out ca-pvt.pem -rand random.bin -writerand random.bin
openssl req -config .\openssl.cnf -x509 -sha256 -new -nodes -key ca-pvt.pem -days 10227 -out ca-cert.cer -rand random.bin -writerand random.bin
Run Code Online (Sandbox Code Playgroud)
然后我用它来签署由rke cert generate-csr我的 Kubernetes Rancher生成的 CSR cluster.yml …
我希望输出 Kubernetes 中所有用户帐户的逗号分隔列表。
据我了解,可以使用“kubectl get namespace”和“kubectl get pods”命令从 Kubernetes 返回命名空间、pod 等的列表。但是,是否有等效的方法可以返回 Kubernetes 用户列表?
目前,我可以通过我们的管理平台 Rancher 从 Kubernetes 中查看所有用户帐户及其各自的姓名、电子邮件和 ID 的列表,但问题是,我似乎找不到返回逗号的方法 -通过 Kubectl 或 Powershell 通过命令行分隔这些用户的列表。
我正面临Rancher和Docker的另一个问题.
我已经安装了Rancher Server,然后使用Rancher Server提供的命令在另一台服务器上安装了Rancher Agent.我可以看到主机部分中的节点,但是每隔5分钟,牧场主会向节点显示消息"重新连接".
我检查了牧场服务器日志,它显示以下内容:
[i.c.p.a.s.ping.impl.PingMonitorImpl ] Failed to get ping from agent [6] count [3]
Run Code Online (Sandbox Code Playgroud)
而且没有更多信息.
你能否对这个问题有所了解?
谢谢
我运行Jenkins并且我的应用程序是dockerized,即当我运行容器时它暴露了端口3000,我可以指向我的浏览器.在每个Github PR上,我想将git提交部署到某个正在运行的容器中,并让Jenkins将可以访问它的链接发回PR.在任何PR更新中,它会自动重新部署,并且在PR关闭/解析时会被拆除.
我看过kubernetes和一个小牧场主,但是假设我只能部署到一个盒子里,最简单的方法是什么呢?
我有一个奇怪的问题,没有想法可能是错的,所以也许在这里写它可以帮助我提出想法.或者有人可以帮助我:)
我有一个在牧场主运行的Django网站,过去几周我发现电子邮件无效.超时错误被提出.我使用mailgun.org作为SMTP服务器.
这是从牧场主容器控制台输出的:
/app/app # ipython
Python 2.7.14 (default, Dec 19 2017, 22:36:09)
Type "copyright", "credits" or "license" for more information.
IPython 5.5.0 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object', use 'object??' for extra details.
In [1]: from smtplib import SMTP
In [2]: smtp = SMTP(host='smtp.mailgun.org', port=587)
Run Code Online (Sandbox Code Playgroud)
它只是挂起.添加超时当然会引发超时.
我猜想mailgun有问题.但是在本地运行相同图像上的相同代码(commit-hash匹配rancher容器上的代码).
docker run -ti registry.gitlab.com/namespace/app:commit-hash /bin/sh
/app/app # ipython …Run Code Online (Sandbox Code Playgroud) 我尝试安装Rancher v1.3.1并启用Kubernetes环境,安装似乎没问题,但是当我导航到Dashboard但结果是空白页面时,我检查2部署:kubernetes-dashboard和tiller-deploy每次使用日志重启:
初始化与Kubernetes apiserver的连接时出错.这很可能意味着群集配置错误(例如,它具有无效的apiserver证书或服务帐户配置)或--apiserver-host参数指向不存在的服务器.原因:获取https://10.43.0.1:443/version:拨打tcp 10.43.0.1:443:i/o超时
我不知道为什么,请帮助我
我不知道为什么kubernetes服务公开10.43.0.1:443属于不同的命名空间(默认)与其他人(kube系统)
我想从 docker 容器访问 Windows 文件共享共享 (SMB3),但我不想损害主机的安全性。我读过的所有指南都表明我需要使用标志--privileged或--cap-add SYS_ADMIN功能。
这是我使用的命令:
mount -t cifs -o 用户名='some_account@mydomain.internal',password='some_password' //192.168.123.123/MyShare /mnt/myshare
结果是消息:
无法应用新的功能集。
当我应用该--cap-add SYS_ADMIN功能时,挂载命令工作正常,但我知道这会使主机面临明显的安全漏洞。
我还阅读了此 StackOverflow 问题(在 Docker 容器中安装 SMB/CIFS 共享)中的建议,将卷本地安装在运行 docker 的服务器上。这是不可取的,原因有两个,首先,容器是由 Rancher Kubernetes 集群编排的,我不知道如何使用 Rancher 实现 nPcomp 所描述的内容,其次,这意味着 docker 主机可以访问该卷。我希望只有容器可以通过秘密提供的凭据访问此共享。
我的问题是:有没有办法在 docker 容器(在 Kubernetes 内)中挂载 CIFS/SMB3 共享,而不会让主机面临权限提升漏洞并保护凭据?非常感谢。
我刚刚开始使用 Rancher,并请求纠正我任何错误的术语。
早些时候,我在 Macbook 上使用 minikube,它提供了 SSH,可以轻松用于minikube ssh故障排除。因为我是 Rancher Desktop 的新手,并且想在 Rancher Desktop 节点上进行类似于 minikube 的 SSH。
我用谷歌搜索了同样的内容,但不幸的是我没有得到任何有效的答案。提前致谢。
rancher ×10
kubernetes ×7
docker ×5
jenkins ×1
k3s ×1
kubectl ×1
mailgun ×1
mount ×1
pull-request ×1
rancher-rke ×1
smb ×1
smtplib ×1
swarm ×1