Docker kubernetes弹性一体机在arm64机器上出现故障?
我当时正在Kubernetes集群上设置ELK,它可以在macbookpro上进行测试,但当我尝试在聚集在一起的ubunutu arm64机器上进行设置时,失败了 当我注意到它给出了exec错误时,我立即知道它无法运行arm64变体,因为我在用于不同项目的一些容器中遇到了类似的问题,只需要使用buildx来创建arm64支持 不管怎样,这是我目前的流程。和我一起去冒险吧 在Arm64上安装新的Ubuntu,Raspberry Pi 4,4GDocker kubernetes弹性一体机在arm64机器上出现故障?,docker,
elasticsearch,kubernetes,elastic-stack,Docker,
elasticsearch,Kubernetes,Elastic Stack,我当时正在Kubernetes集群上设置ELK,它可以在macbookpro上进行测试,但当我尝试在聚集在一起的ubunutu arm64机器上进行设置时,失败了 当我注意到它给出了exec错误时,我立即知道它无法运行arm64变体,因为我在用于不同项目的一些容器中遇到了类似的问题,只需要使用buildx来创建arm64支持 不管怎样,这是我目前的流程。和我一起去冒险吧 在Arm64上安装新的Ubuntu,Raspberry Pi 4,4G 更新、升级和安装kubeadm、kubectl等。我设
kubectl应用-fhttps://download.elastic.co/downloads/eck/1.3.0/all-in-one.yaml
---
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
name: elasticsearch
labels:
app.kubernetes.io/name: eck-logstash
app.kubernets.io/component: elasticsearch
spec:
version: 7.9.2
nodeSets:
- name: default
count: 1
config:
node.store.allow_mmap: false
---
apiVersion: kibana.k8s.elastic.co/v1
kind: Kibana
metadata:
name: kibana
labels:
app.kubernetes.io/name: eck-logstash
app.kubernets.io/component: kibana
spec:
version: 7.9.2
count: 1
elasticsearchRef:
name: elasticsearch
---
apiVersion: v1
kind: ConfigMap
metadata:
name: logstash-config
labels:
app.kubernetes.io/name: eck-logstash
app.kubernets.io/component: logstash
data:
logstash.yml: |
http.host: "0.0.0.0"
path.config: /usr/share/logstash/pipeline
---
apiVersion: v1
kind: ConfigMap
metadata:
name: logstash-pipeline
labels:
app.kubernetes.io/name: eck-logstash
app.kubernets.io/component: logstash
data:
logstash.conf: |
input { }
filter { }
output {
elasticsearch {
hosts => [ "${ES_HOSTS}" ]
user => "${ES_USER}"
password => "${ES_PASSWORD}"
cacert => '/etc/logstash/certificates/ca.crt'
index => "sample-%{+YYYY.MM.dd}"
}
}
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: logstash
labels:
app.kubernetes.io/name: eck-logstash
app.kubernets.io/component: logstash
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: eck-logstash
app.kubernets.io/component: logstash
template:
metadata:
labels:
app.kubernetes.io/name: eck-logstash
app.kubernets.io/component: logstash
spec:
containers:
- name: logstash
image: docker.elastic.co/logstash/logstash:7.9.2
env:
- name: ES_HOSTS
value: "https://elasticsearch-es-http.default.svc:9200"
- name: ES_USER
value: "elastic"
- name: CUSTOM_ENV_TEST
value: "Helloworld"
- name: ES_PASSWORD
valueFrom:
secretKeyRef:
name: elasticsearch-es-elastic-user
key: elastic
volumeMounts:
- name: config-volume
mountPath: /usr/share/logstash/config
- name: pipeline-volume
mountPath: /usr/share/logstash/pipeline
- name: ca-certs
mountPath: /etc/logstash/certificates
readOnly: true
volumes:
- name: config-volume
configMap:
name: logstash-config
- name: pipeline-volume
configMap:
name: logstash-pipeline
- name: ca-certs
secret:
secretName: elasticsearch-es-http-certs-public
为了澄清,你已经在mac上测试过了,后来你想用相同的配置将它部署到Raspberry Pi和Ubuntu上?正确,它在多个PRO上运行,但在Pi64 Ubunutu机器上运行时,它在“弹性操作员”级别失败,我猜是哪个项目阻止了其他项目load@PjoterS我试图思考是否还有其他限制,我有两个额外的docker容器在k8s之外运行,其中一个与exec有图像问题(因此我需要在图像历史记录中找到与arm64兼容的图像并进行相应调整)这就是为什么我知道这是kubernetes内部的某种图像问题。为了澄清,你已经在mac上测试过了,后来你想用相同的配置将它部署到Raspberry Pi和Ubuntu上?正确,它在多个Pros上运行,但在Pi64 Ubunutu机器上运行时,它在“弹性操作符”级别失败,我猜是哪个项目阻止了其他项目load@PjoterS我试图思考是否还有其他限制,我有两个额外的docker容器在k8s之外运行,其中一个与exec有图像问题(因此我需要在图像历史记录中找到与arm64兼容的图像并进行相应调整)这就是为什么我知道这是库伯内特斯的某种形象问题。