Go语言中文网 为您找到相关结果 52

go依赖包管理工具对比

July 10, 2017 in Tech GOPATH和GOROOT GOROOT并不是必须要设置的。 GOPATH必须要设置,但并不是固定不变的 本项目内部的依赖 管理外部的依赖包 使用GOPATH来管理外部依赖 vendor godep glide govendor golang官方dep 各依赖管理工具对比 gvt vendor的问题 当开始真正用go去做项目的时候,不可避免的就会遇到依赖包的问题。go的依赖包管理与java+maven的依赖管理不太一样,我们从GOPATH开始逐渐理解其思想,然后再对比下目前常用的依赖包管理工具。 GOPATH和GOROOT 初学者很容易会被这两个环境变量给搞晕。 GOROOT并不是必须要设置的。 GOROOT不是必须要设置的。参见Installin...阅读全文

Go语言 | 哪些大公司在用go语言?

本文为原创文章,转载注明出处,欢迎扫码关注公众号flysnow_org或者网站http://www.flysnow.org/,第一时间看后续精彩文章。觉得好的话,顺手分享到朋友圈吧,感谢支持。 Go大概09年面世以来,已经8年了,也算是8年抗战。在这8年中,已经有很多公司开始使用Go语言开发自己的服务,甚至完全转向Go开发,也诞生了很多基于Go的服务和应用,比如Dokcer、k8s等,现在我们看下,有哪些大公司在用Go语言了。 Google这个不用多做介绍,作为开发Go语言的公司,当仁不让。Google基于Go有很多优秀的项目,比如:https://github.com/kubernetes/kubernetes ,大家也可以在Github上 https://github.com/googl...阅读全文

博文 2017-09-16 11:34:14 飞雪无情

基于 openvswitch 的 SDN 服务k8s-ovs

k8s-ovs是一个使用[openvswitch](http://openvswitch.org/)为[K8S](https://kubernetes.io/)提供SDN功能的项目。该项目基于[openshift SDN](https://docs.openshift.org/latest/architecture/additional_concepts/sdn.html)的原理进行开发。由于[openshift](https://github.com/openshift/origin)的SDN网络方案和openshift自身的代码耦合在一起,无法像[flannel](https://github.com/coreos/flannel)和[calico](https://github.com...阅读全文

开源项目 2017-07-05 11:00:04 网友

轻松创建单机版 Kubernetes 集群Minikube

Minikube 是一个易于在本地运行 Kubernetes 的工具,可在你的笔记本电脑上的虚拟机内轻松创建单机版 Kubernetes 集群。便于尝试 Kubernetes 或使用 Kubernetes 日常开发。 [kubectl](https://kubernetes.io/docs/tasks/kubectl/install/) macOS [xhyve driver](https://github.com/kubernetes/minikube/blob/master/docs/drivers.md#xhyve-driver), [VirtualBox](https://www.virtualbox.org/wiki/Downloads) or [VMware Fusio...阅读全文

开源项目 2017-07-31 15:00:11 网友

Kubernetes 灾难恢复管理系统Heptio Ark

Heptio Ark 是一款用于 [Kubernetes](https://www.oschina.net/p/kubernetes) 集群资源和持久存储卷(PV)的灾难恢复管理系统。 Heptio Ark 提供了一个简单、可配置和可操作的强大方法来从一系列检查点备份和恢复应用和 PV ,这允许你在以下情况更好地自动化: **减少灾难恢复 TTR(响应时间):** 基础设施损坏 数据损坏 服务中断 **Kubernetes API 对象的跨云供应商迁移** (不支持持久卷快照的跨云提供商迁移) **通过 prod 环境复制开发和测试环境设置(+ CI)** 更具体地说,Heptio Ark 是将一个集群内服务与一个 CLI 相结合,可记录: Kubernetes A...阅读全文

Kubernetes 守护进程Kubed

Kubed(发音为“Cube-dee”),是由针对容器应用开发的协同编码平台供应商 AppsCode 开发的一个 [Kubernetes](https://www.oschina.net/p/kubernetes) 群集运算符守护进程。 **功能特性:** Kubed 可定期对 Kubernetes 集群对象进行快照。 Kubed 为已删除和已更新的 Kubernetes 对象提供临时存储站。 Kubed 可在命名空间中保持 ConfigMaps 和 Secrets 同步。 Kubed 可将群集事件转发到各个目标。 Kubed 可为 Elasticsearch 和 InfluxDB 设置管理员。 Kubed 可通过电子邮件、短信或聊天方式发送通知。 Kubed 内置...阅读全文

Kubernetes 集群状态诊断工具Heptio Sonobuoy

Heptio Sonobuoy 是一款诊断工具,通过以可访问和非破坏性的方式运行一系列 [Kubernetes](https://www.oschina.net/p/kubernetes) 一致性测试,可以更容易地了解 Kubernetes 群集的状态。 无论部署细节如何,Sonobuoy 都会以可定制的,可扩展的,和集群无关的方式来生成关于集群的清晰详实的报告。 Kubernetes 的部署通常会被供应商或用户做大量修改,这可能会使他们与更新不兼容。Sonobuoy 的工作是去发现这些更改是否引起了不兼容。集群的状态也可以导出并用于诊断报告,Sonobuoy 的测试也可以通过一个插件架构来扩展...阅读全文

开源项目 2017-08-22 18:00:03 网友

Kubernetes 基础设施管理库Kubicorn

Kubicorn 是一个旨在解决 [Kubernetes](https://www.oschina.net/p/kubernetes) 基础设施问题的非官方项目,它为用户提供了一个功能丰富的 Golang 库。 Kubicorn 是一个帮助用户管理 Kubernetes 的云基础架构的项目。 使用 Kubicorn ,用户可以创建新的集群,并修改和扩展它们,且可以随时对其集群进行快照。 Kubicorn 通过允许用户定义其集群的状态,检查该状态是否符合原子性(如果不符合,它将被回滚),并将该状态捕获为快照。这些快照也可以用于新的部署。 _请注意:Kubicorn 仍然还处于试验阶段,暂不建议用于生产环境。...阅读全文

kubernets部署备忘

February 20, 2017 in Tech 记录下GFW内k8s的部署流程,备忘。 1、各节点上配置hostname,配置resole.conf echo "titan1" > /etc/hostname sysctl kernel.hostname="titan1" echo "nameserver x.x.x.x" >> /etc/resolv.conf 2、各节点上加k8s的repo tee /etc/yum.repos.d/mritd.repo << EOF [mritdrepo] name=Mritd Repository baseurl=https://rpm.mritd.me/centos/7/x86_64 enabled=1 gpgcheck=0 EOF 3、各节点上...阅读全文

博文 2017-07-30 13:40:52 伊布

Scalable Reactive Go?

<p>I love Go for its rigid simplicity, but looking at Akka I am drooling at the potential scalability. I don&#39;t have any pressing need for it professionally, just a nerd boner that I&#39;m looking to utilize. I googled &#34;reactive golang&#34; but it returns only a single result that attempts to apply the paradigm using go...阅读全文

资源 2016-12-29 09:07:49 agolangf

DockOne微信分享(一二六):Kubernetes在微服务化游戏中的探索实践

【编者的话】随着Kubernetes的持续火热,那在线游戏领域又将如何使用,又将碰到哪些问题,以及带来哪些价值? 本次分享将为大家介绍微服务化架构游戏领域中,Kubernetes支撑技术方案选型,功能优化以及实践过程中的一些思考。 【3 天烧脑式容器存储网络训练营 | 深圳站】本次培训以容器存储和网络为主题,包括:Docker Plugin、Docker storage driver、Docker Volume Pulgin、Kubernetes Storage机制、容器网络实现原理和模型、Docker网络实现、网络插件、Calico、Contiv Netplugin、开源企业级镜像仓库Harbor原理及实现等。 微服务化游戏容器化探索随着Docker技术在近几年的快速发展,国内外掀起了一股...阅读全文

博文 2017-06-25 16:25:54 DarkForces.

kubernetes如何解决服务依赖呢?

文链接在此。写的比较通俗易懂,做个笔记,有一些是我自己的理解。 在微服务的世界里,任何应用都需要注意,其所依赖的服务是会中断的。所以当应用发现某服务(如数据库)出现了故障,应该每隔一端时间去重试。而上层框架(如k8s)会检测到服务故障,并尝试恢复这个服务。 但在现实世界里,有些旧应用并没有处理这种情况,但我们还是希望能将他们也跑在微服务框架里,以期得到微服务的红利(例如应用故障重启),所以,需要定义服务依赖关系,从而保障旧应用启动时,它所依赖的服务已经ready。 解决方法是,微服务框架替应用等待其所依赖的服务(api, database, etc),当服务准备好时,框架才启动该应用。 如何知道Pod已经Ready kubernetes提供了Readiness Probe功能,用来探测Pod...阅读全文

博文 2017-07-30 13:43:58 伊布

基于filebeat二次开发Kubernetes日志采集

目前最为主流的容器编排工具主要有kubernetes、mesos、swarm,个人不评价谁好谁坏因为每个东西都有自己的优势。不过个人认为目前关注度最高的应该当属kubernetes,现在越来越多的公司采用kubernetes作为底层编排工具开发自己的容器调度平台。既然是一个PAAS平台那么就应该提供一个计算监控等一体的服务,因为是在kubernetes运行上面的容器大多数都是无状态服务,所以统一的日志管理又是其中必不可少的一部分。下面我们就讲一下如何基于filebeat开发属于自己的日志采集。 目前用的最多的日志管理技术应该是ELK,E应该没有太多的疑问基本上很多公司都是采用的这个作为存储索引引擎。L及logstash是一个日志采集工具支持文件采集等多种方式,但是基于容器的日志采集又跟传统的...阅读全文

博文 2017-09-06 15:05:57 YiQinGuo

DockOne微信分享(一二九):聊聊Service Mesh:linkerd

【编者的话】随着企业逐渐将传统的单体应用向微服务或云原生应用的转变,虽然微服务或者云原生应用能给企业带来更多的好处,但也会带来一些具有挑战的问题,如怎么管理从单体应用转向微服务所带来的服务间通讯的复杂性,怎么实现微服务间安全,高效,可靠的访问,如何满足多语言多环境的透明通讯,服务发现、熔断,动态流量迁移,金丝雀部署,跨数据中心访问等等。本次分享给大家引入一新概念服务网格(Service Mesh)以及介绍业界主要服务网格(Service Mesh)工具linkerd。 【3 天烧脑式容器存储网络训练营 | 深圳站】本次培训以容器存储和网络为主题,包括:Docker Plugin、Docker storage driver、Docker Volume Pulgin、Kubernetes Sto...阅读全文

博文 2017-07-06 17:35:23 远洋li

DockOne微信分享(一二八):容器化部署OpenStack的正确姿势

【编者的话】当前,以OpenStack为代表的IaaS开源技术和以Docker为代表的PaaS/CaaS容器技术日益成熟,二者如何强强联合,一直是业界颇为关心的焦点领域。本次分享主要是和大家交流基于Docker容器运行和部署OpenStack。那么,安装OpenStack都有哪些方法呢?对于很多刚接触OpenStack的新人而言,安装无疑是一大挑战,同时也直接提高了学习OpenStack云计算的技术门槛。 【3 天烧脑式容器存储网络训练营 | 深圳站】本次培训以容器存储和网络为主题,包括:Docker Plugin、Docker storage driver、Docker Volume Pulgin、Kubernetes Storage机制、容器网络实现原理和模型、Docker网络实现、网络...阅读全文

博文 2017-07-06 17:34:31 DarkForces.

GitHub Now in Kubernetes!

如果你现在正在使用GitHub,那么,有没感觉到和前两天有什么不同呢?就在昨天,Github已经悄悄的完成了(可能是局部)用户流量到生产环境Kubernetes集群的切换。对,如果你运气足够好的话,也许就是其中一个。 这可不是简单的『又一个Kubernetes in Production』案例。作为全球最大的代码托管和编程社交网络,估值超过20亿美元的GitHub网站坐拥数千万用户和亿级的代码仓库,已然成为全球软件开发者每天赖以生存的光和土壤。GitHub将如此规模业务押注在Kubernetes上,无疑是对Kubernetes生态极大的鼓舞。 在GitHub工作的SRE Aaron昨天在Twitter上给好友,现任Google公司首席布道师的Kelsey发了一条推文透露了这个消息,作为Kub...阅读全文

如何开启Kubernetes之旅

【译者的话】这篇文章由浅入深地介绍了如何开始Kubernetes学习,以及如何基于Kubernetes部署应用。作者给出了很多非常好的建议,指导读者掌握围绕Kubernetes的各个概念和相关技能,为学习Kubernetes指明了方向。 从Hello Minikube到Kubernetes Anywhere,再到微服务示例应用,学习谷歌容器编排工具的途径比比皆是。每一次的创新都带来一些新的麻烦。容器使得应用的打包和运行更加便捷,但是管理大规模容器依然是一个挑战。 Kubernetes是谷歌公司内部为解决这个问题而开发的产品,它提供了一个单一的框架来管理在整个集群中运行的容器。该产品提供的服务主要集中在“编排”上,但也涵盖了许多方面:容器调度、容器之间的服务发现、跨系统的负载平衡、滚动更新/回...阅读全文

kubernetes集群中利用etcd和grpc实现golang服务间通信

kubernetes集群中利用etcd和grpc实现golang服务间通信 注:文中涉及工作环境相关的网址和IP已经被替换 1. 项目背景 服务运行于docker容器中 使用kubernetes管理容器 服务有多个节点作为一个集群 使用rest接口设置服务缓存中的信息 需要将信息同步到集群中其他节点 2. 项目方案 使用grpc做服务间通信 从etcd中读取服务所有状态为running的节点信息,包括:podIp、status、hostIp、startedAt(启动时间) 服务启动时选取运行时间最长的节点,调用grpc接口请求缓存的信息同步到本容器的服务中 使用rest接口设置缓存的时候,遍历所有节点(不包括自身),调用grpc接口将信息同步到其他节点 方案特点: - 不需要借助额外的配置管...阅读全文

博文 2017-09-18 10:56:56 letian0805

Fission:基于 Kubernetes 的 Serverless 函数框架

简单的来讲,Fission 是一个构建在 Kubernetes 之上的 FaaS/Serverless 函数框架。注:Faas 即 Function as a Service 的缩写Fission 允许你通过函数轻松的在 Kubernetes 上创建 HTTP 服务。它工作在源码级别函数和抽象的容器镜像之上(大多时候),同时简化了 Kubernetes 的学习曲线,让你不用深入了解 Kubernetes 就能创建出有用的服务。通过 Fission CLI,你可以简单地创建和添加函数,还可以将这些函数关联到 HTTP 路由、Kubernetes 事件、或者其他触发器。函数在调度器触发后被执行,而且函数运行时只消耗 CPU 和内存(空闲的函数除了存储不会消耗任何资源)。Fission 当前支持多...阅读全文

博文 2017-08-11 18:05:21 网易企业服务

serverless 容器原生平台Fn project

FN 是一个可在任何地方运行的事件驱动的,开源的 functions-as-a-service 计算平台。主要有以下特性: 易于使用命令行来开发,测试,部署相关功能 一个依赖:Docker 为高收益应用而准备的各种热门功能 兼容Lambda 代码,导出你的Lambda代码并在Fn上运行 带有 JUnit 测试框架的 [Java FDK](https://github.com/fnproject/fdk-java)  你可以使用你喜欢的编排工具,如 [Kubernetes](https://kubernetes.io/), [Mesosphere](https://mesosphere.com/) and [Docker Swarm](https://docs.dock...阅读全文

Valuable Lessons in Over-Engineering the Core of Kubernetes kops, Kris Nova

Kris Nova, of Microsoft, shares lessons on over-engineering from her experience contributing to Kubernetes kops. In her spare time, she runs a Kubernetes Special Interest Group bringing Kubernetes to AWS, all while working on Microsoft ACS. She’s writing a book called Cloud Native Infrastructure. She has contributed to the Go core codebase and help...阅读全文

博文 2017-07-18 11:09:05 beyang

minikube代码分析与Go语言 - 3

[TOC] minikube代码分析 参考博客: minikube 源码分析 下载 minikube源码可以从github上下载: git clone git@github.com:kubernetes/minikube.git 编译 环境:Ubuntu 16.04 # 代码下载到任意目录,这里是 /opt/kube/minikube > export GOPATH=~/gol/ # 设置GOPATH环境变量,这里为 ~/gol > mkdir -p ~/gol/src/k8s.io/ # k8s.io这个目录名很重要,minikube的包都是以这个为基础的 > cd ~/gol/src/k8s.io/ > ln -s /opt/kube/minikube/ minikube # 链接到源码...阅读全文

博文 2017-07-20 13:04:51 openqt

多云环境应用管理平台OpenPitrix

OpenPitrix 是一个将应用程序打包和部署到诸如 QingCloud,AWS,Kubernetes 等多个云环境中的开放平台. Pixrix [Paitriks] 是指 PaaS 和 IaaS 的矩阵,可以轻松开发,部署,管理各种应用程序,包括各种 PaaS 运行时环境,即 Pitrix = PaaS + IaaS + Matrix。 它也意味着一个包含无尽的矩阵(PI - 希腊字母“π”)应用程序。 设计: 基本思想是解耦应用程序存储库和运行时环境。 应用程序可以运行的运行时环境是通过匹配运行时环境的标签和应用程序所在的存储库的选择器。详情请查看[如何设计项目](https://github.com/openpitrix/openpitrix/blob/master/docs...阅读全文

在阿里云上轻松部署Kubernetes GPU集群,遇见TensorFlow

摘要: Kubernetes在版本1.6后正式加入了Nvidia GPU的调度功能,支持在Kubernetes上运行运行和管理基于GPU的应用。而在2017年9月12日,阿里云发布了新的异构计算类型GN5,基于P100 nvidia GPU, 提供灵活强悍的异构计算模型,从基础设施到部署环境全面升级,可有效提升矩阵运算、视频识别、机器学习、搜索排序等处理计算效率。当Kubernetes和GPU在阿里云上相遇,会有什么样美好的事情发生呢? 在阿里云的GN5上部署一套支持GPU的Kubernetes集群是非常简单的,利用ROS模板一键部署,将阿里云强大的计算能力便捷的输送到您的手中。不出10分钟,您就可以开始在阿里云的Kubernetes集群上开始您的Kubernetes+GPU+Tens...阅读全文