我正在尝试在Bluemix Container服务(Kubernetes)上部署Postgres
我创建了Image并通过以下yaml文件部署了它:
apiVersion: v1
kind: Service
metadata:
name: tripbru-postgres
labels:
app: tripbruREST
spec:
ports:
- port: 5432
targetPort: 5432
nodePort: 31432
selector:
app: tripbruREST
tier: frontend
type: NodePort
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: tripbru-postgres
labels:
app: tripbruREST
spec:
strategy:
type: Recreate
template:
metadata:
labels:
app: tripbruREST
tier: postgres
spec:
containers:
- image: registry.ng.bluemix.net/eliza/postgres:9.5
name: postgres
env:
- name: POSTGRES_PASSWORD
value: MYPASSWORD
ports:
- containerPort: 5432
name: postgres
volumeMounts:
- name: pg-data
mountPath: /var/lib/postgresql/data
- name: tz-config
mountPath: /etc/localtime
volumes:
- name: pg-data
emptyDir: {}
- name: tz-config
hostPath:
path: /usr/share/zoneinfo/Europe/Madrid
这有效地部署了它:
icordoba$ kubectl get services
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes 10.10.10.1 <none> 443/TCP 1d
tripbru-postgres 10.10.10.232 <nodes> 5432:31432/TCP 1d
但是我无法连接到端口31432上的节点IP地址。我已经测试过Postgres正在运行:
kubectl exec -it tripbru-postgres-3667814974-pzmsk bash
我进入docker实例并检查Postgres运行正常。
我确信我错过了一些东西。我还需要任何其他yaml文件吗?感谢。
答案 0 :(得分:1)
我使用“Pod”解决了它而不是部署。我还更改了hostPath并注意了短暂的“emptyDir”卷格式(这是Bluemix在免费Kubernetes服务中的测试,因此我无法使用实际卷)。这是工作的名字:
loess_mod <- loess(hp ~ mpg, mtcars)
pred <- predict(loess_mod, mtcars, se=TRUE)
mtcars1$lwl <- pred$fit-1.96*pred$se.fit
mtcars1$upl <- pred$fit+1.96*pred$se.fit
library(ggplot2)
ggplot(mtcars1, aes(x = mpg, y = hp)) +
geom_point() +
geom_smooth(method = 'loess') +
geom_line(aes(y = lwl), color = "red") +
geom_line(aes(y = upl), color = "red")
(注意我仍然不知道我的“部署”方法有什么问题,但使用Pod工作,因为我现阶段不需要复制)