Questions tagged «kubernetes»

Kubernetes是Docker容器的开源编排系统。它处理到计算群集中节点的调度,并主动管理工作负载以确保其状态与用户声明的意图匹配。它使用“标签”和“吊舱”的概念,将组成应用程序的容器分为逻辑单元,以便于管理和发现。

3
Kubernetes停留在ContainerCreating上
运行创建后,我的Kubernetes集群中的pod停留在“ ContainerCreating”上。我如何查看此操作的日志以诊断其原因?kubectl logs由于容器需要处于非挂起状态,因此似乎无法正常工作。
99 kubernetes 

4
为什么在Kubernetes上禁用交换
从Kubernetes 1.8开始,看来我需要在节点上禁用交换(或设置--fail-swap-on为false)。 我找不到Kubernetes坚持禁用交换的技术原因。这是出于性能原因吗?安全原因?为什么没有记录此原因?
35 kubernetes  swap 

3
是否可以重新运行kubernetes作业?
我具有以下Kubernetes作业配置: --- apiVersion: batch/v1 kind: Job metadata: name: dbload creationTimestamp: spec: template: metadata: name: dbload spec: containers: - name: dbload image: sdvl3prox001:7001/pbench/tdload command: ["/opt/pbench/loadTpcdsData.sh", "qas0063", "dbc", "dbc", "1"] restartPolicy: Never imagePullSecrets: - name: pbenchregkey status: {} 当我完成kubectl create -f dbload-deployment.yml --record工作并创建一个pod时,Docker容器运行完毕,并且我得到以下状态: $ kubectl get job dbload NAME DESIRED SUCCESSFUL AGE …

3
我如何知道何时/是否/为什么要重启kubernetes集群中的容器?
我在Google容器引擎中有一个单节点kubernetes集群可以玩。 现在两次,我在其中托管的一个小型个人网站已经离线了几分钟。当我查看容器的日志时,我看到最近完成的正常启动顺序,因此我假设一个容器已死亡(或被终止?)并重新启动。 我如何找出这种情况的发生方式和原因? 每当容器意外启动/停止时,是否有办法获得警报?

5
在没有负载均衡器的情况下公开Goog​​le Container Engine上的端口80和443
目前,我正在从事一个小型的业余项目,一旦准备好,我将使其开源。此服务正在Google Container Engine上运行。我选择GCE是为了避免配置麻烦,成本负担得起并学习新东西。 我的Pod运行正常,我创建了一个服务,其类型LoadBalancer可以在端口80和443上公开该服务。这完美地工作了。 但是,我发现对于每种LoadBalancer服务,都会创建一个新的Google Compute Engine负载均衡器。这个负载均衡器非常昂贵,对于单个实例上的一个业余项目而言,确实已经完成了。 为了降低成本,我正在寻找一种无需负载均衡器即可暴露端口的方法。 到目前为止,我已经尝试过: 部署NodePort服务。不幸的是,不允许将端口号暴露在30000以下。 部署一个Ingress,但这也会创建一个负载平衡器。 尝试禁用HttpLoadBalancing(https://cloud.google.com/container-engine/reference/rest/v1/projects.zones.clusters#HttpLoadBalancing),但它仍会创建负载平衡器。 有没有办法在没有负载均衡器的情况下为Google Container Engine上的单个实例公开端口80和443?

1
创建展开时使用的规范-选择器-matchLabel是什么?
从Kubernetes文档中: 选择器字段定义了部署如何查找要管理的Pod。 但是,在创建部署时,我已经将Pod模板指定为部署的一部分。那么,为什么还要选择器呢? 它是否应该像服务一样使用,在这些服务中,pod已经单独启动,但是后来被带到Deployment的保护之下,可以一起进行管理?
18 kubernetes 

4
在Kubernetes部署规范中使用环境变量
我目前使用Kubernetes规范Deployment.yaml来部署服务。该规范包括对特定IP地址的逐字引用(标记<static-ip-address>如下): spec: type: LoadBalancer loadBalancerIP: <static-ip-address> 我担心将诸如密码或IP地址之类的信息推送到远程Git存储库中。我可以例如通过使用环境变量来避免这种情况,例如使用部署规范和实际部署大致如下: spec: type: LoadBalancer loadBalancerIP: ${SERVICE_ADDRESS} 和 export SERVICE_ADDRESS=<static-ip-address> kubectl create -f Deployment.yaml 显然,此特定语法尚不可用。但是这样的事情有可能吗? 我宁愿不要依赖单独的配置工具。秘密 S和ConfigMap小号似乎前途无量,但显然他们不能在适合这个目的的方式被消耗掉。如果我可以直接引用用它定义的静态IP地址,gcloud compute addresses create service-address那将是最佳选择。

2
如何在Google Kubernetes Engine中选择Kubernetes负载均衡器的外部IP地址
我正在使用Google Kubernetes Engine部署网络应用,并且希望通过负载均衡器访问它,而该负载是我作为Google Cloud Platform中同一项目的一部分而控制的现有静态IP地址的,已经指向该IP。 我用于广告连播的yaml文件是: apiVersion: v1 kind: Pod metadata: name: my-pod labels: app: my-app spec: containers: - name: my-container image: gcr.io/my-project/my-app:latest 我可以使用以下方法设置负载均衡器: apiVersion: v1 kind: Service metadata: name: my-load-balancer spec: ports: - port: 80 targetPort: 80 selector: app: my-app type: LoadBalancer 这提供了可在其上访问该应用程序的外部IP,但是我找不到任何将其配置为使用所需IP的方法。该服务的文件提到了spec.clusterIP设置,但这似乎并没有涉及到的外部IP。同样,一旦设置了负载平衡器,该服务的status.loadBalancer.ingress.ip字段便被设置为其外部IP地址,但这似乎不是可配置的设置。 或者,我尝试在Google Compute Engine控制台中手动创建转发规则,以将流量从我的静态IP地址引导到Kubernetes设置的目标池,但是当我尝试连接时,连接被拒绝。 有什么办法可以做-在选定的静态IP地址上在Google Kubernetes引擎上公开Kubernetes pod(或复制控制器)?

1
后退重启失败的容器-Minikube中的Pod同步错误
尝试创建广告连播时遇到此错误。它甚至与非常常见的映像(例如Ubuntu,Alpine)一起发生。我对Kubernetes相当陌生,并使用Minikube Node(v0.24.1版本) 命令: kubectl run ubuntu --image==ubuntu 错误: Back-off restarting failed container - Error syncing pod 版本: Client Version: version.Info{Major:"1", Minor:"8", GitVersion:"**v1.8.0**", GitCommit:"6e937839ac04a38cac63e6a7a306c5d035fe7b0a", GitTreeState:"clean", BuildDate:"2017-09-28T22:57:57Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"} Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"**v1.8.0**", GitCommit:"0b9efaeb34a2fc51ff8e4d34ad9bc6375459c4a4", GitTreeState:"clean", BuildDate:"2017-11-29T22:43:34Z", GoVersion:"go1.9.1", Compiler:"gc", Platform:"linux/amd64"} 描述Pod命令: Name: ubuntunew-7567df64b8-mwc7x Namespace: default Node: minikube/192.168.99.102 Start Time: Tue, 31 …
15 kubernetes 

3
如何在Kubernetes Pod中使用特定的UID挂载卷?
因此,我正在尝试根据Kubernetes中的此映像来运行Nexus ,但是失败了: mkdir: cannot create directory '../sonatype-work/nexus3/log': Permission denied mkdir: cannot create directory '../sonatype-work/nexus3/tmp': Permission denied Java HotSpot(TM) 64-Bit Server VM warning: Cannot open file ../sonatype-work/nexus3/log/jvm.log due to No such file or directory 从文档中可以看出,该进程以UID 200运行,并且必须使用以下许可权挂载该卷: A persistent directory, /nexus-data, is used for configuration, logs, and storage. This directory needs to …

4
如何找到分配给新创建的AKS群集的服务主体?
我刚刚使用standard创建了AKS集群az aks create ... --ssh-key-value ...。根据https://docs.microsoft.com/zh-CN/azure/aks/kubernetes-service-principal, 将创建一个AKS群集,并且由于未指定现有服务主体,因此将为该群集创建一个服务主体。 在哪里可以找到创建的SP?谢谢
13 azure  kubernetes 

1
正常关闭Kubernetes集群
我们有一个4节点的Kubernetes集群,它使用Juju 2.0和官方规范的Kubernetes魅力安装。此非常本地和私有安装的唯一目的是开发和测试。 此安装的最大问题和记录在案的问题之一是完全缺少正常的服务器关闭过程。仅当etcd节点出现故障时,整个配置才会丢失。 我们花费了大量时间来寻找Kubernetes的自动备份/还原脚本/过程。解决该问题的最常见方法是在每次启动时使用Juju从头开始部署服务器。给予30-35分钟。部署时间似乎不是一个有吸引力的解决方案? 您是否对这个问题有任何可行的解决方案?


3
Amazon EKS上的Horizo​​ntalPodAutoscaling
尝试在Amazon EKS上设置Horizo​​ntalPodAutoscaler时,总是显示TARGETS列,<unknown>/50%并且在描述HPA时,我看到 警告FailedGetResourceMetric 17s(1小时x50)horizo​​ntal-pod-autoscaler无法获取资源cpu的度量标准:无法从资源度量标准API获取度量标准:服务器找不到请求的资源(获取pods.metrics.k8s.io) 我在其他站点上找到了多个关于类似问题的帖子,提到--horizontal-pod-autoscaler-use-rest-clients在kube-controller-manager上使用,但是我找不到改变EKS集群的kube-controller-manager上的设置的方法,因为看来您无法SSH进入用于管理的主节点,而kube-controller-manager并未列为系统中任何地方的资源。 我尝试按照https://github.com/kubernetes-incubator/metrics-server上的说明手动设置指标服务器,但在这种情况下,我显示EKS没有提供验证API所需的配置映射扩展名Could not create the API server: configmaps "extension-apiserver-authentication" not found

4
Kubernetes始终会因多个TLS入口而暂时无法提供503服务
我在Amazon Web Services上通过kops设置了kubernetes集群 我有2个网站设置。一个通过SSL / TLS / https保护,另一个仅通过http保护。两者都是Wordpress网站。域已更改以保护站点身份 入口配置: apiVersion: extensions/v1beta1 kind: Ingress metadata: name: my-rules spec: tls: - hosts: - site1.com secretName: site1-tls-secret - hosts: - www.site1.com secretName: site1-tls-secret rules: - host: site1.com http: paths: - path: / backend: serviceName: site1 servicePort: 80 - host: www.site1.com http: paths: - …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.