草庐IT

OpenStack$Kubernetes

全部标签

go - kubernetes golang 客户端示例

我正在尝试从golang客户端创建复制Controller、服务等。(“github.com/kubernetes/kubernetes/pkg/client/unversioned”)但是我找不到任何关于如何操作的文档。我发现了这个:r,err:=c.ReplicationControllers(api.NamespaceDefault).Create(rep)但我不知道将yml数据等放在哪里。有人找到了文档或有一些示例代码可以让我开始使用吗? 最佳答案 我用Go编写了一个示例Kubernetes客户端,它允许查询API版本并进行

go - 无法检测到 Kubernetes 中的 tcp 服务没有带有 golang 应用程序的 pod

我有一个statsd客户端,它在tcp中推送到kubernetes托管的statsd服务。当我重新部署服务并在服务器上更新它的pod时,数据停止流动,但我在statsd客户端上没有错误。基于thisthread,我在我的golang库中添加了读取检测,以查看我是否收到消息,但没有收到任何消息。我启动连接,从客户端发送statsd数据包,然后我将statsd服务缩减到0个pod,但客户端继续从tcpchannel成功读取和写入,没有错误!当我将部署缩放回1时,旧客户端不会重新连接,客户端和服务器将永远保持不通信状态。当服务器副本在Kubernetes服务中变为0时,如何从客户端收到错误?

docker - standard_init_linux.go :178: exec user process caused "exec format error" kubernetes

我知道很多人都遇到过这个问题,但是给出的答案都没有解决我的问题。工作流程我在kubernetes集群(谷歌云)中运行我所有的docker。我已将compilation_trigger设置为在我在github上的master分支中提交时自动构建我的dockerfile。然后我使用kubectlsetimagedeployment/MYPROJECTMYPROJECT=eu.gcr.io/foo/MYPROJECT:$TRAVIS_COMMIT更新我的kubernetes部署怎么了?我的pod处于crashloopback-off状态,在我读到的日志中:standard_init_linu

go - Google Cloud Kubernetes 上任务队列的替代方案

我发现任务队列主要用于AppEngine标准环境。我正在将我们现有的服务从AppEngine迁移到Kubernetes。什么是任务队列的好选择?推送队列是当前正在使用的队列。我在线阅读了文档并浏览了此链接:WhentousePubSubvsTaskQueues但对于Pub/Sub是否是Kubernetes上的一个好的替代方案,还没有明确的答案。编辑:我当前的用例是,服务为一组ID执行类似的任务和一些需要一些时间才能完成的任务,因此队列将接受该任务并处理它,而服务可以并行执行其他事情。虽然Pub/Sub主要用于我们这里有发布者和订阅者的地方,但服务本身有一些任务需要保持并行处理!

【Kubernetes 系列】Kubernetes 创建K8s集群项目

作者:半身风雪上一节:Kubernetes概述创建K8s集群项目一、创建Minikube二、创建Deployment三、创建Service四、启用插件五、删除集群总结一、创建Minikube上一节我们一起安装了Minikube集群,接下来我们可以在Docker控制面板中启动,也可以直接使用命令启动minikubestart如果这里报错:/etc/kubernetes:mkdir/etc/kubernetes:permissiondenied❌ExitingduetoGUEST_START:Failedkubeconfigupdate:writingkubeconfig:Errorcreatin

go - 遵循 "Configure Multiple Schedulers"Kubernetes 指南时出现错误

当我尝试关注KubernetesConfigureMultipleSchedulersguide时,我无法成功运行my-schedulerpod。我成功构建了镜像并将其推送到注册表,镜像显示在我的docker和GoogleCouldPlatform中。但是当我应用部署文件来设置pod时,状态是CrashLoopBackOff。my-scheduler-64576b7897-8b5490/1CrashLoopBackOff1484m这是kuberctldescribepodmy-scheduler-64576b7897-8b549-nkube-system的输出:Name:my-sche

go - 使用go从kubernetes连接到windows共享驱动器

我需要从alpinelinux中托管的GOAPI连接到Windows远程服务器(共享驱动器)。我尝试使用tcp、ssh和ftp,它们都不起作用。有什么建议或想法来解决这个问题吗? 最佳答案 在继续调试GO代码之前,需要在容器内做一些“非熟练劳动”以确保满足先决条件:samba客户端已安装并且守护进程正在运行;目标名称得到解析;没有连接问题(路由、防火墙规则等);有共享访问权限;容器允许挂载远程卷。连接到容器:$dockerps$dockerexec-itcontainer_id/bin/bashSamba守护进程正在运行:$smbd

mysql - 连接到 kubernetes mysql 服务时 go-mysql 连接被拒绝

使用标准包通过go应用程序连接到mysql实例时遇到问题。这是我的连接字符串/日志[13Nov1613:53+0000][INFO]connectingtoMySQL..root:awsomepass@tcp(a-mysql-0:3340)/db?charset=utf8&parseTime=True&loc=Local2016/11/1313:53:25dialtcp10.108.1.35:3340:getsockopt:connectionrefused我试过了GRANTALLPRIVILEGESON*.*TO'root'@'%'WITHGRANTOPTION;这是我建立连接的方式

go - 如何在没有kubeconfig文件的情况下使用golang api对kubernetes进行外部认证?

虽然kubernetesgolangapiexampleforout-of-clusterauthenticationworksfine,和creatingaserviceaccountandexportingthebearertokenworksgreat,将片段写入临时文件只是为了告诉API读取它感觉很愚蠢。是否有一种API方法可以将这些片段作为对象传递而不是写入文件?clusterData:=map[string]string{"BEARER_TOKEN":bearerToken,"CA_DATA":clusterCA,"ENDPOINT":clusterUrl,}constku

go - 如何惯用地用 Kubernetes API 对象的默认值填充空字段?

我想比较两个KubernetesAPI对象(例如v1.PodSpecs):其中一个是手动创建的(预期状态),另一个是从KubernetesAPI/客户端接收的(实际状态)状态)。问题是,即使这两个对象在语义上是相等的,手动创建的结构对于未指定的字段具有零值,而另一个结构具有默认值,因此两者不匹配。这意味着简单的reflect.DeepEqual()调用不足以进行比较。例如在此之后:expected:=&v1.Container{Name:"busybox",Image:"busybox",}actual:=getContainerSpecFromApi(...)expected.Ima