问题标签 [k3s]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
k3s - k3s中如何自定义kubeconfig服务器IP
我使用以下命令安装 K3s
安装成功后查看kubeconfig时发现使用的服务器IP为127.0.0.1
我希望集群的 serverIP 是主机 IP:6443而不是127.0.0.1:6443,这将有助于其remote use
.
如何设置启动?
如果您能告诉我如何解决它,我将不胜感激?
kubernetes - K3s traefik 入口返回网关超时
我目前正在使用基于 rpi 的 k3s 集群,我正在观察一个奇怪的现象。
我部署了两个应用程序。第一个是 nginx,我可以根据以下入口规则在 url http://external-ip/foo上访问它:
另一个是 grafana,根据以下入口规则,我无法在 url http://external-ip/grafana上访问它:
当我直接在 pod 上进行端口转发时,我可以访问 grafana 应用程序,当我在 grafana 服务上使用端口转发时,它也可以工作。
但是,一旦我尝试通过子路径到达它,我就会得到网关超时。
有人猜我错过了什么吗?
这里是grafana部署的部署和服务:
解决方案
我必须将以下两个参数添加到我的 configmap 以使其工作:
mysql - 安装 k3s 时超出名称服务器限制
我想在 Ubuntu 服务器(v18.04)中安装 Rancher。我正在关注这个文档,我想安装 k3s。当我使用命令安装时
一切正常。
但是当我尝试使用 MySQL 数据库安装它时,文档说:
我收到以下错误:
MySQL 服务器运行没有问题,我已经创建了 dbk3s 数据库。看起来问题与 Ubuntu 仅限于 3 个 DNS 名称服务器记录和 6 个 DNS 搜索记录有关,但我不确定。
ssl - K3s 入口 TLS 启用访问启用 TLS 的后端,如何?
我有一个带有 traefik 入口控制器的本地 K3s kubernetes 集群。
(Mac OSX,基于 Multipass Hyper-V 的本地虚拟机v1.18.3+k3s1 Ubuntu 16.04.6 LTS 4.4.0-179-generic containerd://1.3.3-k3s2
:)
我想要的是启用 tls 的入口并通过 tls/https 转发到保险库端口 8200
我通过 helm chart 独立 vault(非开发模式)部署 vault 并启用了 tls(values.yaml 见下文)
Vault 的证书由 k3s 自己签名:kubectl -n "${NAMESPACE}" certificate approve "${CSR_NAME}"
现在我可以通过以下方式直接访问保管库服务:
现在我想要的是有一个启用 tls 的入口并通过 tls/https 转发到保险库端口 8200
所以我有
helm vault values.yaml
有什么想法吗?
kubernetes - 在 K3s Kubernetes 中创建 NFS 共享的链接
我对 Kubernetes 很陌生,试图让 node-red 在一个小的树莓派集群上运行,我很高兴地做到了,但注意到一旦集群关闭,下次我启动它时,节点中的流量 -红色消失了。
所以,我在本地网络的 freenas 盒子上创建了一个 NFS 共享,并且可以从另一个 RPI 挂载它,所以我知道权限有效。
但是,我无法让我的挂载在 kubernetes 部署中工作。
请问我哪里出错了有什么帮助吗?
我得到的错误是
新的消息
我现在有以下
声明.yaml
现在,当我开始部署时,它会永远等待挂起,我看到以下 PVC 的事件
事件:Type Reason Age From Message ---- ------ ---- ---- ------- Normal WaitForFirstConsumer 5m47s(x7 over 7m3s)persistentvolume-controller等待第一个消费者被创建在绑定 Normal Provisioning 119s (x5 over 5m44s) rancher.io/local-path_local-path-provisioner-58fb86bdfd-rtcls_506528ac-afd0-11ea-930d-52d0b85bb2c2 外部配置器正在为声明“default/clusterstore-nodered-claim”配置卷之前警告 ProvisioningFailed 119s (x5 over 5m44s) rancher.io/local-path_local-path-provisioner-58fb86bdfd-rtcls_506528ac-afd0-11ea-930d-52d0b85bb2c2 无法使用 StorageClass“local-path”配置卷:仅支持 ReadWriteOnce 访问模式
正常 ExternalProvisioning 92s (x19 over 5m44s) persistentvolume-controller 等待由外部供应商“rancher.io/local-path”或由系统管理员手动创建的卷
我认为这是因为我没有 nfs 提供程序,实际上如果我执行 kubectl get storageclass 我只会看到 local-path
新问题,如何为 NFS 添加存储类?一点点谷歌搜索让我一无所知。
ssl - kubernetes“远程错误:tls:握手失败”缺少 SSL 证书
我有一个私有 docker 映像存储库,需要 SSL 证书才能访问。现在我已经尝试创建多个 kubernetes 机密(包含 docker 主机名、用户名和通行证和证书),这样我就可以从中获取带有 kubernetes 的图像,但由于缺少证书“无法提取图像 ....远程错误:tls:握手失败”。那么是否有一种特定的方式需要应用 SSL 证书才能从需要 SSL 证书的私有存储库中提取图像。
我努力了
但错误仍然存在
PS我正在使用k3s
networking - K3S Rancher - 基于 Debian 的 docker 映像无法正确解析 dns
我面临着奇怪的问题。
我做了什么:
我部署了Rancher K3S集群,但使用基于 debian 的图像解析 dns 时出现问题。域未正确解析 - 它使用我们的域之一为其添加后缀。
我发现了什么:
基于 Debian 的映像在末尾添加带域的后缀。例如,我 ping google.com 及其 ping google.com.example.com。(example.com 是我们的域之一 - 不指定它,因为它在 imo 中并不重要)
curl google.com 也同样向 example.com 的 IP 地址发出请求。甚至尝试过纯 debian 映像,它仍然在做同样的问题。
基于 Alpine 的图像工作正常(ping 到 google.com ping google.com,nslookup 显示正确的 IP 地址)。
安装 k3s 的主机服务器也可以正常工作(redhat os)。ping 到 google.com ping google.com。
一些可能对您有所帮助的额外数据:
CoreDNS configmap kubectl -n kube-system 获取 configmap coredns -o go-template={{.data.Corefile}}
有没有人遇到相同或类似的问题?你有什么要推动我解决的问题吗?
谢谢,大卫
python-3.x - 使用python3客户端通过K3s集群部署的h2o中的“错误:未加载密钥”
我可以确认 K3s 内的 3 副本 h2o 集群已正确部署,因为在 Python3 解释器中执行h2o.init(ip="x.x.x.x")
按预期工作。我按照此处所述的说明进行操作:https ://www.h2o.ai/blog/running-h2o-cluster-on-a-kubernetes-cluster/
尽管如此,我不得不修改service.yaml
并注释掉这行clusterIP: None
,因为 K3s 抱怨与无法将 clusterIP 设置为 None 相关的事情。但即便如此,我可以证明它工作正常,并且我能够使用外部 IP 连接到集群。
如果我尝试使用 K3s 集群内的 h2o 集群加载数据集,使用与此处描述的完全相同的步骤http://docs.h2o.ai/h2o/latest-stable/h2o-docs/automl.html,这就是我得到的输出:
如果我使用该h2o.upoad_file("x.csv")
方法,也会发生同样的错误。
关于这里可能发生的事情有一个线索:Key not loaded: Key<Frame> while POSTing source frame through ParseSetup in H2O API call但我没有使用 curl,我找不到任何可以帮助我克服这个问题的参数: http: //docs.h2o.ai/h2o/latest-stable/h2o-py/docs/h2o.html ?highlight=import_file#h2o.import_file
由于不同的技术原因,我需要在同一个 K3s 集群中使用 Python 客户端,因此我无法启动,也无法启动 Flow 或 Firebug 以了解可能发生的情况。
h2o.init()
当我使用本地 Java 实例简单地发出 a 时,我可以确认它工作正常。
更新 1:
我在不同的 K3s 集群中尝试过但没有成功。我将其更改service.yaml
为 NodePort,现在这是错误回溯:
更新 2:
我尝试过使用不同的服务(NodePort、LoadBalancer、ClusterIP),但它们都不起作用。我也尝试过使用Minikube
官方图像和我制作的自定义图像,但没有成功。我怀疑这与 h2o 本身或 pod 之间的集群有关。我会继续挖掘,让我们认为里面会有一些金子。
更新 3:
我还发现关于在 Docker 中运行 H2O 的帖子确实过时了https://www.h2o.ai/blog/h2o-docker/也没有在 GitHub 上工作 Dockerfile(我将其更改为取消注释 ENTRYPOINT 部分但没有成功): https://github.com/h2oai/h2o-3/blob/master/Dockerfile
尽管如此,我还是尝试了为 h2o-k8s 构建的自定义镜像,它在纯 Docker 中无缝运行。我想知道为什么它仍然无法在 K8s 中工作......
更新 4:
我尝试修改调用的环境变量H2O_KUBERNETES_SERVICE_DNS
但没有成功。
与此同时,集群开始不可用,即readinessProbe
's 不会成功完成。无论我现在改变什么,它都不起作用。
我在本地启动了一个 K3d 集群以查看发生了什么,令人惊讶readinessProbe
的是,使用v3.30.0.6
. 但现在我开始用 R 而不是 Python 来测试它。我很高兴我尝试过,因为我可能已经查明出了什么问题。客户端和服务器之间存在版本不匹配。所以我相应地将图像更新为v3.30.0.1
.
但现在又一次,readinessProbe
在我的 k3d 集群中不起作用,所以我无法测试它。
kubernetes - 我已经部署了一个 Drupal 实例,但我看到实例端点不可见,尽管容器部署成功
我已经部署了一个 Drupal 实例,但我看到实例端点不可见,尽管容器部署成功。
容器日志不指向任何方向
任何方向都非常有帮助。
注意:这在使用命令运行容器时非常有效
谢谢你,阿尼什