开源中国

我们不支持 IE 10 及以下版本浏览器

It appears you’re using an unsupported browser

为了获得更好的浏览体验,我们强烈建议您使用较新版本的 Chrome、 Firefox、 Safari 等,或者升级到最新版本的IE浏览器。 如果您使用的是 IE 11 或以上版本,请关闭“兼容性视图”。
博客专区 - 开源中国社区

精彩阅读

  • 最新推荐

  • 今日热门

  • 本周热门

  • 每日一博

  • 最新文章

疯狂Spring Cloud连载(23)Spring Cloud集群使用Zuul

Spring Cloud Zuul使用
杨大仙的程序空间 发布于 3小时前 阅读 23

疯狂Spring Cloud连载(22)Web项目中使用Zuul

Spring Cloud Zuul
杨大仙的程序空间 发布于 4天前 阅读 276

疯狂Spring Cloud连载(21)Feign与Hystrix整合

Spring Cloud Hystrix Feign
杨大仙的程序空间 发布于 5天前 阅读 253

Ceph分布式存储纠删码之初探EC

1.副本orEC? 把一个文件放进磁盘很难吗?不难,放进去就是了。 那么如果是特别重要的文件呢?也不难,多放几份就是了。 还记得怎么对待毕业论文的吗,电脑里存一份,U盘里存一份,网盘里再存一份,甚至好几个网盘里都存一份。内心战战兢兢,生怕几个月的努力(并没有。。。)付诸东流。这,就是副本存储。 假设我们的存储是以三副本方式进行的话,我们可以计算出实际利用率是一个很低很低的值,33.3%。那么有没有什么更好的办法呢,有,就是纠删码的方案。 利用纠删码储存文件,一共分三步: 把一个文件均分为K个数据块 将这K个数据块通过一定的方式联系起来生成M个校验块 当某几个数据块丢失时,利用校验块重新计算出丢失的数据块 以K,M取值为5、3为例,可以得出纠删码方案的利用率达到了5/8,62.5。在同样可以容忍丢失三个数据块的情况下,纠删码方案比副本方案容量利用率高出了近一倍!              可以看到重点就在于,如何计算出校验块以及如何利用其进行数据恢复,接下来就讲重点介绍这两部分,这,也就是EC的原理。 注意:这里的文件并不是指真实的文件,比如一首歌曲或者一部电影,而是由存储系统对真实文件进行条带化后生成的更小的文件。 2.EC原理 2....
freshyuan 发布于 6天前 阅读 116

73款阿里巴巴开源软件详解!

详细解读阿里巴巴开源技术,包括框架、组件、引擎、数据库/存储、平台/系统、解决方案、工具、中间件、Web Sever、设计等十大类73款!
阿里巴巴

疯狂Spring Cloud连载(20)Hystrix缓存与合并请求

微服务 Hystrix 缓存 合并请求
杨大仙的程序空间 发布于 1周前 阅读 337 点赞 1

如何在Kubernetes集群中利用GPU进行AI训练

本博文主要介绍在Kubernetes集群中如何使用GPUs、使用时的注意事项以及存在的问题,在TensorFlow on Kubernetes项目中做怎样的调整才能使用GPUs进行AI训练等等。
WaltonWang 发布于 1周前 阅读 180 评论 5 点赞 1

疯狂Spring Cloud连载(19)Spring Cloud整合Hystrix

Hystrix
杨大仙的程序空间 发布于 2周前 阅读 179

阿里云 CDN HTTPS 最佳实践系列——动态证书(一)

### 背景 了解阿里云 CDN 架构的朋友应该知道,阿里云 CDN 7层的接入组件是 Tengine,我们知道 Tengine 原生是支持 SSL 的,只需要在配置文件中配置证书和私钥即可。在 CDN HTTPS 产品化以前,要开通 HTTPS 的域名需要把证书私钥给我们,我们在 Tengine 静态配置中配置,然后再同步到所有 CDN 边缘节点,显然这种方式在越来越多的域名开通 HTTPS 后,Tengine 静态配置文件会越来越大,难以管理,同时也会导致 Tengine reload 变得很慢,这样配置生效的时间就很糟糕,还有私钥安全等等一系列问题。所以 CDN HTTPS 产品化时就必须采用动态证书的方式,目前阿里云 CDN HTTPS 证书配置之后1分钟内生效,极大的提高了证书管理效率和用户体验。这两种方式的简单对比如下: 配置方式 |静态配置| 动态配置 ------- | ------- | ------- Tengine 配置 | server 块随着域名增长而增长 | 只需一个 server 块 Tengine reload | 需要 | 不需要 生效时间 | 数天| 1分钟内 私钥管理 | 磁盘明文存储,不安全 | 可加密传输,加密存储,安全 ### 架构 动态配置的同步有两种方式: > 1. 主动同步 >     当用户在用户控制台上配置证书和私钥之后主动向下同步到 CDN 所有节点的 Teng...
我是王雪梨 发布于 2周前 阅读 27

疯狂Spring Cloud连载(18)Hystrix断路器的开启和关闭

Spring Cloud Hystrix 断路器
杨大仙的程序空间 发布于 2周前 阅读 284

Kubernetes在vivo容器云平台中的应用与实践

本博文是我参加2017/11/04 K8S技术社区深圳站Meetup分享的PPT内容,主要介绍Kubernetes在vivo容器云平台的应用与实践,重点介绍我们跟业界大多数方案不一样的地方,包括整体架构(HA/Security)、定制化的应用滚动方案、Ingress方案及部署实践、容器网络方案以及在TaaS方向的探索与实践等等。
WaltonWang 发布于 2周前 阅读 1958 评论 15 点赞 7

Kubernetes 1.8抢占式调度Preemption源码分析

本博文是对Kubernetes 1.8中基于Pod优先级抢占式调度Preemption的源码分析,整个过程主要围绕这scheduler的相关源码进行分析,从源码角度解读抢占式调度的全过程,相信从中你会学到很多在官方文档中你看不到但又很重要的细节,比如抢占的最佳节点到底是怎么选出来的?竟然还跟scheduler extender相关?等等
WaltonWang 发布于 3周前 阅读 237 评论 2

疯狂Spring Cloud连载(17)Hystrix属性配置与回退

Spring Cloud 视频 Hystrix 微服务
杨大仙的程序空间 发布于 3周前 阅读 312 点赞 1

疯狂Spring Cloud连载(16)Hystrix运作流程

Spring Cloud Hystrix 视频
杨大仙的程序空间 发布于 3周前 阅读 286 评论 2

解析Kubernetes 1.8中的基于Pod优先级的抢占式调度

在 1.8 的发布版本中,SIG Scheduling 通过引入 Pod 优先级和抢占特性扩展了共享集群的概念。这些特性允许在单一集群中混合运行不同类型的应用和任务,提高了集群的利用率和可用性。这些特性目前都是 alpha 版本。本文将对这一特性进行全面介绍,下一篇博文会从scheduler源码进行分析。
WaltonWang 发布于 3周前 阅读 1234 评论 2 点赞 3

日志管理之 Docker logs - 每天5分钟玩转 Docker 容器技术(87)

本章我们将讨论监控容器的各种可用技术和方案,包括 Docker logs 命令、ELK、Fluentd 和 Graylog。
CloudMAN 发布于 4周前 阅读 429 评论 1 点赞 1

使用Feign作为HTTP客户端调用远程HTTP服务

在Spring Cloud Netflix栈中,各个微服务都是以HTTP接口的形式暴露自身服务的,因此在调用远程服务时就必须使用HTTP客户端。我们可以使用JDK原生的URLConnection、Apache的Http Client、Netty的异步HTTP Client, Spring的RestTemplate。但是,用起来最方便、最优雅的还是要属Feign了。 Feign完全可以单独使用,不需要依赖Spring Cloud . Feign简介 Feign是一种声明式、模板化的HTTP客户端。在Spring Cloud中使用Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。比如: @Autowired private AdvertGropRemoteService service; // 远程服务 public AdvertGroupVO foo(Integer groupId) { return service.findByGroupId(groupId); // 通过HTTP调用远程服务 } 不哔哔了直接上代码吧: maven配置: <!-- 使用Apache HttpClient替换Feign原生httpclient --> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> </dependency> <dependency> <groupId>com.netflix.fe...
疏影横斜 发布于 1个月前 阅读 155

私有云中Kubernetes Cluster HA方案

发现很多Kubernetes刚入门的同学对Kubernetes的Master高可用方案很感兴趣,官方又只给出了GCE上部署高可用的方案,因此我觉得有必要把我之前做的Kubernetes Master HA方案分享一下。
WaltonWang 发布于 1个月前 阅读 1122 评论 2 点赞 4

Prometheus 到底 NB 在哪里?- 每天5分钟玩转 Docker 容器技术(84)

理解了多维数据模型,就理解了 Prometheus 的强大。
CloudMAN 发布于 1个月前 阅读 945 评论 2

如何落地TensorFlow on Kubernetes

TensorFlow 作为最受欢迎的 Deep Learning 框架,已经火到没有朋友,然而在落地时,你会发现 TensorFlow 也并不是那么完美,它面临着资源隔离、进程难于管理、 PS 进程不能自动结束等诸多问题,我们还需要一个分布式框架配合使用才能发挥 Distributed TensorFlow 的真正威力,我想这个任务交给 kubernetes 最合适不过了。这是我在“七牛云 & K8S 技术社区架构师实践日: Kubernetes 落地最佳实践”中分享的关于我在落地 TensorFlow on Kubernetes 项目时的一些总结和思考。
WaltonWang 发布于 1个月前 阅读 459

容器中使用iptables报错can't initialize iptables table Permission denied (you must be root)

在docker容器中部署了一微服务,该服务需要docker push镜像到docker registry。因此,docker容器中需要安装docker服务。但在启动容器的时候,却报错: ``` can't initialize iptables table `filter': Permission denied (you must be root) Perhaps iptables or your kernel needs to be upgraded.
BookShu 发布于 1个月前 阅读 51

疯狂Spring Cloud连载(23)Spring Cloud集群使用Zuul

Spring Cloud Zuul使用
杨大仙的程序空间 发布于 3小时前 阅读 23

如何实现 Service 伸缩?- 每天5分钟玩转 Docker 容器技术(97)

本节演示如何 Scale Up 和 Scale Down Service。
CloudMAN 发布于 14小时前 阅读 6

运行第一个 Service - 每天5分钟玩转 Docker 容器技术(96)

上一节我们创建好了 Swarm 集群, 现在部署一个运行 httpd 镜像的 service。
CloudMAN 发布于 3天前 阅读 15

解析Kubernetes 1.8中的基于Pod优先级的抢占式调度

在 1.8 的发布版本中,SIG Scheduling 通过引入 Pod 优先级和抢占特性扩展了共享集群的概念。这些特性允许在单一集群中混合运行不同类型的应用和任务,提高了集群的利用率和可用性。这些特性目前都是 alpha 版本。本文将对这一特性进行全面介绍,下一篇博文会从scheduler源码进行分析。
WaltonWang 发布于 3周前 阅读 1234 评论 2 点赞 3

Rancher中的K8S认证和RBAC

本文将阐明如何使用Kubernetes API进行身份认证,以及RBAC授权模块如何与认证用户协同工作。
RancherLabs 发布于 9小时前 阅读 2

如何部署 Calico 网络?- 每天5分钟玩转 Docker 容器技术(67)

Calico 是一个纯三层的虚拟网络方案,性能好。本节讨论如何部署 Calico 容器网络。
CloudMAN 发布于 2个月前 阅读 41

【内网福音】如何离线部署Rancher

对于在公司内网环境中、无法访问互联网的用户而言,离线安装部署Rancher是解决问题的关键。本文是Rancher离线部署教程,专为内网用户排坑解难。
RancherLabs 发布于 2周前 阅读 4

Ceph分布式存储纠删码之初探EC

1.副本orEC? 把一个文件放进磁盘很难吗?不难,放进去就是了。 那么如果是特别重要的文件呢?也不难,多放几份就是了。 还记得怎么对待毕业论文的吗,电脑里存一份,U盘里存一份,网盘里再存一份,甚至好几个网盘里都存一份。内心战战兢兢,生怕几个月的努力(并没有。。。)付诸东流。这,就是副本存储。 假设我们的存储是以三副本方式进行的话,我们可以计算出实际利用率是一个很低很低的值,33.3%。那么有没有什么更好的办法呢,有,就是纠删码的方案。 利用纠删码储存文件,一共分三步: 把一个文件均分为K个数据块 将这K个数据块通过一定的方式联系起来生成M个校验块 当某几个数据块丢失时,利用校验块重新计算出丢失的数据块 以K,M取值为5、3为例,可以得出纠删码方案的利用率达到了5/8,62.5。在同样可以容忍丢失三个数据块的情况下,纠删码方案比副本方案容量利用率高出了近一倍!              可以看到重点就在于,如何计算出校验块以及如何利用其进行数据恢复,接下来就讲重点介绍这两部分,这,也就是EC的原理。 注意:这里的文件并不是指真实的文件,比如一首歌曲或者一部电影,而是由存储系统对真实文件进行条带化后生成的更小的文件。 2.EC原理 2....
freshyuan 发布于 6天前 阅读 116

kolla-ansible离线部署openstack的ocata

环境 操作系统 CentOS Linux release 7.3.1611 (Core) 内核信息 Linux 3.10.0-514.el7.x86_64 硬件 虚拟机一台 网卡 2块 内存 8G  //all-in-one建议16G CPU 4 VCPU   装好对应的操作系统,克隆下面项目,包含的shell脚本一脚本安装 git clone  https://github.com/jannanlo/kolla-ansible-ocata.git 进入kolla-ansible-cocata目录,执行以下命令 wget http://tarballs.openstack.org/kolla/images/centos-binary-registry-ocata.tar.gz(这个包太大) 从百度网盘下载 registry-2.3.tar.gz    https://pan.baidu.com/s/1pLDOBAr sh ocata-all-in-one.sh 备注: 在ocata-all-in-one.sh脚本里,如果有某些配置不一样要修改一下 如果测试环境是在物理机运行可以将run_in_vm设为false 如果网卡名字不是eth0将 eth_name 改为对应的网卡名  ...
JennerLuo 发布于 3个月前 阅读 44

Kubernetes Deployment滚动更新场景分析

本博文对以下Kubernetes滚动更新场景进行了测试分析:正常滚动更新流程;应用滚动更新时,用户删除应用;应用滚动更新时,用户对该应用进行扩容;应用滚动更新时,用户对该应用进行缩容;应用扩容时,进行滚动更新;应用缩容时,进行滚动更新;应用回滚;滚动更新未完成时,又开始新的滚动更新;
WaltonWang 发布于 3个月前 阅读 252

stevedore-----python应用程序的动态插件的管理(文档手册)

python能够容易地实现代码的动态加载,在运行时发现并加载插件可以帮助你实现应用程序的配置和扩展。使用 __import__ 或者 importlib 能够实现这种功能。使用构建在 setuptools entry points基础上的 stevedore 能够避免创建另一个插件机制。管理 entry points 的代码往往都是重复的,所以stevedore 提供的管理类实现了动态加载插件通用模式。 stevedore 是openstack的一个项目,方便开发实现驱动插件的加载管理,在计算项目cloukitty上使用过。 stevedore 用户指南 加载方式 启用方式  
JennerLuo 发布于 6小时前 阅读 1

分布式存储ceph监控calamari安装

前言 由于源码安装calamari坑无限,因此开源社区有大神提供了rpm包,我上传到了我的网盘地址如下: 链接:http://pan.baidu.com/s/1jId15cy 密码:wwgu 环境 Linux:centos7,Ceph:Jewel Calamari模块 Calamari包含的组件主要有calamari-server,romana,salt,salt-minion,salt-master,diamond。 calamari-server 这个是提供一个与集群进行交互,并且自己封装了一个自己的API,做集中管理的地方,这个只需要在集群当中的某一台机器上安装,也可以独立安装。 romana 就是原来的calamari-client,这个叫client,其实是一个web的界面,这个叫calamari-web更好,现在已经更名为romana,这个也是只需要在集群当中的某一台机器上安装,也可以独立安装,这个需要跟calamari-server安装在一台机器上。 salt-master 是一个管理的工具,可以批量的管理其他的机器,可以对安装了salt-minion的机器进行管理,在集群当中,这个也是跟calamari-server安装在一起的。 salt-minion和salt 是安装在集群的所有节点上的,这个是接收salt-master的指令对集群的机器进行操作,并且反馈一些信息到salt-master上。 diamond 这个是系统的监控信息的收集控件,提供集群的硬件信息的监控和集群的信息的...
tqyin 发布于 2个月前 阅读 82

stevedore——启用方式

setuptools维护的入口点注册表列出了可用的插件,但是并没有为最终用户提供使用或启用的方法。 下面将描述用于管理要使用的扩展集的公共模式。 通过安装方式启用 对于许多应用程序,仅仅安装一个扩展就足以表明应该使用扩展。 用户不需要明确的配置来发现或启用扩展,因为它的入口点可以在运行时加载所有被发现的插件。 通过安装实现的示例包括 : python-openstackclient virtualenvwrapper 明确地启用 在其他情况下,扩展可能在系统范围内安装,但不应该为给定的应用程序或应用程序实例启用。 在这些情况下,部署或使用应用程序的人员将希望选择通过明确的配置步骤使用的插件。 通过配置指定插件启用的例子: Django apps Sphinx extensions Trac Plugins stevedore.named.NamedExtensionManager 自启用 最后,一些应用程序会询问它们的插件是否应该启用。  插件会查看系统上安装的其他库,检查外部设置,或者检查一个资源,看它是否可以由插件管理。 这些检查通常在运行时,或者当扩展被加载,或者当用户试图访问某个特定的资源时。 自启用的例子: anydbm PIL stevedore.enabled.EnabledExtensionManager  ...
JennerLuo 发布于 5小时前 阅读 1

Calico 的网络结构是什么?- 每天5分钟玩转 Docker 容器技术(68)

上一节我们部署了 Calico 网络,今天将运行容器并分析 Calico 的网络结构。
CloudMAN 发布于 2个月前 阅读 23

Calico 的默认连通性 - 每天5分钟玩转 Docker 容器技术(69)

calico 默认的 policy 规则是:容器只能与同一个 calico 网络中的容器通信。
CloudMAN 发布于 2个月前 阅读 24

jewel版本vstart脚本单节点启动多个集群

vstart.sh ``` #!/bin/sh # abort on failure set -e if [ -n "$VSTART_DEST" ]; then SRC_PATH=`dirname $0` SRC_PATH=`(cd $SRC_PATH; pwd)` CEPH_DIR=$SRC_PATH CEPH_BIN=$SRC_PATH CEPH_LIB=$SRC_PATH/.libs if [ -e CMakeCache.txt ]; then CEPH_BIN=$VSTART_DEST/../../bin CEPH_LIB=$VSTART_DEST/../../lib fi CEPH_CONF_PATH=$VSTART_DEST CEPH_DEV_DIR=$VSTART_DEST/dev CEPH_OUT_DIR=$VSTART_DEST/out fi # for running out of the CMake build directory if [ -e CMakeCache.txt ]; then # Out of tree build, learn source location from CMakeCache.txt CEPH_ROOT=`grep Ceph_SOURCE_DIR CMakeCache.txt | cut -d "=" -f 2` CEPH_BUILD_DIR=`pwd` fi # use CEPH_BUILD_ROOT to vstart from a 'make install' if [ -n "$CEPH_BUILD_ROOT" ]; then [ -z $CEPH_BIN ] && CEPH_BIN=$CEPH_BUILD_ROOT/bin [ -z $CEPH_LIB ] && CEPH_LIB=$CEPH_BUILD_ROOT/lib64 [ -z $EC_PATH ] && EC_PATH=$CEPH_LIB/ceph/erasure-code [ -z $CS_PATH ] && CS_PATH=$CEPH_LIB/ceph/compressor [ -z $OBJCLASS_PATH ] && OBJCLASS_PATH=$CEPH_LIB/rados-classes elif [ -n "$CEPH_R...
wzyuliyang 发布于 2个月前 阅读 16

如何定制 Calico 网络 Policy - 每天5分钟玩转 Docker 容器技术(70)

Calico 默认的 policy 规则是:容器只能与同一个 calico 网络中的容器通信。本节讨论如何定制 policy。
CloudMAN 发布于 2个月前 阅读 25

如何定制 Calico 的 IP 池?- 每天5分钟玩转 Docker 容器技术(71)

Calico 会为自动为网络分配 subnet,当然我们也可以定制。
CloudMAN 发布于 2个月前 阅读 19

新书发布《每天5分钟玩转Docker容器技术》

1. 这本书包含哪些内容? 2. 书与公众号文章有什么不一样? 3. 是否有电子版?
CloudMAN 发布于 2个月前 阅读 39

kolla-ansible执行openstack对接ceph

1、先决条件:     已经部署完成的openstack和ceph集群     已经创建完存储池     准备好ceph.conf,(Glance, Cinder, Nova)keyring:如下图 2、设置ceph客户端认证,在其中一个ceph节点执行以下命令: ceph auth get-or-create client.cinder mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=volumes, allow rwx pool=vms, allow rwx pool=images' ceph auth get-or-create client.glance mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=images' ceph auth get-or-create client.cinder-backup mon 'allow r' osd 'allow class-read object_prefix rbd_children, allow rwx pool=backups' 3、对接glance服务,执行以下操作: ceph auth get-or-create client.glance 将输出结果存入/etc/kolla/config/glance/ceph.client.glance.keyring 对接cinder服务,执行以下操作: ceph auth get-or-create client.cinder 将输出结果存入/etc/kolla/config/cinder/cinder-backup/ceph.client.cinder.keyring /etc/kolla/config/cinder/cinder-volume/ceph.client.cinder.keyring ceph auth get-or-create...
JennerLuo 发布于 2个月前 阅读 25

疯狂Spring Cloud连载(22)Web项目中使用Zuul

Spring Cloud Zuul
杨大仙的程序空间 发布于 4天前 阅读 276

疯狂Spring Cloud连载(21)Feign与Hystrix整合

Spring Cloud Hystrix Feign
杨大仙的程序空间 发布于 5天前 阅读 253

Kubernetes在vivo容器云平台中的应用与实践

本博文是我参加2017/11/04 K8S技术社区深圳站Meetup分享的PPT内容,主要介绍Kubernetes在vivo容器云平台的应用与实践,重点介绍我们跟业界大多数方案不一样的地方,包括整体架构(HA/Security)、定制化的应用滚动方案、Ingress方案及部署实践、容器网络方案以及在TaaS方向的探索与实践等等。
WaltonWang 发布于 2周前 阅读 1958 评论 15 点赞 7

Ceph分布式存储纠删码之初探EC

1.副本orEC? 把一个文件放进磁盘很难吗?不难,放进去就是了。 那么如果是特别重要的文件呢?也不难,多放几份就是了。 还记得怎么对待毕业论文的吗,电脑里存一份,U盘里存一份,网盘里再存一份,甚至好几个网盘里都存一份。内心战战兢兢,生怕几个月的努力(并没有。。。)付诸东流。这,就是副本存储。 假设我们的存储是以三副本方式进行的话,我们可以计算出实际利用率是一个很低很低的值,33.3%。那么有没有什么更好的办法呢,有,就是纠删码的方案。 利用纠删码储存文件,一共分三步: 把一个文件均分为K个数据块 将这K个数据块通过一定的方式联系起来生成M个校验块 当某几个数据块丢失时,利用校验块重新计算出丢失的数据块 以K,M取值为5、3为例,可以得出纠删码方案的利用率达到了5/8,62.5。在同样可以容忍丢失三个数据块的情况下,纠删码方案比副本方案容量利用率高出了近一倍!              可以看到重点就在于,如何计算出校验块以及如何利用其进行数据恢复,接下来就讲重点介绍这两部分,这,也就是EC的原理。 注意:这里的文件并不是指真实的文件,比如一首歌曲或者一部电影,而是由存储系统对真实文件进行条带化后生成的更小的文件。 2.EC原理 2....
freshyuan 发布于 6天前 阅读 116

快速了解人工智能结晶之语音转换文字

科技解放生产力,人工智能的应用如今是大热,那么今天就来给各位介绍一下IBM在这方面的一个小的尝试,语音转换文字。咱们来看一看相较于传统的转换,结合Watson的IBM是如何做到让识别率飙升的。
IBM Bluemix

疯狂Spring Cloud连载(20)Hystrix缓存与合并请求

微服务 Hystrix 缓存 合并请求
杨大仙的程序空间 发布于 1周前 阅读 337 点赞 1

私有云中Kubernetes Cluster HA方案

发现很多Kubernetes刚入门的同学对Kubernetes的Master高可用方案很感兴趣,官方又只给出了GCE上部署高可用的方案,因此我觉得有必要把我之前做的Kubernetes Master HA方案分享一下。
WaltonWang 发布于 1个月前 阅读 1122 评论 2 点赞 4

疯狂Spring Cloud连载(19)Spring Cloud整合Hystrix

Hystrix
杨大仙的程序空间 发布于 2周前 阅读 179

如何在Kubernetes集群中利用GPU进行AI训练

本博文主要介绍在Kubernetes集群中如何使用GPUs、使用时的注意事项以及存在的问题,在TensorFlow on Kubernetes项目中做怎样的调整才能使用GPUs进行AI训练等等。
WaltonWang 发布于 1周前 阅读 180 评论 5 点赞 1

解析Kubernetes 1.8中的基于Pod优先级的抢占式调度

在 1.8 的发布版本中,SIG Scheduling 通过引入 Pod 优先级和抢占特性扩展了共享集群的概念。这些特性允许在单一集群中混合运行不同类型的应用和任务,提高了集群的利用率和可用性。这些特性目前都是 alpha 版本。本文将对这一特性进行全面介绍,下一篇博文会从scheduler源码进行分析。
WaltonWang 发布于 3周前 阅读 1234 评论 2 点赞 3

运行第一个 Service - 每天5分钟玩转 Docker 容器技术(96)

上一节我们创建好了 Swarm 集群, 现在部署一个运行 httpd 镜像的 service。
CloudMAN 发布于 3天前 阅读 15

疯狂Spring Cloud连载(18)Hystrix断路器的开启和关闭

Spring Cloud Hystrix 断路器
杨大仙的程序空间 发布于 2周前 阅读 284

开源|基于TensorFlow的聊天机器人-ErGo

[云框架]TensorFlow Github地址: https://github.com/cloudframeworks-tensorflow/user-guide-tensorflow
好雨云帮 发布于 3个月前 阅读 118

Docker 最常用的监控方案 - 每天5分钟玩转 Docker 容器技术(78)

在本章中,我们将讨论几个目前比较常用的容器监控工具和方案,为大家构建自己的监控系统提供参考。
CloudMAN 发布于 2个月前 阅读 47

kolla-ansible部署openstack的ocata(附带的命令shell脚本)

  环境(离线部署https://my.oschina.net/u/857184/blog/1526474) 操作系统 CentOS Linux release 7.3.1611 (Core) 内核信息 Linux 3.10.0-514.el7.x86_64 硬件 虚拟机一台 网卡 2块 内存 8G  //all-in-one建议16G CPU 4 VCPU   安装epel-release ;安装python-pip,升级到最新 yum install epel-release yum install python-pip pip install -U pip 安装依赖包 yum install python-devel libffi-devel gcc openssl-devel libselinux-python 安装ansible yum install ansible 安装docker curl -sSL https://get.docker.io | bash 配置docker服务,这里的配置,根据官网的提示是为了防止kolla-ansible部署neutron-dhcp-agent 容器时候抛出 APIError/HTTPError # Create the drop-in unit directory for docker.service mkdir -p /etc/systemd/system/docker.service.d # Create the drop-in unit file tee /etc/systemd/system/docker.service.d/kolla.conf <<-'EOF' [Service] MountFlags=shared EOF 重启dockers服务 systemctl daemon-reload systemctl restart docker   安装docker python pip install -U docker 安装 升级python jinja版本 pip install -U Jinja2 ...
JennerLuo 发布于 3个月前 阅读 75

日志管理之 Docker logs - 每天5分钟玩转 Docker 容器技术(87)

本章我们将讨论监控容器的各种可用技术和方案,包括 Docker logs 命令、ELK、Fluentd 和 Graylog。
CloudMAN 发布于 4周前 阅读 429 评论 1 点赞 1

监控利器 sysdig - 每天5分钟玩转 Docker 容器技术(79)

通过 sysdig 我们可以近距离观察 linux 操作系统和容器的行为。
CloudMAN 发布于 1个月前 阅读 34

如何落地TensorFlow on Kubernetes

TensorFlow 作为最受欢迎的 Deep Learning 框架,已经火到没有朋友,然而在落地时,你会发现 TensorFlow 也并不是那么完美,它面临着资源隔离、进程难于管理、 PS 进程不能自动结束等诸多问题,我们还需要一个分布式框架配合使用才能发挥 Distributed TensorFlow 的真正威力,我想这个任务交给 kubernetes 最合适不过了。这是我在“七牛云 & K8S 技术社区架构师实践日: Kubernetes 落地最佳实践”中分享的关于我在落地 TensorFlow on Kubernetes 项目时的一些总结和思考。
WaltonWang 发布于 1个月前 阅读 459

使用DaemonSet+Taint/Tolerations+NodeSelector部署Nginx Ingress Controller

本博文,介绍了使用DaemonSet+NodeSelector+Tolerations的方式定义Nginx Ingress Controller,给专门节点打上Label+Taint,使得这些专门节点只运行Nginx Ingress Controller,而不会调度和运行其他业务容器,只用来做代理节点。
WaltonWang 发布于 3个月前 阅读 92 评论 3

疯狂Spring Cloud连载(17)Hystrix属性配置与回退

Spring Cloud 视频 Hystrix 微服务
杨大仙的程序空间 发布于 3周前 阅读 312 点赞 1

浅尝TensorFlow on Kubernetes

TensorFlow github 70K+ stars, Kubernetes github 27K+ stars, 两个都是在各自领域的霸主,本文从TensorFlow running in Kubernetes的角度,对两者的整合进行梳理和思考,看看能擦出什么样的火花。
WaltonWang 发布于 2个月前 阅读 772 评论 2

疯狂Spring Cloud连载(23)Spring Cloud集群使用Zuul

Spring Cloud Zuul使用
杨大仙的程序空间 发布于 3小时前 阅读 23

stevedore——启用方式

setuptools维护的入口点注册表列出了可用的插件,但是并没有为最终用户提供使用或启用的方法。 下面将描述用于管理要使用的扩展集的公共模式。 通过安装方式启用 对于许多应用程序,仅仅安装一个扩展就足以表明应该使用扩展。 用户不需要明确的配置来发现或启用扩展,因为它的入口点可以在运行时加载所有被发现的插件。 通过安装实现的示例包括 : python-openstackclient virtualenvwrapper 明确地启用 在其他情况下,扩展可能在系统范围内安装,但不应该为给定的应用程序或应用程序实例启用。 在这些情况下,部署或使用应用程序的人员将希望选择通过明确的配置步骤使用的插件。 通过配置指定插件启用的例子: Django apps Sphinx extensions Trac Plugins stevedore.named.NamedExtensionManager 自启用 最后,一些应用程序会询问它们的插件是否应该启用。  插件会查看系统上安装的其他库,检查外部设置,或者检查一个资源,看它是否可以由插件管理。 这些检查通常在运行时,或者当扩展被加载,或者当用户试图访问某个特定的资源时。 自启用的例子: anydbm PIL stevedore.enabled.EnabledExtensionManager  ...
JennerLuo 发布于 5小时前 阅读 1

快速了解人工智能结晶之语音转换文字

科技解放生产力,人工智能的应用如今是大热,那么今天就来给各位介绍一下IBM在这方面的一个小的尝试,语音转换文字。咱们来看一看相较于传统的转换,结合Watson的IBM是如何做到让识别率飙升的。
IBM Bluemix

stevedore-----python应用程序的动态插件的管理(文档手册)

python能够容易地实现代码的动态加载,在运行时发现并加载插件可以帮助你实现应用程序的配置和扩展。使用 __import__ 或者 importlib 能够实现这种功能。使用构建在 setuptools entry points基础上的 stevedore 能够避免创建另一个插件机制。管理 entry points 的代码往往都是重复的,所以stevedore 提供的管理类实现了动态加载插件通用模式。 stevedore 是openstack的一个项目,方便开发实现驱动插件的加载管理,在计算项目cloukitty上使用过。 stevedore 用户指南 加载方式 启用方式  
JennerLuo 发布于 6小时前 阅读 1

stevedore——加载方式

   在Setuptools entry points 里会注册一个命名空间 ,它定义了插件代码所期望的API。 每一个 entry point 有一个名字,这个名字在命名空间里允许不唯一。 stevedore 管理类使用 pkg_resources 来应用匹配到的规则。 驱动———单一名字,单一entry point 驱动程序支持资源资源视图的抽象 ,因此应用程序可以使用不同类型的资源。 例如, 驱动程序可以连接到数据库引擎,加载不同的文件格式,或者与来自不同提供商的类似web服务进行通信。 对于给定的应用程序,可以使用许多驱动程序,但是在应用程序和驱动程序之间的接口中隐含着这样的情况,即只有一个驱动程序用于管理给定的资源。 驱动程序模式的示例包括 : SQLAlchemy所使用的数据库客户端库 libcloud使用的云供应商API客户端 stevedore.driver.DriverManager 钩子 ——单一名字,多entry points 根据应用程序中发生的事件调用钩子、信号或回调。 应用程序的所有钩子可以共享单个名称空间(例如,my.application.hooks),并为触发事件使用不同的名称(例如,启动和预提交)。 多个入口点可以在名称空间中共享相同的名称,这样就可以在发生事件时调用多个钩子。 钩子模式的例子包括 : Emacs mode hook functions Django...
JennerLuo 发布于 6小时前

Rancher中的K8S认证和RBAC

本文将阐明如何使用Kubernetes API进行身份认证,以及RBAC授权模块如何与认证用户协同工作。
RancherLabs 发布于 9小时前 阅读 2

如何实现 Service 伸缩?- 每天5分钟玩转 Docker 容器技术(97)

本节演示如何 Scale Up 和 Scale Down Service。
CloudMAN 发布于 14小时前 阅读 6

云测试的优点

云测试(Cloud Testing),是基于云计算的一种新型测试方案。服务商提供多种平台,多种浏览器的平台,一般的用户在本地用Selenium把自动化测试脚本编写好,然后上传到他们网站,然后就可以在他们的平台上运行Selenium脚本。 云测试有下面几大优势: 1.立即可用     云测试提供一整套测试环境,测试人员利用虚拟桌面等手段登录到该测试环境,就可以立即展开测试。这将软硬件安装、环境配置、环境维护的代价转移给云测试提供者(公共云的经营者或私有云的维护团队)。 以现在的虚拟化技术,在测试人员指定硬件配置、软件栈(操作系统、中间件、工具软件)、网络拓扑后,创建一套新的测试环境只需几个小时。如果测试人员可以接受已创建好的标准测试环境,那么他可以立即登录。 2.装配完备     云测试不但可以提供完整的测试环境,还可以提供许多附加服务。对于测试机,它可以提供还原点,以便测试人员将虚拟机重置到指定状态。对于测试执行,它可以监控被测试程序的一举一动,例如注册表访问、硬盘文件读写、网络访问、系统日志写入、系统资源占用率、内存映像序列化、屏幕录像等。将这些信息与测试用例一起展现出来,可以帮助测试人员发现问题,定位错误。 3.专家服务  ...
耿直测试 发布于 1天前 阅读 2

[基础常识]迁移ECS云服务器

阿里云近期活动机型不错,吸引了不少新用户,包括一些想订新机替换旧机的老用户,因为可以省钱嘛。    这里说一下自己迁移ECS实例的过程,希望能帮到云友。  我有几张阿里云幸运券分享给你,用券购买或者升级阿里云相应产品会有特惠惊喜哦!把想要买的产品的幸运券都领走吧!快下手,马上就要抢光了。   过程:  查看旧机配置,为新机选型作参考       查看旧机数据盘使用情况,将数据复制到系统盘中,因为新机不打算购买数据盘       为旧机系统盘打快照       为旧机快照创建自定义镜像       订购新机时,选择“自定义镜像”      将域名解析到新机的公网IP 阅读原文http://click.aliyun.com/m/35495/ 
mcy0425 发布于 1天前 阅读 2

在线培训 | Kubernetes离线加速部署

作为K8s用户的你,是否也曾饱受从谷歌镜像仓库拉取镜像之苦? 11月29日晚20:30,Rancher在线培训第二季第三期——Kubernetes离线加速部署,教你优化中国区K8s使用体验。 约吗?
RancherLabs 发布于 1天前 阅读 7

腾讯云首发智能网关流控,公有云进入网络精细管控时代

全时全流的 IP-网关粒度的“监”与“控”能力仅是一个开始,腾讯云还将继续围绕网络数据的采集、分析和控制推出更多功能性产品,为公有云网络的运维和管理带来全新变革。
腾讯云社区 发布于 1天前 阅读 5

微服务架构企业级增强产品:数人云推出统一配置中心Hawk

![Markdown](http://i4.cfimg.com/598922/f007d1c8cead78a7.png) 11月16日,[数人云](https://www.shurenyun.com/)在PaaS Innovation大会上,正式发布企业应用架构管理体系EAMS,这是数人云轻量化PaaS平台的重要产品体系,也是数人云向微服务方向延伸,践行微服务落地的战略调整。传统企业对微服务应用的管理需求日益强烈,微服务也成为云计算原生应用的标准开发框架,是落地敏捷开发和部署的关键。如今,EAMS产品家族又多了一位核心成员——数人云统一配置中心Hawk。 互联网企业和传统金融等行业具有业务配置复杂,配置数据量大,配置容易出错等特点,如何能将配置数据与程序包解耦,避免对环境的依赖成为一大难点。特别是引入微服务后,业务配置数量急剧增加,出错概率也同步增加,如果能统一管控,支持多环境管理成为运维的一大难点和痛点。 基于微服务理念打造的分布式统一配置中心Hawk支持多种类型配置如Spring Cloud、Dubbo、Kubernetes Configmap、Logback、Linux Environment等等,具有完善的配置管理流程、配置实时推送、支持多集群多环境、多版本控制,更提供配置细力度的管理如灰度管理、任意版本重置等丰富功能。整个体系兼容开源社区的Spring Cloud Config以及...
数人云 发布于 2天前 阅读 4

比特币如何挖矿(挖矿原理)-工作量证明

在[区块链记账原理](https://learnblockchain.cn/2017/10/25/whatbc/) 一篇,我们了解到记账是把交易记录、交易时间、账本序号、上一个Hash值等信息计算Hash打包的过程。 我们知道所有的计算和存贮是需要消耗计算机资源的,既然要付出成本,那节点为什么还要参与记账呢?在中本聪(比特币之父)的设计里,完成记账的节点可以获得系统给与的一定数量的比特币奖励,这个奖励的过程也就是比特币的发行过程,因此大家形象的把记账称为“挖矿”,本文将详细讨论这个过程。
Tiny熊 发布于 2天前

基于Go技术栈的微服务构建

在大型系统的微服务化构建中,一个系统会被拆分成许多模块。这些模块负责不同的功能,组合成系统,最终可以提供丰富的功能。在这种构建形式中,开发者一般会聚焦于最大程度解耦模块的功能以减少模块间耦合带来的额外开发成本。同时,微服务面临着如何部署这些大量的服务系统、如何运维这些系统等新问题。 本文的素材来源于我们在开发中的一些最佳实践案例,从开发、监控、日志等角度介绍了一些我们基于Go技术栈的微服务构建经验。 开  发 微服务的开发过程中,不同模块由不同的开发者负责,明确定义的接口有助于确定开发者的工作任务。最终的系统中,一个业务请求可能会涉及到多次接口调用,如何准确清晰的调用远端接口,这也是一大挑战。对于这些问题,我们使用了gRPC来负责协议的制订和调用。 传统的微服务通常基于http协议来进行模块间的调用,而在我们的微服务构建中,选用了Google推出的gRPC框架来进行调用。下面这张简表比较了http rpc框架与gRPC的特性: gRPC的接口需要使用Protobuf3定义,通过静态编译后才能成功调用。这一特性减少了由于接口改变带来的沟通成本。如果使用http rpc,接口改变就需要先改接口文档,然后周知到调用者,如果调用者没有及时修改,很可...
UCloudTech 发布于 2天前 阅读 5

HTTPS 传输优化详解之动态 TLS Record Size

笔者在过去分析了诸多可以减少 HTTPS 传输延迟的方法,如分布式 Session 的复用; 启用 HSTS,客户端默认开启 HTTPS 跳转;采用 HTTP/2 传输协议;使用 ChaCha20-Poly1305 算法减少移动端 CPU 运算时间等。 通过这些方法,可以在很大程度上优化 HTTPS 在传输上的延迟,给网站用户带来较好的访问体验。 最近笔者又在考虑通过动态调节 TLS Record Size 来减少 HTTPS 传输延迟。 ### **TLS 与 TCP** TLS 协议是由记录层(TLS Record Layer)和握手层(TLS Handshake Layer)组成的,记录层处于协议的最底层,为 TLS 协议提供安全可靠的连接,为高层协议提供数据封装、压缩、加密等基本功能的支持。握手层协议处于记录层协议之上,握手层协议的作用在真正的应用数据传输之前,可以使客户端和服务器互相进行身份认证,协商加密算法以及生成加密密钥。一般来说,最大的 TLS Record 的大小为 16KB,而每个 TLS Record 包含一个 5Byte 的头部。 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接(连接导向)的、可靠的、 基于 IP 的传输层协议。 TLS 是建立在可靠的数据传输的基础之上,运行在 TCP 层之上,一个 TLS Record Size 由多个 TCP 包组成,通过 WireSh...
又拍云 发布于 2天前 阅读 6

运行第一个 Service - 每天5分钟玩转 Docker 容器技术(96)

上一节我们创建好了 Swarm 集群, 现在部署一个运行 httpd 镜像的 service。
CloudMAN 发布于 3天前 阅读 15

启用 Brotli 压缩算法,对比 Gzip 压缩 CDN 流量再减少 20%

Google 认为互联网用户的时间是宝贵的,他们的时间不应该消耗在漫长的网页加载中,因此在 2015 年 9 月 Google 推出了无损压缩算法 Brotli。Brotli 通过变种的 LZ77 算法、Huffman 编码以及二阶文本建模等方式进行数据压缩,与其他压缩算法相比,它有着更高的压缩效率。 根据 Google 发布的研究报告,Brotli 压缩算法具有多个特点,最典型的是以下 3 个: - 针对常见的 Web 资源内容,Brotli 的性能相比 Gzip 提高了 17-25%; - 当 Brotli 压缩级别为 1 时,压缩率比 Gzip 压缩等级为 9(最高)时还要高; - 在处理不同 HTML 文档时,Brotli 依然能够提供非常高的压缩率。 Brotli 凭借它优异的压缩性能迅速占领了市场,从下图可以看到,除了 IE 和 Opera Mini 之外,几乎所有的主流浏览器都已支持 Brotli 算法。 ![输入图片说明](https://static.oschina.net/uploads/img/201711/21112539_a8Qs.png "在这里输入图片标题") △ Brotli 算法支持情况 ### **又拍云 CDN 已支持 Brotli压缩算法** 之前又拍云已经支持了 Gzip 算法,在优化网站速度方面,又拍云始终不遗余力地进行优化。目前又拍云 CDN 已支持 Brotli 压缩算法,通过对新压缩算法的支持将压缩率提升 20% ,并且帮助...
又拍云 发布于 3天前 阅读 7

疯狂Spring Cloud连载(22)Web项目中使用Zuul

Spring Cloud Zuul
杨大仙的程序空间 发布于 4天前 阅读 276

docker 扫盲

1、docker扫盲 docker -v 查看docker版本信息 docker run -it --rm ubuntn:16.04 启动ubuntn touch a.txt 创建文件 docker run -it --rm python:latest 启动最新版本的python 2、切换docker的仓库地址为阿里云(dev.aliyun.com) 1)登录dev.aliyun.com 2)进入管理中心, 3)点击Docker Hub 镜像站点 复制 您的专属加速器地址:https://d7pbeng4.mirror.aliyuncs.com   4)打开 5)选择     6)输入 输入 i) docker-machine ssh default  ii) sudo sed -i "s|EXTRA_ARGS='|EXTRA_ARGS='--registry- mirror=https://d7pbeng4.mirror.aliyuncs.com  |g" /var/lib/boot2docker/profile iii) exit iv) docker-machine restart default             docker常用命令 1、docker images 查看所有镜像 2、docker ps 查看正在运行的容器 3、docker ps -a 查看所有的容器 4、docker run -it ubuntn:16.04 启动ubuntn镜像,-it表示启动容器且进入到容器里面 5、docker rm 容器id 删除一个容器(删除容器之前先要退出容器exit) 6、docker ps -aq 只显示容器的id 7、docker ps -q 只显示运行容器的id 8、docker rm `docker rm -aq` 删除所有的容器 9、docker stop `do...
yyy3 发布于 4天前

演讲实录 | 招银云创:容器PaaS正在让开发人员再也看不到IaaS

![Markdown](http://i2.cfimg.com/598922/7fe9104f9b18a45e.png) 嘉宾介绍:陈沙克,招银云创战略研究院总监,从2010年开始从事云计算相关工作,做OpenStack七年有余,目前在招银云创负责PaaS相关工作。此文为陈沙克在[数人云](https://www.shurenyun.com/)PaaS Innovation 2017,构建灵动新IT大会上的演讲实录。 招银云创是招商银行的全资子公司,代表招商银行进行科技的输出,致力于将招行30年的经验和技术积累输出给广大金融企业,帮助同业同行快速的金融创新。 ## 容器快速交付提高金融的互联网化 金融行业特性与其他行业在思维方式上有很大不同。 金融是强监管行业,尝试新技术面临监管的要求。那么,强监管下如何跟上变化的需要呢?这里面展开可以有很多故事。在Fintech互联网金融影响下,银行在监管上其实有所放松。其次,银行业有非常严格的安全性要求。由于历史原因,银行内部IT系统非常复杂,通常每家银行都有上百个系统。 ![Markdown](http://i2.cfimg.com/598922/ddc667af9b9530d1.png) 中国的银行体系非常庞大,这可能跟金融行业外朋友的感知不同。这些银行包括农村信用社、农村银行、城市商业银行等,他们都有巨大的IT系统托管需求。招银云创就是服务以上这些...
数人云 发布于 4天前 阅读 6

深度学习的异构加速技术(二):螺狮壳里做道场

无论在 FPGA 还是 ASIC 设计,无论针对 CNN 还是 LSTM 与 MLP,无论应用在嵌入式终端还是云端(TPU1),其构架的**核心都是解决带宽问题**。不解决带宽问题,空有计算能力,利用率却提不上来。
腾讯云社区 发布于 4天前 阅读 7

Kubernetes在vivo容器云平台中的应用与实践

本博文是我参加2017/11/04 K8S技术社区深圳站Meetup分享的PPT内容,主要介绍Kubernetes在vivo容器云平台的应用与实践,重点介绍我们跟业界大多数方案不一样的地方,包括整体架构(HA/Security)、定制化的应用滚动方案、Ingress方案及部署实践、容器网络方案以及在TaaS方向的探索与实践等等。
WaltonWang 发布于 2周前 阅读 1958 评论 15 点赞 7

解析Kubernetes 1.8中的基于Pod优先级的抢占式调度

在 1.8 的发布版本中,SIG Scheduling 通过引入 Pod 优先级和抢占特性扩展了共享集群的概念。这些特性允许在单一集群中混合运行不同类型的应用和任务,提高了集群的利用率和可用性。这些特性目前都是 alpha 版本。本文将对这一特性进行全面介绍,下一篇博文会从scheduler源码进行分析。
WaltonWang 发布于 3周前 阅读 1234 评论 2 点赞 3

私有云中Kubernetes Cluster HA方案

发现很多Kubernetes刚入门的同学对Kubernetes的Master高可用方案很感兴趣,官方又只给出了GCE上部署高可用的方案,因此我觉得有必要把我之前做的Kubernetes Master HA方案分享一下。
WaltonWang 发布于 1个月前 阅读 1122 评论 2 点赞 4

实弹军演-基于Ceph对象存储的实战兵法

保障国家权益的第一道防线是军队,而保障数据安全的最强壁垒则是存储。老司机多年经验总结,分享几点基于Ceph的对象存储实战兵法.
秦牧羊 发布于 4个月前 阅读 1309 评论 4 点赞 3

73款阿里巴巴开源软件详解!

详细解读阿里巴巴开源技术,包括框架、组件、引擎、数据库/存储、平台/系统、解决方案、工具、中间件、Web Sever、设计等十大类73款!
阿里巴巴

Spring Cloud 项目综述(技术栈一览)

Spring Cloud 为构建分布式系统和微服务提供了一些通用的工具,例如:配置中心,服务注册与发现,熔断器,路由,代理,控制总线,一次性令牌,全局锁,leader选举,分布式 会话,集群状态等。
侯法超 发布于 7个月前 阅读 6854 评论 14 点赞 17

API的文档自动生成——基于CDIF的SOA基本能力

当前,作为大部分移动app和云服务后台之间的标准连接方式,REST API已经得到了绝大部分开发者的认可和广泛的应用。近年来,在新兴API经济模式逐渐兴起,许多厂商纷纷将自己的后台业务能力作为REST API开放出来,给更广泛的第三方开发者使用。   但是,管理REST API并非是一件容易的工作。由于缺乏有效的接口数据schema约束,加上设计REST API时resource endpoint的安排,以及发送http请求的方式又都五花八门,REST API开发完成后,大多数情况下API开发者仍然需要手动书写API文档,让用户能按照文档的说明接入。并且在API发生变化时需要重写文档,这个过程费时费力而且容易出错。比如,一个REST API文档最少必须列明以下的基本信息:   * API的名称 * API所在的URL资源路径 * http请求方法(GET, POST, PUT等) * API提交数据的方式(查询参数、表单提交、JSON提交等) * 调用API返回数据的格式   在上面提供的REST API信息中,从API返回的JSON数据在大部分情况下甚至只能用“举例”的方法说明数据的结构,而无法精确表达出这段JSON数据中每个字段的精确含义和类型定义。这都是因为REST API缺少对JSON数据的schema定义而导致,而这种“举例”的方式毫无疑问是一种很无奈很...
尼采与旺财 发布于 8个月前 阅读 1781 评论 17

CheungSSH3.0国产自动化运维堡垒机

CheungSSH Web3.0 虽然不优秀,但衷心希望能给予支持和理解 项目地址:http://git.oschina.net/CheungSSH_OSC/CheungSSH 建议您使用git命令下载,因为文件比较大,如果用浏览器,和可能下载不完整 [root@CheungSSH ~]# git clone https://git.oschina.net/CheungSSH_OSC/CheungSSH.git 讨论QQ群:517241115        在当今互联网的发展大势下,云计算和大数据已经成为主导。在两大趋势下,企业的服务器数量日益增多,如何有效的管理众多的服务器,已经成为了各大公司考虑的问题。在传统的人工管理模式下,已经很难做到高效的维护,是人管理服务器?还是服务器管理人?        为了解决这个问题,我痴迷于运维自动化研究,目前后端使用的Python语言+Django的Web框架,前端使用Bootstrap+Javascript+jQuery框架开发的CheungSSH Web3.0自动化运维系统,通信协议采用Linux系统自带的SSH协议,无Agent。并通过Paramiko库完成自动化登录,本系统可以基本满足日常的自动化运维需求。系统全程由我自主研发,不采用任何第三方工具和接口。        系统设计不足之处请各位朋友指出,也感谢大家的支持和信任,如果在使用过程中遇到任何问题,或者有任何的意见和建议...
张其川 发布于 9个月前 阅读 7843 评论 26 点赞 21

用大白话聊聊分布式系统

一提起“分布式系统”,大家的第一感觉就是好高大上啊,深不可测,看各类大牛关于分布式系统的演讲或者书籍,也大多是一脸懵逼。本文期望用浅显易懂的大白话来就什么是分布式系统、分布式系统有哪些优势、分布式系统会面临哪里挑战、如何来设计分布式等方面的话题来展开讨论。
waylau 发布于 9个月前 阅读 4432 评论 11 点赞 8

使用spark计算文档相似度

使用spark,TF_IDF计算文档相似度
penngo 发布于 11个月前 阅读 3070 评论 2 点赞 5

构建多平台的Ignite集群:Java+.NET

Ignite集群可以由它支持的任意平台启动的节点组成,包括Java、.NET和C++。本文会介绍如何通过NuGet和Maven运行一个.NET/Java集群,作为一个示例,本文会创建一个跨平台的点对点聊天系统。
李玉珏 发布于 12个月前 阅读 1751 评论 4 点赞 3

配置 DHCP 服务 - 每天5分钟玩转 OpenStack(89)

前面章节我们看到 instance 在启动过程中能够从 Neutron 的 DHCP 服务获得 IP,本节将详细讨论其内部实现机制并开始配置。
CloudMAN 发布于 1年前 阅读 1924 点赞 1

Apache Hadoop 入门教程

Apache Hadoop 是一个由 Apache 基金会所开发的分布式系统基础架构。可以让用户在不了解分布式底层细节的情况下,开发出可靠、可扩展的分布式计算应用。 Apache Hadoop 框架,允许用户使用简单的编程模型来实现计算机集群的大型数据集的分布式处理。它的目的是支持从单一服务器到上千台机器的扩展,充分利用了每台机器所提供本地计算和存储,而不是依靠硬件来提供高可用性。其本身被设计成在应用层检测和处理故障的库,对于计算机集群来说,其中每台机器的顶层都被设计成可以容错的,以便提供一个高度可用的服务。 Apache Hadoop 的框架最核心的设计就是:HDFS 和 MapRedu
waylau 发布于 1年前 阅读 5863 评论 6 点赞 13

Hive Transaction 事务性 小试

提到Hive一般都会想到,Hive是数据仓库,支持类SQL查询,有很多语法支持,可以嵌套MR,写Transform、写UDF/UDAF等,但是,不支持更新操作。所以Hive的常见也一般都是一次写入,频繁读取。从Hive 0.13开始,加入了ACID的新feature,但是0.13的时候还不支持insert、update和delete操作,我也并没有欣然的当小白鼠。 目前我们平台使用hive1.2.1的社区版,业务上也遇到了需要更新的场景。也是继续调研Transaction的特性。
王二铁 发布于 1年前 阅读 2935 评论 5

企业级容器Registry开源项目Harbor架构简介

企业级容器Registry开源项目Harbor架构简介 作者:姜坦 张海宁 (本文作者为Harbor项目组核心成员,于2016年9月5日作了更新。) 1. Harbor项目 VMware公司最近开源了企业级Registry项目Harbor,由VMware中国研发的团队负责开发。Harbor项目是帮助用户迅速搭建一个企业级的registry 服务。它以Docker公司开源的registry为基础,提供了管理UI, 基于角色的访问控制(Role Based Access Control),镜像远程复制(同步),AD/LDAP集成、以及审计日志(Audit logging) 等企业用户需求的功能,同时还原生支持中文,对广大中国用户是一个好消息。本文将介绍Harbor项目的主要组件,并阐述Harbor的工作原理。 (源代码地址:https://github.com/vmware/harbor ) 2.架构介绍 1)    主要组件 Harbor在架构上主要由6个组件构成: ·      Proxy:Harbor的registry, UI, token等服务,通过一个前置的反向代理统一接收浏览器、Docker客户端的请求,并将请求转发给后端不同的服务。 ·      Registry: 负责储存Docker镜像,并处理docker push/pull 命令。由于我们要对用户进行访问控制,即不同用户对Docker image有不同的读写权限,Registry会指向一个token服务,强制用户的...
project_harbor 发布于 2年前 阅读 2944 评论 4 点赞 5

LVM 类型的 Storage Pool - 每天5分钟玩转 OpenStack(8)

本节为 KVM 存储虚拟化的第二篇,介绍 LVM 类型的 Storage Pool
CloudMAN 发布于 2年前 阅读 1976 点赞 9

KVM 存储虚拟化 - 每天5分钟玩转 OpenStack(7)

KVM 通过 Storage Pool 管理存储,而文件目录是最常用的 Storage Pool。
CloudMAN 发布于 2年前 阅读 4685 评论 2 点赞 7

Spark HA部署方案

部署Spark的HA模式
ifree613 发布于 2年前 阅读 2935 评论 2 点赞 8

浅谈 CAP 理论

本文介绍了介绍了分布式系统著名的 CAP 理论。什么是 CAP 理论?为什么说 CAP 只能三选二?了解 CAP 对于系统架构又有什么指导意义?本文将一一作答。
waylau 发布于 2年前 阅读 3636 评论 10 点赞 10

Apache Ignite(三):Ignite和Hazelcast性能对比测试

性能测试基于Ignite 1.5.0-b1版本和Hazelcast 3.6-EA2版本,评估和对比了他们的各种原子化和事务化缓存操作、基于SQL的缓存查询的性能,所获得的结果包括吞吐量,延迟以及基准测试执行过程中测量的各种指标。 从结果上看,Ignite的性能要比Hazelcast好很多。
李玉珏 发布于 2年前 阅读 3298 评论 6 点赞 5

Play Spark RDD

spark RDD 编程经验
venps 发布于 2年前 阅读 3351 评论 1 点赞 5
顶部