是否可以将工作节点的设备端口(USB 端口)映射到 POD?相似docker create --device=/dev/ttyACM0:/dev/ttyACM0
是否可以?我检查了参考文档,但找不到任何东西。
在 Docker 服务中,是否可以映射--device port到服务容器(如果我只运行 1 个容器)?
我正在编写一个shell脚本,需要登录pod并在kubernetes pod中执行一系列命令.
下面是我的sample_script.sh
kubectl exec octavia-api-worker-pod-test -c octavia-api bash
unset http_proxy https_proxy
mv /usr/local/etc/octavia/octavia.conf /usr/local/etc/octavia/octavia.conf-orig
/usr/local/bin/octavia-db-manage --config-file /usr/local/etc/octavia/octavia.conf upgrade head
运行此脚本后,我没有得到任何输出.任何帮助将不胜感激
我尝试使用kubernetes安装dgraph(单个服务器)。现在我需要删除的是已创建的Pod。我使用kubectl delete pod pod-name删除了它,结果显示“ pod delete”,但是pod又重新创建了自己,并继续复制。我需要从Kubernetes中取出那些豆荚。我现在应该怎么做?
我有一个由虚拟机组成的自制 Kubernetes 集群。我的问题是,coredns pod 总是处于 CrashLoopBackOff 状态,过了一段时间它们又回到运行状态,因为什么也没发生。我发现但无法尝试的一个解决方案是将默认内存限制从 170Mi 更改为某些内容更高。由于我不是这方面的专家,我认为这不是一件难事,但我不知道如何更改正在运行的 pod 的配置。这可能是不可能的,但必须有一种方法可以使用新配置重新创建它们。我尝试了 kubectl 补丁,也查找了滚动更新,但我就是想不通。如何更改限制?
这是 pod 数据的相关部分:
apiVersion: v1
kind: Pod
metadata:
annotations:
cni.projectcalico.org/podIP: 176.16.0.12/32
creationTimestamp: 2018-11-18T10:29:53Z
generateName: coredns-78fcdf6894-
labels:
k8s-app: kube-dns
pod-template-hash: "3497892450"
name: coredns-78fcdf6894-gnlqw
namespace: kube-system
ownerReferences:
- apiVersion: apps/v1
blockOwnerDeletion: true
controller: true
kind: ReplicaSet
name: coredns-78fcdf6894
uid: e3349719-eb1c-11e8-9000-080027bbdf83
resourceVersion: "73564"
selfLink: /api/v1/namespaces/kube-system/pods/coredns-78fcdf6894-gnlqw
uid: e34930db-eb1c-11e8-9000-080027bbdf83
spec:
containers:
- args:
- -conf
- /etc/coredns/Corefile
image: k8s.gcr.io/coredns:1.1.3
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 5
httpGet:
path: /health
port: 8080
scheme: HTTP
initialDelaySeconds: …Run Code Online (Sandbox Code Playgroud) 我想ENV_VAR_VALUE在通过 Kubernetes 部署期间为容器设置一个环境变量(我只是命名)。
我在 pod yaml 配置中有以下内容:
...
...
spec:
containers:
- name: appname-service
image: path/to/registry/image-name
ports:
- containerPort: 1234
env:
- name: "ENV_VAR_VALUE"
value: "some.important.value"
...
...
Run Code Online (Sandbox Code Playgroud)
容器需要使用ENV_VAR_VALUE的值。
但是在容器的应用程序日志中,它的值总是为空。
所以,我尝试从容器内部检查它的值:
$ kubectl exec -it appname-service bash
root@appname-service:/# echo $ENV_VAR_VALUE
some.important.value
root@appname-service:/#
Run Code Online (Sandbox Code Playgroud)
因此,该值已成功设置。
我想这是因为在容器已经初始化之后设置了从 Kubernetes 定义的环境变量。
因此,我尝试从 pod yaml 配置中覆盖容器的 CMD:
...
...
spec:
containers:
- name: appname-service
image: path/to/registry/image-name
ports:
- containerPort: 1234
env:
- name: "ENV_VAR_VALUE"
value: "some.important.value"
command: ["/bin/bash"]
args: ["-c", …Run Code Online (Sandbox Code Playgroud) 为了设置 kubernetes,我从创建命名空间、部署、服务开始。要清理资源,我是否需要遵循任何顺序,例如先删除服务,然后是 pod,然后是部署,最后是命名空间?如何以正确的方式清理资源?因为我删除了 pods 和 service,但是我可以看到 pods,services 再次运行。它再次部署资源,所以这个问题出现在这里寻求专家的答案。
我正在尝试使用自动缩放方案(目前使用 microk8s 单节点个人集群)。
基本的 CPU 缩放工作正常。
对于更复杂的场景,我试图按照https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale-walkthrough/#autoscaling-on-multiple-metrics-and- 上的指南进行操作custom-metrics但我无法弄清楚如何/在哪里定义/记录可能的 pod 指标/对象指标。例如,.. 记录“每秒数据包数”的位置。
我可以通过 kubectl 进行导航或手动使用 REST API,但必须有更好的方法。
谢谢
apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
name: php-apache
namespace: default
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: php-apache
minReplicas: 1
maxReplicas: 10
metrics:
- type: Resource
resource:
name: cpu
target:
type: AverageUtilization
averageUtilization: 50
- type: Pods
pods:
metric:
name: packets-per-second ====> where is this name defined/documented ?
targetAverageValue: 1k
- type: Object
object:
metric:
name: requests-per-second ====> where is …Run Code Online (Sandbox Code Playgroud) 我试图找到有用的信息,我应该在什么时候使用--record. 我创建了 3 个命令:
k set image deployment web1 nginx=lfccncf/nginx:latest --recordk rollout undo deployment/web1 --recordk -n kdpd00202 edit deployment web1 --record谁能告诉我是否需要--record在这 3 个命令中的每一个中使用?
什么时候需要用--record,什么时候不用?
我在 Kubernetes 中有部署和副本集,但无法创建 pod。我试过了
kubectl describe deployment deployment-name 和
kubectl describe replicaset replicaset-name
他们都说
Conditions:
Type Status Reason
---- ------ ------
ReplicaFailure True FailedCreate
Events: <none>
Run Code Online (Sandbox Code Playgroud)
我见过的所有故障排除指南都依赖于来自事件部分的信息,但<none>在我的情况下是这样说的。如何获得更多信息来调试问题?
我正在寻求支持来调试此 Airflow KubernetesPodOperator 问题。当 Airflow 任务执行时,我们随机得到这个错误。作业即将完成,在作业执行结束时,会pods not found excception抛出异常(实际上,Airflow Task 是一个 Python 作业,已经完成了它的工作),但由于此异常,Airflow 将此作业标记为failed)。
ERROR - (404)
Reason: Not Found
HTTP response headers: HTTPHeaderDict({'Audit-Id': 'd4df122xx-bxcb-42f2-8c9e-768e9bbb00x9', 'Cache-Control': 'no-cache, private', 'Content-Type': 'application/json', 'X-Kubernetes-Pf-Flowschema-Uid': 'xxxx-xxx-xxx-xxxxxxxx', 'X-Kubernetes-Pf-Prioritylevel-Uid': 'xxxx-xxx-xxx-xxxxxxxx', 'Date': 'Sat, 17 Jul 2021 02:10:07 GMT', 'Content-Length': '258'})
HTTP response body: {"kind":"Status","apiVersion":"v1","metadata":{},"status":"Failure","message":"pods \"xxxx.6cb9f2cc66d0455c882cb5bae007ae84\" not found","reason":"NotFound","details":{"name":"xxx.6cb9f2cc66d0455c882cb5bae007ae84","kind":"pods"},"code":404}
Run Code Online (Sandbox Code Playgroud)
我们确实在 Elasticsearch Index 中保存了详细的日志,并且在那个特殊时间没有日志来调查为什么 Airflow 找不到此正在运行的作业的这些 Pod。
Airflow Kubernetes Expert 的人员能否指导正确的方向来解决和调查此问题?
kubernetes ×10
kubernetes-pod ×10
airflow ×1
autoscaling ×1
coredns ×1
docker ×1
kubectl ×1
scalability ×1
swarm ×1