Tag: kubernetes

Kubernetes在master中部署容器

我build立了一个kubernetes集群,工作正常。 到目前为止,Kubernetes也在集群中部署容器。 我不想让这个事情发生。 任何人都可以让我知道,如何防止在主人部署容器?

Kubernetes部署,Pod和Container概念

我最近开始熟悉Kubernetes,但是当我得到这个概念时,我有一些问题,我无法通过Kubernete的概念和文档来清楚地回答,还有一些我想确认的理解。 部署是在一个Pod中 部署的一组一个或多个容器映像(Docker .. etc),并通过Kubernetes Deployment Controller监视和创build,更新或删除这些部署。 Pod是一组一个或多个容器,来自同一部署的那些容器,还是可以来自多个部署? “一个荚模型包含一个或多个相对紧密耦合的应用程序容器”。 关于何时在同一个容器中部署容器,而不是单独的容器,有没有明确的标准? “Pods是可以在Kubernetes中创build和pipe理的最小可部署计算单元” – Pods,Kuberenets文档 。 这是否意味着Kubernetes API无法监视和pipe理容器(至less是直接)? 欣赏你的意见。

普罗米修斯与kubernetes上的多容器荚

我有一个在我的kubernetes部署多容器吊舱: java的 Redis的 nginx的 对于每个容器,都有一个Prometheus出口商的容器。 问题是如果注释部分每个容器只支持一个端口,我如何才能将这些端口暴露给Prometheus? annotations: prometheus.io/scrape: 'true' prometheus.io/port: 'xxxx' 但我需要这样的东西: annotations: prometheus.io/scrape: 'true' prometheus.io/port_1: 'xxxx' prometheus.io/port_2: 'yyyy' prometheus.io/port_3: 'zzzz' 也许有其他的方法来从我的多容器豆荚刮去所有的指标? 在此先感谢您提供任何帮助。

在Kubernetes群集中logging事件

Iam是Kubernetes的新成员,我必须创build一个日志logging机制来loggingKubernetes Cluster中发生的各种Pod生命周期事件。 谁能告诉我该怎么办?

为什么在本地工作的服务会在docker中频繁地获取kill信号?

我在一个minikube(kubernetes)开发环境中的Docker容器中托pipe了一个通用反应应用程序。 我使用virtualbox,实际上我在这个虚拟机上有更多的微服务。 在这个反应的应用程序中,我使用pm2重新启动我的应用程序对服务器代码的更改,并且webpack hmr热更新客户端代码更改为客户端代码。 每说15-45秒, pm2正在logging下面的消息给我,表明应用程序由于SIGKILL退出。 App [development] with id [0] and pid [299], exited with code [0] via signal [SIGKILL] 我不能为了我的生活找出它为什么发生。 这是比较频繁的,但不是每隔一秒就发生一次。 这是非常烦人的,因为每次发生,我的webpack包必须重新编译。 pm2在这种types的开发环境中可能会收到SIGKILL的原因是什么? 另外,有什么可能的方法来debugging呢? 我注意到,我的服务,使用pm2重新启动服务器更改不会有这个问题,当他们只是后端服务。 即当他们没有webpack 。 另外,我在应用程序的prod版本中看不到这些SIGKILL问题。 这对我来说,webpack hmr setup,pm2和minikube / docker的组合有一些问题。 我已经尝试过本地的应用程序(不是在docker / minikube),它没有任何sigkills工作正常,所以它不能是webpack hmr自己。 kubernetes是否会杀死使用大量内存的服务? (也许它认为我的应用程序正在使用大量的内存)。 如果情况并非如此,kubernetes或docker发送SIGKILL可能是什么原因? 有没有什么办法来debugging呢? 任何指导,非常感谢。 谢谢

Spread如何知道在Kubernetes中更新图像?

我想为Kubernetes设置一个Gitlab CD,并阅读这篇文章 不过,我想知道,我的K8集群是如何更新最新的Docker镜像的? 例如,在我的.gitlab-ci.yaml文件中,我将有一个build , test和release阶段,最终更新我的云.gitlab-ci.yaml镜像。 按照文章中的说明设置deploy阶段: deploy: stage: deploy image: redspreadapps/gitlabci script: – null-script 那么Spread就会知道,只要我按照 Spread 指定的K8资源的目录结构,“神奇地”更新我的K8集群(也许通过重新渲染所有映像,执行rolling-update )。

哪些Docker业务stream程工具可以pipe理多个环境?

我仍然是一个Docker / container n00b,请耐心等待。 我想维护一个应用程序的三类环境,其中包括: Web API(例如ASP.NET,Node.js等) 数据库(例如Postgres,MySQL等) 应用程序caching(例如Redis,Memcached等) 需要的3个类别是: 生产 分期 内部的,可以由各种开发团队使用自己的代码和数据分支 像Swarm和Kubernetes这样的编排解决scheme是否处理这种情况,使得类别中的容器知道其他types的容器(例如,Web3知道DB3和Cache3,而不知道其他容器),他们是否能容易地容纳添加另外三个容器(Web +数据库+caching)到一个现有的类别(如内部)?

使用Kubernetes中的fluentd读取容器日志时的权限问题

我对kubernetes非常陌生,并使用运行在GCE中的redis和mongodbtesting应用程序。 我想用fluentd来抓取我的日志文件并将它们发送到logz: 我使用以下fluentdconfiguration文件。 我在本地机器上testing了一个类似的版本。 <source> @type tail path /var/log/containers/squidex*.log pos_file /var/log/squidex.log.pos tag squidex.logs format json </source> <match squidex.logs> @type copy <store> @type logzio_buffered endpoint_url https://listener.logz.io:8071?token=… output_include_time true output_include_tags true buffer_type file buffer_path /fluentd/log/squidex.log.buffer flush_interval 10s buffer_chunk_limit 1m </store> <store> @type stdout </store> </match> 我的kubernetesconfiguration是: — apiVersion: extensions/v1beta1 kind: DaemonSet metadata: name: fluentd-logging labels: app: fluentd-logging […]

在同一个容器中的Cron在本地工作,但在集群中失败

我有一个与cron计划超级简单的容器: * * * * * root /bin/bash /alive.sh alive.sh: #!/bin/bash /bin/echo "I'm alive" /bin/echo $(/bin/date) >> /tmp/alive.log 我在本地构buildDocker镜像并运行它: docker build -t orian/crondemo:v0 . docker run –rm -it –name crondemo orian/crondemo:v0 一分钟后,我可以检查一个新的文件正在创build: docker exec crondemo ls /tmp 我标记并将图像推送到Google Container Registry: TAG=eu.gcr.io/<PROJECT_ID>/crondemo:v0 docker tag orian/crondemo:v0 $TAG kubectl docker — push $TAG 手动启动吊舱: kubectl run crondemo –image=$TAG […]

Kubernetes持久卷在GCE上不起作用

我正在尝试使我的弹性search窗格保持不变,以便在部署或窗格重新创build时保留数据。弹性search是Graylog2设置的一部分。 在完成所有设置后,我向Graylog发送了一些日志,我可以看到它们出现在仪表板上。 但是,我删除了elasticsearch pod,在重新创build之后,所有的数据在Graylog仪表板上都丢失了。 我正在使用GCE。 这是我的永久卷configuration: kind: PersistentVolume apiVersion: v1 metadata: name: elastic-pv labels: type: gcePD spec: capacity: storage: 200Gi accessModes: – ReadWriteOnce gcePersistentDisk: fsType: ext4 pdName: elastic-pv-disk 持续音量声明configuration: kind: PersistentVolumeClaim apiVersion: v1 metadata: name: elastic-pvc labels: type: gcePD spec: accessModes: – ReadWriteOnce resources: requests: storage: 200Gi 这里是我的elasticsearch部署: apiVersion: extensions/v1beta1 kind: Deployment metadata: name: elastic-deployment […]