小编Dav*_*aze的帖子

如何登录/进入 kubernetes pod

我正在运行 kubernetes pod,如命令“kubectl get all -A ”所示:

在此输入图像描述

命令“kubectl get pod -A”中显示了相同的 pod : 在此输入图像描述

我想进入/登录这些 pod 中的任何一个(全部都处于运行状态)。我该怎么做,请让我知道命令?

kubernetes kubectl kubernetes-pod

29
推荐指数
2
解决办法
8万
查看次数

容器启动失败:内存不足,Java运行环境无法继续运行

我们有一个在 Java 8 上运行的企业应用程序。部署环境是通过 Bitbucket 管道构建和更新的。我有一张显示环境高级架构的图形。除了一些特定于应用程序的环境变量之外,我们有两个运行相同配置的应用程序服务器。

一切都运行良好,直到一周前成功运行管道后,其中一台服务器上的 2 个应用程序实例停止工作并出现以下错误:

There is insufficient memory for the Java Runtime Environment to continue.
Cannot create GC thread. Out of system resources.
Run Code Online (Sandbox Code Playgroud)

两个实例在另一台服务器上都运行良好。相反,容器无法在此服务器上启动。

尝试过的解决方案

该错误伴随以下信息:

可能的原因: 系统物理 RAM 或交换空间不足 进程在启用 CompressedOops 的情况下运行,Java 堆可能会阻止本机堆的增长。

可能的解决方案:

  • 减少系统内存负载
  • 增加物理内存或交换空间
  • 检查交换后备存储是否已满
  • 减少 Java 堆大小 (-Xmx/-Xms)
  • 减少 Java 线程数
  • 减少 Java 线程堆栈大小 (-Xss)
  • 使用 -XX:ReservedCodeCacheSize= 设置更大的代码缓存

我们已经尝试过:

  1. 添加更多交换内存。服务器有 8GB RAM,而我们尝试了从 4GB 交换到 9GB。
  2. 使用堆大小 Xms 和 Xmx 从 128m 到 4096m。
  3. 将此服务器上的 RAM 增加到 16GB,而另一台可以运行的服务器仍然使用 8GB。

以下是内存和交换消耗的情况: …

java containers tomcat out-of-memory docker

22
推荐指数
2
解决办法
2万
查看次数

docker内部和外部的Kafka访问

我正在尝试使用 docker-compose 启动一个 kafka 服务,它应该可以在 docker 内部和外部访问。因此,应该在内部和外部设置合适的广告商:

version: '3'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    ports:
      - "2181:2181"
  kafka:
    image: wurstmeister/kafka
    ports:
      - "9094:9092"
    environment:
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT
      KAFKA_LISTENERS: INSIDE://:9092,OUTSIDE://127.0.0.1:9094
      KAFKA_ADVERTISED_LISTENERS: INSIDE://:9092,OUTSIDE://127.0.0.1:9094
      KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
Run Code Online (Sandbox Code Playgroud)

问题是当我尝试从集群外部连接时,我没有得到 127.0.0.1 作为节点的名称,而是内部主机名:

$ kafkacat -L -b 127.0.0.1:9094
Metadata for all topics (from broker -1: 127.0.0.1:9092/bootstrap):
 1 brokers:
  broker 1001 at 91588ea968d4:9092
 28 topics:
 ...
Run Code Online (Sandbox Code Playgroud)

KAFKA_ADVERTISED_LISTENERS 和 KAFKA_LISTENERS 的目的不是处理这种情况吗?我尝试设置 KAFKA_ADVERTISED_HOST_NAME 但它被忽略了(一份文档说它已弃用,另一份说它仍然处于活动状态),但这似乎不是答案,因为我想要两个不同的广告主机名用于两个不同的网络。

我想老问题仍然存在:如何使 kafka 在 docker-compose 内外工作?

apache-kafka docker docker-compose

19
推荐指数
2
解决办法
2万
查看次数

Helm Release 卡在卸载状态

我尝试使用卸载 AKS 集群中的 helm 版本,helm uninstall RELEASE_NAME但似乎失败了。发生故障的原因是,由于某种原因,当我使用 时,集群中的所有节点都处于未就绪状态helm uninstall

从那时起,我让所有节点都恢复并运行,并且集群正常运行。现在,当我尝试时helm list,我不会再看到此版本,但执行 ahelm list -a会显示该版本的状态仍处于uninstalling状态。我已经尝试了很多方法,但在过去的 3-4 天里它一直卡在那里。

我尝试过使用helm uninstall RELEASE_NAMEhelm delete --purge RELEASE_NAME但这些命令会抛出错误,因为版本已经处于uninstalling状态。我尝试修改此特定版本的集群中的 Helm Secret,但这也没有帮助。Helm3正在使用,所以我不能重新启动舵柄吊舱来稳定这个问题。

是否Helm3使用某种可以修改的终结器机制来纠正此问题,或者是否没有其他方法可以尝试删除此版本?我希望将来也对特定 API 使用相同的版本名称。

任何帮助将不胜感激。

kubernetes kubernetes-helm azure-aks helm3

17
推荐指数
2
解决办法
3万
查看次数

删除网络时出错:<network> id 具有活动端点

我正在尝试使用 jenkins 作业运行 docker compose down。“sudo docker-compose down --remove-orphans”

我在使用 docker-compose down 时使用了 --remove-orphans 命令。仍然给出以下错误。

正在删除网络。删除网络时出现 abc 错误:网络 id ************ 有活动端点 状态为 1 的命令失败: sudo docker-compose down --remove-orphans

下面是我的 docker 撰写:

version: "3.9"
services:
  abc:
    image: <img>
    container_name: 'abc'
    hostname: abc
    ports:
      - "5****:5****"
      - "1****:1***"
    volumes:
      - ~/.docker-conf/<volume>
    networks:
      - <network>

      
  container-app-1:
    image: <img2>
    container_name: 'container-app-1'
    hostname: 'container-app-1'
    depends_on:
      - abc
    ports:
      - "8085:8085"
    env_file: ./.env
    networks:
      - <network>

networks:
  <network>:
    driver: bridge
    name: <network>
Run Code Online (Sandbox Code Playgroud)

containers jenkins docker docker-compose

15
推荐指数
2
解决办法
3万
查看次数

Kubectl错误:memcache.go:265]无法获取当前服务器API组列表:获取

我目前面临 Kubernetes 集群的问题,需要一些帮助。直到今天一切都进展顺利。但是,在我的 Ubuntu 系统上执行更新后,我无法建立从工作环境到 kubernetes 集群的连接。

\n

执行命令时kubectl get pods,我遇到以下错误消息:

\n

E0805 09:59:45.750534 234576 memcache.go:265] couldn\xe2\x80\x99t get current server API group list: Get "http://localhost:3334/api?timeout=32s": EOF

\n

以下是我的集群设置的详细信息:Kubernetes 1.27,裸机,主机系统是 Ubuntu 20.04

\n

我将非常感谢有关解决此问题的任何指导或见解。

\n

kubernetes kubectl k3s

14
推荐指数
2
解决办法
7万
查看次数

什么是,什么用例都有点“。” 在掌舵图中?

我目前正在阅读 helm 的文档,点 (.) 至少有 3 种不同的用途,是否有任何具体定义?它与 bash 使用(实际文件夹/文件)有什么共同之处吗?

文档中的一些案例

这会打印之前调用的范围内的访问文件吗?

  {{- $files := .Files }}
  {{- range tuple "config1.toml" "config2.toml" "config3.toml" }}
  {{ . }}: |-
    {{ $files.Get . }}
  {{- end }}
Run Code Online (Sandbox Code Playgroud)

这告诉“mychart.app”使用当前文件夹中的文件(类似 bash 的行为)

{{ include "mychart.app" . | indent 4 }}
Run Code Online (Sandbox Code Playgroud)

而这个,我想它从整个文件夹中获取值???我想这是不正确的,因为它不起作用(当时是另一名员工制作的,我必须修复它)

{{- define "read.select-annot" -}}
{{- range $key, $value := . }}
{{ $key }}: {{ $value }}
{{- end }}
{{- end }}
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助

go-templates kubernetes kubernetes-helm

11
推荐指数
1
解决办法
2685
查看次数

如何将参数从文件传递给 dockerfile

我正在尝试将参数从文件传递到 docker 文件。

我尝试将文件复制到 docker 容器中并使用 source 命令。

Dockerfile

COPY docker.env .
RUN /bin/bash -c "source docker.env"
Run Code Online (Sandbox Code Playgroud)

Docker.env

BuildMode="release"
Run Code Online (Sandbox Code Playgroud)

另一次尝试也没有成功

export BuildMode="release"
Run Code Online (Sandbox Code Playgroud)

没有错误,但是当我尝试打印时ECHO $BuildMode,它没有打印其中的值,就像它没有获取其中的值一样。

但是,如果我创建一个 docker 容器并在 docker 容器内尝试相同的代码,那么它就可以工作。

docker dockerfile

10
推荐指数
2
解决办法
2万
查看次数

在电脑上未安装python的情况下运行python脚本

我创建了一些数据处理脚本,它们需要每天执行,但是PC的数量接近150台,我无法在所有PC上手动安装Python。

\n\n

所以我需要一种方法让这些在这些 Windows 系统上工作,我尝试使用 PyInstaller 创建 exe 并将其放置在服务器上,但脚本执行在初始阶段花费了大量时间(程序执行是相同的,但需要时间来加载)闪烁的光标)可能是\xe2\x80\x99s依赖项的负载,文件接近36 MB。

\n\n

有没有可能在没有安装 python 的环境中执行该 .py 文件,或者创建 python 环境并在主机 PC 中使用 .bat 脚本设置路径变量?在不要求每个人手动安装任何东西的情况下,我还有什么其他选择?我听说在这种情况下可以使用 docker,但是在本地环境中工作我应该部署这样的东西吗?

\n

python pyinstaller python-3.x

10
推荐指数
1
解决办法
6万
查看次数

应用agones舰队时Kubectl错误:确保首先安装CRD

我正在使用 minikube(docker 驱动程序)和 kubectl 来测试 agones 舰队部署。运行后kubectl apply -f lobby-fleet.yml(当我尝试应用任何其他 agones yaml 文件时),我收到以下错误:

error: resource mapping not found for name: "lobby" namespace: "" from "lobby-fleet.yml": no matches for kind "Fleet" in version "agones.dev/v1"
ensure CRDs are installed first
Run Code Online (Sandbox Code Playgroud)

大厅-fleet.yml:

apiVersion: "agones.dev/v1"
kind: Fleet
metadata:
  name: lobby
spec:
  replicas: 2
  scheduling: Packed
  template:
    metadata:
      labels:
        mode: lobby
    spec:
      ports:
      - name: default
        portPolicy: Dynamic
        containerPort: 7600
        container: lobby
      template:
        spec:
          containers:
          - name: lobby
            image: gcr.io/agones-images/simple-game-server:0.12 # Modify to …
Run Code Online (Sandbox Code Playgroud)

kubernetes minikube agones

10
推荐指数
1
解决办法
9万
查看次数