我有一个运行图像172.20.20.20:5000/my_app ,位于我的私人registry的3副本的Deployment 。 当我将新映像的latest版本推送到registry中时,我想在部署中进行滚动更新。 我这样推新图像(标签v3.0到最新): $ docker tag 172.20.20.20:5000/my_app:3.0 172.20.20.20:5000/my_app $ docker push 172.20.20.20:5000/my_app 但没有任何反应。 豆荚的图像不升级。 这是我的部署定义: apiVersion: extensions/v1beta1 kind: Deployment metadata: name: myapp-deployment spec: replicas: 3 template: metadata: labels: app: myapp spec: containers: – name: app image: 172.20.20.20:5000/my_app:latest ports: – containerPort: 8080 有没有办法自动做到这一点? 我应该像ReplicaControllers一样运行一个类似rolling-update的命令吗?
我们已经build立了一个有3个主站和3个workernode的kubernetes集群。 然后我们安装了kubernetes-dashboard,因为它无法连接到kubernetes(api-server),所以它失败了。 它正在寻找本地主机:8080,但无法访问。 在busybox中执行env时,我收到: KUBERNETES_SERVICE_PORT_HTTPS=443 KUBERNETES_PORT=tcp://10.2.0.1:443 KUBERNETES_PORT_443_TCP=tcp://10.2.0.1:443 KUBERNETES_PORT_443_TCP_PROTO=tcp KUBERNETES_PORT_443_TCP_PORT=443 KUBERNETES_PORT_443_TCP_ADDR=10.2.0.1 KUBERNETES_SERVICE_HOST=10.2.0.1 KUBERNETES_SERVICE_PORT=443 所以我期望kubernetes应该在10.2.0.1:443上可用,但是它不回答。 (拒绝连接) 绑定地址是0.0.0.0(由ssl auth保护),不安全绑定地址是未设置的(这意味着它绑定到127.0.0.1)。 在文档中,我可以看到非安全端口(8080)暴露于集群networking。 但是我看不到。 如果我执行kubectl获取服务,我看到: NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes 10.2.0.1 <none> 443/TCP 1d 我必须采取一些更多的行动来揭露8080和/或使这些端口上的kubernetes可用吗?
我正在GKE / Kubernetes中运行一个服务,这个服务公开了一个星形IP地址的单个UDP端口。 (我已经在GCE中提供了一个临时的静态IP地址。)如果我按如下方式部署它,那么服务是可以访问的。 spec: type: LoadBalancer loadBalancerIP: <static-ip-address> 但是,我不打算运行我的服务的多个副本,我甚至不确定GKE的负载平衡器是否可以与UDP协同工作,所以我想尝试一下。 下面的替代configuration还没有工作。 有了它,服务出现了,但在一个不同的IP地址,因此不能从外部到达所需的。 spec: type: NodePort externalIPs: – <static-IP-address> 那么,在没有负载平衡器的情况下,在“自己”的静态IP地址上运行一个外部可见的服务,如果可以的话,又如何呢? 更新进一步的进展表明,工作平衡器也可以与UDP协同工作,但似乎仍然是多余的。
我试图了解如何使用OpenShift / Kubernetes持久卷的光纤通道。 在https://docs.openshift.com/enterprise/3.1/install_config/persistent_storage/persistent_storage_fibre_channel.html#provisioning-fibre上,它指出必须指定目标WWN以及一个LUN编号。 我知道WWN,因为它们在SAN存储系统和操作系统中(例如在Linux上的“multipath -ll”输出中)很容易获得。 但我不知道如何找出要写入哪个LUN号码。 除了我不知道从哪里得到LUN号,我不明白Kubernetes需要这些信息(我也想试着去理解)。
有没有人有关于如何在dDebian Jessie上安装k8s 1.4的链接或信息? 我有两台这样的机器,想运行k8s 1.4。
我已经从下面的指南中设置了1个主节点和1个节点的集群。 CentOS手动安装 之后,我只是试图部署仪表板(或任何事情),我得到以下错误 kubectl get events 25m 1h 23 10.3.0.5 Node Warning MissingClusterDNS {kubelet 10.3.0.5} (events with common reason combined) 30m 1h 16 10.3.0.5 Node Warning MissingClusterDNS {kubelet 10.3.0.5} kubelet does not have ClusterDNS IP configured and cannot create Pod using "ClusterFirst" policy. pod: "kubernetes-dashboard-1975554030-cc9n1_kube-system(ebab5633-c9d1-11e6-a741-000d3af22f09)". Falling back to DNSDefault policy. 56m 56m 1 10.3.0.5 Node […]
每个k8s节点都有单独的ip,这是运行在其上的所有docker的路由器。 有没有办法通过api(k8s,weave等)来检查 – ip的其他节点? 我当然可以在每个节点上运行docker,然后检查路由器ip是什么,或者只是连接到每个节点,并检查哪个ip在编织设备上 – 但是必须有更简单的(api;)方法来做到这一点:-)
我有一个pod文件,看起来像这样: apiVersion: v1 kind: Pod metadata: name: test-api labels: app: web spec: containers: – name: test-api-container image: cmgvieira/test-api:latest imagePullSecrets: – name: regsecret 它运行正常: $ kubectl get pods NAME READY STATUS RESTARTS AGE test-api 1/1 Running 0 10d 我可以使用kubectl port-forward test-api 3000:80访问它,然后使用wget localhost:3000 。 当我使用kubectl expose -f test-api-pod.yml –port=80 –target-port=80 –type=LoadBalancer ,服务被成功创build: $ kubectl describe service […]
我想弄清楚如何使用k8s持续音量声明的单个nfs共享。 例如,假设我configuration了一个nfs pv: apiVersion: v1 kind: PersistentVolume metadata: name: nfs-pv spec: capacity: storage: 10Gi accessModes: – ReadWriteMany persistentVolumeReclaimPolicy: Retain storageClassName: nfs-storage nfs: path: /var/nfs_exports server: 10.9.0.205 readOnly: false 是否有可能创build多个音量声明映射到此单个共享中的子目录? 再举一个例子,假设我创build了以下数量的声明: apiVersion: v1 kind: PersistentVolumeClaim metadata: name: influx-data namespace: kube-system spec: storageClassName: nfs-storage accessModes: – ReadWriteMany resources: requests: storage: 5Gi — 和: apiVersion: v1 kind: PersistentVolumeClaim […]
我正在关注如何让通过Google Cloud SQL代理连接到Google Cloud SQL的GKE上运行的wordpress的示例。 但是,无论是文件,或代理本身,是不足,或者我:-) 不幸的是,我的Wordpress pod失败,出现crashloop错误,从文档中不清楚,如何深入挖掘原因。 这里是一个错误的例子: bash-3.2$ kubectl get pods| egrep wordpress wordpress-713960421-v4f49 0/2 CrashLoopBackOff 16 20m (kubectl描述荚…) 11m 22s 36 kubelet,gke-noon -staging-default-pool-d500b601-dfb6警告FailedSync同步错误的窗口,跳过:[未能通过CrashLoopBackOff获取“web”的“StartContainer”:回退5m0s restarting failed container = web pod = wordpress-713960421-v4f49_default(f64276d2-5660-11e7-a565-42010a9a0023)“,对”cloudsql-proxy“的”StartContainer“失败 CrashLoopBackOff:“退出5m0s重启失败的容器= cloudsql-proxy pod = wordpress-713960421-v4f49_default(f64276d2-5660-11e7- a565-42010a9a0023)“] 我的问题是: 如何进一步深入了解为什么pod无法使用云SQL代理进行部署 有没有人有一个例子使用云SQL代理与简单的MySQL客户端的pod? 荚的描述(kubectl描述): https://pastebin.com/pN7gUZg8 我分别部署了云sql代理和wordpress容器,发现云sql代理运行良好,但是wordpress博客容器在kubernetes上启动失败。 同步pod时出错,跳过: 用CrashLoopBackOff无法为“wordpress”“StartContainer” 看看wordpress的pod日志,看起来wordpress因为无法连接到MySQL DB而死亡: MySQL连接错误:(2002)连接被拒绝 –