编写自己的ansible action plugin

趁周末把ansible action plugin 写了一个简单的例子,我们日常工作中可能很少会用到action plugin ,但是如果我们能通过action plugin 做一些初始化的工作,例如设定一些默认值,这样我们的ansible playbook 可能会简介很多 例如我们写了一个module需要传递2个参数,如果我们这个mod……

ansible filter (编写你自己的ansible filter)

有时候我们写自己的playbook的时候变量处理真的是特别让人头大,有些变量的操作在python中就很简单,但是放到ansible playbook中就会很麻烦,所以,我们今天来看一下如何编写自己的ansible filter来帮助我们处理一下变量 直接看例子吧:

我们来分……

如何创建自己的ansible module

  什么是 ansible module? Ansible modules 是一种使用python写成的一些功能块,可以在yaml文件中调用,也就是playbook中可以调用的模块,例如常见的模块 copy , debug Ansible 本身就提供了很多很多的模块 地址 什么时候和什么情况下我们会需要自己写module? 绝大……

如何通过Python 自动寻找代理增加网站的流量(刷流量PV)

好吧,无聊的时候写了一个自动获取免费代理的文章   连接地址 既然我们获得了免费的代理列表,那么有很多事情可以干,比如 , 爬取某个网站并且没有被封IP的风险, 比如, 增加某网站的流量, 下面是第一版, 这个砖就给大家提供个思路,因为之前使用urllib2 来实现,但是问题是没有办法保持他的回话,也就是不能达到真正和浏览器一样的效果,所……

iowait 过高问题的查找及解决linux

I/O问题一直是一个比较难定位的问题,今天线上环境遇到了I/O 引起的CPU负载问题,看到了如下这篇比较好的文章,完饭后的我还在和西红柿和黄瓜在减肥的路上抗争,正好将原文翻译成中文,供广大同胞品鉴   Linux 有许多可用来查找问题的简单工具,也有许多是更高级的   I/O Wait 就是一个需要使用高级的工具来de……

限制读取s3的某个文件夹下文件的权限

  例如我们只想开放给某个role  我们s3中特定的一个文件夹下的东西 我的s3 叫my-s3   GetObject 是说如果你知道路径了,直接下载没问题,但是如果你想使用一些

这种下……

cli 批量restore s3 DEEP_ARCHIVE

因为s3 DEEP_ARCHIVE 价格非常便宜,所以很多人选择用它来存储不常用的数据,因为价格比较低,所以这部分数据不是实时可以读取的,也就是说,如果你想读取,你必须先把数据从DEEP_ARCHIVE 格式转换会正常的s3数据,然后才能读取,每个文件转换需要12小时: 如果文件较少: 你可以通过web页面,点到最后的object 层级(……

什么是gitops

Gitops 其实很简单,就是将所有的架构相关的东西,全部用git来管理 我们在git中声明一些代码,这些代码对应的就是我们的生产环境,例如一个服务,我们希望的这个服务的期望状态 如果我们想要修改这个服务,我们需要通过提交pr的方式来进行,然后git 触发一系列的job来帮我们修改我们的服务 举个简单的例子:基于kubernetes的服务……

什么是ami

aws 默认给我们提供了很多基础的镜像(image): ubuntu fedora redhat windows etc 并且我们可以通过userdata来对这些镜像进行一些定制化的处理(首次启动的时候),或者ec2启动以后,ssh 到服务器,然后安装我们想要的rpm,配置任何我们想配置的东西 但是,如果我们可以定制自己的镜像,这样基于我……

istio Ingress Gateways

istio里边另外一个概念就是 Ingress Gateways 了,我们先说一下为什么需要这个东西 前边说的VirtualService可以来控制说发送到我们service的流量,10%, 90%之类的,但是,前边说的例子是一个后端服务 也就是说,请求这个后端的也是pod,如下:   但是如果是前端的pod, 不经过任何pod……

Istio VirtualService

Istio 中一个比较重要的概念就是VirtualService , 那么什么是VirtualService? 我们如果单纯从名字来看,感觉可能是一个和kubernetes 中service类似的概念,但实际上VirtualService 和kubernetes中的service是一个完全不同的概念,两者并不是替代关系 那么我们为什么需要……

istio 组件

Galley: 主要是把kubernetes 的yaml文件转义成istio 能够理解的格式,这就是让我们不用关心istio具体的语法,我们只需要负责kubernetes就可以了 如果这个pod挂了,我们就无法apply我们的yml Pilot 主要是把istio懂的语法转义成Envoy(proxy)的语法格式,让Envoy可以同样理解我……

什么是Envoy

什么是Envoy envoy是一个application , proxy,也就是我们istio中的sidecar, 这是istio使用的一个第三方工具 envoy可以脱离istio 独立运行,但是需要额外的配置,istio把envoy 和kubernetes 链接起来了,并把envoy进行了封装,让我们使用istio的时候可以简单的使用 ……

如何安装 istio

istio 的安装应该非常简单,我们不需要自己去修改每个Pod的定义来增加一个proxy 我们前提是有一个Kubernetes, 可以是自己的minikube ,也可是aws 的eks 然后我们需要一些yaml file ,我们可以从这个git 获取 https://github.com/DickChesterwood/istio-fle……

什么是 istio

最近istiod的越来越流行,所以最近开始学习关于istio的一些原理 首先,什么是istio? istio是 Service mess 的一种实现形式,那什么是 Service mess 呢? Service mess 我们可以理解为是 kubernetes 其中的额外一层(不仅仅限于kubernetes),专门负责网络的一层,让我们能……