背景:我正在尝试在Google Cloud Platform上建立一个Bitcoin Core regtest pod。我从https://gist.github.com/zquestz/0007d1ede543478d44556280fdf238c9借来了一些代码,对其进行了编辑,以便代替使用Bitcoin ABC(一种不同的客户端实现),而使用Bitcoin Core,并将RPC用户名和密码都更改为“test”。我还为docker-entrypoint.sh脚本添加了一些命令参数,以转发到我正在运行的节点的守护程序bitcoind。尝试部署以下三个YAML文件时,“工作量”中的仪表板显示比特币的可用性最低。确保Pod正确部署很重要,因此我可以将RPC命令发送到负载均衡器。以下附件是我正在使用的YAML文件。我对Kubernetes不太熟悉,我正在做一个有关可伸缩性的研究项目,该项目需要针对此pod运行RPC命令。索要相关日志,我将在单独的pastebins中提供它们。现在,我仍在集群上运行三台计算机,因为我仍在进行设置。区域为us-east1-d,机器类型为n1-standard-2。
问题:给定以下这些文件,是什么导致GCP Kubernetes Engine响应“没有最低可用性”,并且如何解决此问题?
bitcoin-deployment.sh
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
namespace: default
labels:
service: bitcoin
name: bitcoin
spec:
strategy:
type: Recreate
replicas: 1
template:
metadata:
labels:
service: bitcoin
spec:
containers:
- env:
- name: BITCOIN_RPC_USER
valueFrom:
secretKeyRef:
name: test
key: test
- name: BITCOIN_RPC_PASSWORD
valueFrom:
secretKeyRef:
name: test
key: test
image: ruimarinho/bitcoin-core:0.17.0
name: bitcoin
ports:
- containerPort: 18443
protocol: TCP
volumeMounts:
- mountPath: /data
name: bitcoin-data
resources:
requests:
memory: "1.5Gi"
command: ["./entrypoint.sh"]
args: ["-server", "-daemon", "-regtest", "-rpcbind=127.0.0.1", "-rpcallowip=0.0.0.0/0", "-rpcport=18443", "-rpcuser=test", "-rpcpassport=test"]
restartPolicy: Always
volumes:
- name: bitcoin-data
gcePersistentDisk:
pdName: disk-bitcoincore-1
fsType: ext4
bitcoin-secrets.yml
apiVersion: v1
kind: Secret
metadata:
name: bitcoin
type: Opaque
data:
rpcuser: dGVzdAo=
rpcpass: dGVzdAo=
bitcoin-srv.yml
apiVersion: v1
kind: Service
metadata:
name: bitcoin
namespace: default
spec:
ports:
- port: 18443
targetPort: 18443
selector:
service: bitcoin
type: LoadBalancer
externalTrafficPolicy: Local
最佳答案
我已经多次遇到这个问题。我使用的解决方案:
一个例子是本月初。我无法在us-west1-a中启动新资源。我认为刚刚切换到us-east4-c。一切都开始了。
我真的不知道为什么这会在Google的掩盖下发生。在过去的三个月中,我亲自经历了三次此问题,并且在StackOverflow上也多次遇到此问题。真正的答案可能很简单,那就是Google Cloud的增长确实比其基础架构快。对于Google来说,这是一件好事,因为我知道他们正在投资用于云的主要新资源。就个人而言,我真的很喜欢使用他们的云。
关于docker - GCP Kubernetes工作负载 “Does not have minimum availability”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53452120/