云计算
文章平均质量分 89
xialingming
云计算/faas/kubernetes
展开
-
Crossplane详解2——编写自己的Openstack Provider
目录1. 当前的Provider 支持程度1.1 官方支持的Provider:1.2 个人针对Openstack 的支持:2. 理解crossplane-runtime3. 创建一个openstack provider总结:1. 当前的Provider 支持程度1.1 官方支持的Provider:AWS,支持最丰富,且版本总是跟着最新的Crossplane 而更新,可惜没有针对虚拟机的Managed Resource,EC2等等。阿里云,非常没有诚意,这么多云资源,只象征性的,有一个Redis原创 2021-09-26 15:34:18 · 701 阅读 · 0 评论 -
Crossplane 详解1——基础设施即代码
目录假设一个场景解决Crossplane详解平台开发者需要做什么假设一个场景贵司的开发团队的开发者A,需要在代码里使用AWS的S3服务,如果没有Crossplane 的话。他需要:自己注册一个AWS账户,或者拿到贵司的AWS账户去AWS上,买一个S3服务,自己填一大堆的配置。把这个S3的服务的配置放在一个secret 里,并挂载到了pod里。过了几天,贵司的另外一个开发团队开发者B,需要在代码里使用AWS的MySQL服务,他需要走完上一个同学一样的历程。又过了几天,贵司的运维同学C,想要一原创 2021-09-16 11:47:39 · 2843 阅读 · 1 评论 -
深入分析KubeEdge的kubectl logs---cloudstream 和 edgestream 的实现
文章目录前言背景一、总体架构二、edgestream 启动 创建websocket1. 读取本地的证书配置2. 连接cloud 端的 tunnel server三. 监听该 Websocket四. cloud的tunnel 保存session五. tunnel 监听上一步接收的wss connection六. 创建stream server 时引用了tunnel 指针七. API Server 发起`/containerLogs`八. 从api server 的请求中提取 session并往session原创 2020-10-23 11:49:53 · 3473 阅读 · 10 评论 -
深入分析kubeedge 中的EdgeMesh 通信方式
系列文章目录我还会有其他深入分析kubeedge 的文章文章目录系列文章目录前言一、EdgeMesh 的作用二、EdgeMesh 的入口三、EdgeMesh 的启动1. plugin.Install()2. listener.Init()3. proxy.Init()4.listener.Start()5. dns.Start()6. 接收beehive message总结前言目前kubeedge 1.4 的版本中,edgecore 使用service 的方式在edge node上进行管理。原创 2020-10-14 07:52:42 · 4997 阅读 · 2 评论 -
手工体验docker 是怎么管理网络的-kubelet 如何创建网络(3)
我们已经从浅入深的总结了两篇文章,来分析docker 如何利用cni 创建网络。今天我们来到终结篇,分析下kubelet 是如何利用cni 创建网络。1. kubelet 创建容器的过程我们把这张图放在这里。kubelet 是一个本地的服务,会定期watch 分配到自己头上的pod,当发现自己需要处理一个addpod 的动作的时候。会通过一个kubecontainer.Runtime去执行pod 的生命周期管理,这个Runtime 的一个实现就是kuberuntime.NewKubeGenericRu原创 2020-10-01 12:54:01 · 256 阅读 · 0 评论 -
手工体验docker 是怎么管理网络的-docker 直接使用CNI插件(2)
1. CNI 简介不管是 docker 还是 kubernetes,不管是在现在还是在未来,在网络方面都不会一个完美的、终极的、普适性的解决方案,不同的用户和企业因为各种原因会使用不同的网络方案。目前存在网络方案 flannel、calico、openvswitch、weave、ipvlan 还有我司的kube-ovn等,而且以后一定会有其他的网络方案,这些方案接口和使用方法都不相同,而不同的容器平台都需要网络功能,它们之间的适配如果没有统一的标准,会有很大的工作量和重复劳动。我们不可能为了一个新的网络原创 2020-09-28 15:13:03 · 1254 阅读 · 1 评论 -
手工体验docker 是怎么管理网络的(1)
由于容器运行在自己单独的network namespace里面,所以都有自己单独的协议栈。dockerd 会创建一个linux 虚拟网络设备:docker0。在启动每一个容器的时候,都会创建一种虚拟网络设备 veth-pair。veth-pair 是什么顾名思义,veth-pair 就是一对的虚拟设备接口,它都是成对出现的。一端连着协议栈,一端彼此相连着。正因为有这个特性,它常常充当着一个桥梁,连接着各种虚拟网络设备,典型的例子像“两个 namespace 之间的连接”,而这正是被docker拿来管理网原创 2020-09-27 17:39:26 · 159 阅读 · 0 评论 -
Kubeedge概述
1. kubeedge是什么KubeEdge基于Kubernetes构建,并将容器化的应用编排和设备管理扩展到端上的主机。 它由云端和边缘端组成,为网络,应用的部署以及云和边缘之间的元数据同步提供架构支持。 它还支持MQTT,它使边缘设备可以通过边缘节点进行访问。借助KubeEdge,可以轻松地将现有的复杂机器学习,图像识别,事件处理和其他高级应用程序部署和部署到Edge。 借助在Edge上运...原创 2020-04-21 18:00:15 · 12029 阅读 · 0 评论 -
Kubernetes 联邦集群 kubefed v2的使用
1. 描述跨群集同步资源: 通过将多个集群组成一个联邦,可以在多个群集中的保持资源同步。 例如,可以确保多个群集中部署相同的程序。跨群集发现:联邦提供了自动配置DNS服务器和负载均衡器与所有群集后端的功能。2. 概念统一概念描述联邦一组Kubernetes集群,提供一个集群组成一个大资源的池子的接口,该接口可用于在这些集群之间部署Kubernetes应用程序。联...原创 2019-10-21 09:57:41 · 2762 阅读 · 2 评论 -
如何理解灰度发布
服务升级机制 在项目敏捷开发的过程中,不可避免需要快速、安全的更新应用,目前比较流行的几种部署方案有: 滚动发布、灰度发布/金丝雀发布和蓝绿部署。滚动发布(目前中信银行内部生产环境交易系统的发布方式): 一般是取出一个或者多个服务器停止服务,执行更新,并重新将其投入使用。周而复始,直到集群中所有的实例都更新成新版本。 这种部署方式相对于蓝绿部署,更加节约资源——它不需要运行两个集...原创 2018-10-24 18:17:46 · 6105 阅读 · 0 评论 -
在Kubernetes集群中使用GPU用于机器学习
随着机器学习应用的普及,改善其开发和部署平台对于提高机器学习应用的应用开发、测试以及上线效率提升非常关键,目前在看很多家AI企业正在研发其自身的深度学习PaaS平台,Kubernetes作为容器编排的入口,毫无疑问是最应该被支持的。值得高兴的是,Nvidia官方以及在Github上说明如何将自家Nvidia-docker2工具和Kubernetes结合的方案,本文结合前一篇博客,做了一个简单...原创 2018-08-12 15:49:23 · 2243 阅读 · 0 评论 -
如何在AWS中正确使用Keepalived
虚拟IP(VIP)是一种网络模式,它允许管理员快速将IP地址从一台服务器移动到另一台服务器,而几乎不会停机,也称为浮动IP,如果手动切换服务器的速度超过DNS 的TTL时,最好配上keepalived。在私有环境中部署keepalived本身并没有好说的,但是aws中存在诸多限制,其中三个需要明确指出的: 1. VRRP协议的组播被禁止,也就是说keepalived需要调整心跳...原创 2018-07-30 20:28:33 · 4946 阅读 · 1 评论 -
Faas 和无服务器架构
Faas 和无服务器架构从IaaS、PaaS、SaaS到CaaS,再到火热的微服务架构,人们孜孜不倦的追求着将硬件资源抽象化,从虚拟机到容器,再到现在的无服务器架构,FaaS是Functions as a Service的简称,代表业务方视角,而Serverless更多是从部署的视角,其实描述的是类似的事情。目前AWS的Lambda是无服务架构的代表,你可以很轻易的尝试,目前每个月的前...原创 2018-07-30 20:31:35 · 4020 阅读 · 1 评论 -
Pass平台如何用Vsphere管理虚拟机-2
Pass平台如何用Vsphere管理虚拟机-2接上篇 Pass平台如何用Vsphere管理虚拟机-1 本篇描述如何利用Vsphere API接口去实现基于Vspher的云主机管理功能。API接口描述: Python SDK for the VMware vSphere API that allows you to manage ESX, ESXi, and vCenter....原创 2018-07-30 20:32:21 · 477 阅读 · 0 评论 -
k8s 1.9.6 快速部署
部署架构说明非高可用版本master集群 192.168.8.40(master_01)node节点 192.168.8.41(node_01)必要的检查说明:CentOS 7hostname, MAC , product_uuid 唯一磁盘SWAP关闭 swapoff -ased -i ‘/ swap / s/^/#/’ /etc/fstab检查端口占用...原创 2018-07-30 20:33:52 · 889 阅读 · 0 评论 -
Paas如何管理对接vSphere平台
前言:Vmware 占据私有云市场的50%以上的份额,任何PASS层想做好与IAAS的对接,vmware云主机的管理是必须要去实现的,pass平台中要能够支持如下功能:1. 创建vmware云主机2. 管理云主机(启、停、删)3. 在云主机中部署容器编排集群(K8s、swarm等)4. 基于负载情况的弹性扩缩容灵雀云的Alauda EE 在17年底针对Vsphere6.5 平...原创 2018-07-30 20:36:27 · 959 阅读 · 0 评论 -
IAAS分组调度算法实现
IAAS分组调度算法实现问题描述:iaas平台拿到一个调度申请,大体像这样: 请在WEB资源池中,申请100组1主1从的redis服务器,在WEB资源池中,有10台交换机,每台交换机下,可以创建的服务器数量是:[9,1,3,4,8,7,2,5,6,0,20] 为了满足用户HA(高可用)的要求,任意一组redis必须在两个交换机上,另外希望,每一次调度完成以后,可创建的服务器数量尽量...原创 2018-07-30 20:37:06 · 1205 阅读 · 0 评论 -
深入理解无服务器架构(Faas/Serverless)
摘要无服务器架构(Faas/Serverless),是软件架构领域的热门话题。 AWS,Google Cloud和Azure - 在无服务器上投入了大量资金,已经在看到了大量专门针对Faas/Serverless的文章、书籍,开源项目,会议。 但什么是无服务器,为什么(或不是)值得考虑? 文章参考文末链接很多,网上也能找到文章粗糙的翻译(也许因为文章实在太长了吧)原文中有些内容也不是很新,结合...原创 2018-08-04 18:08:15 · 26769 阅读 · 1 评论 -
如何低成本的在Docker中运行TensorFlow
摘要: 运行深度学习算法的需要一些计算能力,这主要由GPU提供。 但是我想在云计算的时代几乎不会有人喜欢,从头搭建那么多复杂的技术栈,那些工具,而且一个Tesla还很贵,心血来潮买个大GPU,然后丢在那里让它生锈么?我们喜欢在在Docker容器中安装它们,以避免污染其他程序,并能够与其他人分享结果。 这意味着我必须配置Docker来使用GPU的计算能力。另外谈到低成本,我想你对阿里云或者腾...原创 2018-08-07 00:14:49 · 3520 阅读 · 0 评论 -
搭建安全的私有Docker镜像仓库
网上有些文章写这个,但是要么告诉你直接加insecure registries,要么直接用CA作为服务的证书了,可以说很粗暴了,有些直接必须要求你设置CN,不能用IP地址。这些距离一个理想的纯私有环境的镜像仓库部署有不小差距,因此有了此文。1. 期望不需要通过设置insecure_registies的方式,在客户端随意pull/push一个私有镜像仓库源中的镜像ca证书不...原创 2018-07-30 20:26:27 · 879 阅读 · 0 评论