
云原生/微服务架构/运维 系列课程 快速学习实战应用
docker,k8s/k3s/rancher/helm,ai平台,大数据平台架构(presto),airflow调度,istio/linkerd服务网格,kubeflow分布式训练和服务化,网关(kong/nginx), 消息队列,prometheus监控生态,efk日志系统
¥29.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅博主任意付费专栏,享有该博主全部专栏一年阅读权限。
本专栏为虚拟产品,一经付款概不退款,敬请谅解。
腾讯数据架构师
主要涉及领域 docker kubernetes 云原生技术,大数据架构,分布式微服务,自动化测试、运维,AI平台
-
原创 kong 自建一个具有健康检查功能的http/tcp负载均衡器,配置流量权重,自动/手动目标健康,流量统一认证、鉴权、限流限速、修正,监控、日志等功能
Kong目前kong的最新版为2.2,官方git在https://github.com/Kong/kong,下面是一个kong的简单结构kong的基础结构包含upstream(负载均衡器)、target(目标机器)、service(流量入口)、route(引流规则)。流量如果符合route规则,就会引入到service,进而流入到绑定的upstream。再根据upstream配置的负载均衡策略,流入到健康的target。kong包含无数据库模式,是为了更方便运维管理。不过很多操作会被限制,所以这里还2020-12-10 23:19:10284
0
-
原创 GraphQL 、flask-graphql、Graphene| 一种配得上凡尔赛的API框架
当我们使用flask构建一个简单应用时,我们通常会像下面这样构建该应用:from flask import Flaskimport jsonapp = Flask(__name__)@app.route("/")def homepage(): return "Welcome!"@app.route("/get_response", methods=['GET'])def response(): return json.dumps({ "name":2020-12-09 23:22:35134
0
-
原创 jmeter 压力测试教程全解
: 压力测试使用Jmeter进行RPC压力测试2020-12-07 20:21:163115
0
-
原创 GraphQL | 一种配得上凡尔赛的API框架
当我们使用flask构建一个简单应用时,我们通常会像下面这样构建该应用:from flask import Flaskimport jsonapp = Flask(__name__)@app.route("/")def homepage(): return "Welcome!"@app.route("/get_response", methods=['GET'])def response(): return json.dumps({ "name":2020-11-28 18:24:56130
0
-
原创 mac电脑开发环境配置
macOS安装Homebrew主要思路为,替换brew的镜像源。1.先把https://raw.githubusercontent.com/Homebrew/install/master/install 文件下载下来(使用浏览器打开,另存为也可以),把文件命名为install.txt接下来,修改install.txt文件:应该在第7行左右,(记住这里的原来的url,后面你可能需要还原回来)...2020-08-23 23:42:41371
0
-
转载 Istio 组件详解
1. istio 组件构成以下是istio 1.1 官方架构图:虽然Istio 支持多个平台, 但将其与 Kubernetes 结合使用,其优势会更大, Istio 对Kubernetes 平台支持也是最完善的, 本文将基于Istio + Kubernetes 进行展开.如果安装了grafana, prometheus, kiali, jaeger等组件的情况下, 一个完整的控制面组件包括以下pod:% kubectl -n istio-system get podNAME2020-06-26 19:49:38642
0
-
转载 Knative详解
Knative 主要由 Build、Serving 和 Eventing 三大核心组件构成。Knative 正是依靠这三个核心组件,驱动着 Knative 这艘 Serverless 巨轮前行。下面让我们来分别介绍一下这三个核心组件。buildKnative Build 是基于现有的 Kubernetes 能力之上,提供的一套标准化、可移植、可复用的容器镜像构建方式。通过在 Kubernetes 上运行复杂的构建任务,Knative Build 使你不必再单独开发和重复这些镜像构建过程, 从而通过系统化2020-06-26 19:10:342078
0
-
原创 开源媒体标注系统cvat
github地址: https://github.com/opencv/cvat安装方法git clone https://github.com/opencv/cvat.gitcd cvatdocker-compose build # 构建前后端镜像,如果构建中有网络访问不到,注意关闭代理docker-conpose up -d # 启动docker exec -it cvat bash -ic 'python3 ~/manage.py createsuperuser' #2020-05-28 23:39:051093
2
-
原创 k8s prometheus/grafana 监控系统建设
prometheus架构其中1、pushgateway是用来接收业务推送的数据形成metrics接口。2、exporter是用来监控组件(三方中间件)并形成metrics接口的组件的统称,负责收集目标对象(host, container…)的性能数据,并通过 HTTP 接口供 Prometheus Server 获取。3、prometheus server是prometheus的核心,相...2021-01-26 20:22:5686
0
-
转载 iptable详解概念
分享一个朋友的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!大家可以看看是否对自己有帮助:点击打开docker/kubernetes入门视频教程(腾讯内推)联系微信更多iptable系列文参考(转载于):http://www.zsythink.net/archives/tag/iptables/防火墙相关概念此处先描述一些相关概念。从逻辑上讲。防火墙可以大体分为主机防火墙和网络...2020-04-18 16:28:19467
0
-
转载 airflow时区问题
pip安装apache-airflow 的修改方式1、在airflow家目录下修改airflow.cfg,设置default_timezone = Asia/Shanghai2、进入airflow包的安装位置,也就是site-packages的位置,以下修改文件均为相对位置修改airflow/utils/timezone.py在 utc = pendulum.timezone(‘UTC...2020-03-26 13:12:29609
0
-
原创 kubernetes 容器内获取Pod信息(包括:宿主主机IP)
kubernetes 自从1.7开始,可以在pod 的container 内获取pod的spec,metadata 等信息。具体方法可以通过env获取: env: - name: MY_NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName ...2020-03-09 15:46:035154
2
-
原创 rancher中添加用户,赋予权限
全栈工程师开发手册 (作者:栾鹏) 架构系列文章登录rancher,先在全局添加用户根据需要在全局/集群/项目中创建角色添加或者编辑角色,为角色授权将全局用户添加到集群或者项目成员中添加时为用户绑定角色这样就成功创建了用户-绑定了角色-赋予了权限。用户登录效果...2020-03-04 17:18:392153
0
-
原创 docker/k8s容器优雅退出(python,go,java)
docker kill 直接杀死容器进程docker stop是向容器进程发送SIGTERM信号,本文介绍容器中的进程捕获 SIGTERM 信号,优雅的退出。先来了解一下信号SIGINT程序终止(interrupt)信号, 在用户键入INTR字符(通常是Ctrl-C)时发出,用于通知前台进程组终止进程。SIGQUIT和SIGINT类似, 但由QUIT字符(通常是Ctrl-)来控制. ...2020-02-29 18:46:481848
0
-
原创 k8s优先级priority的使用
全栈工程师开发手册 (作者:栾鹏) 架构系列文章直接使用kubectl explain pod.spec命令可以看到当前k8s支持的priority的属性我这边的是1.15的k8s,可以看到的是 priority <integer> The priority value. Various system components use this field to ...2020-02-29 17:13:54686
1
-
转载 tshark/wireshark抓包小结
tshark命令详解网络抓包,分析工具。wireshark 的 Linux命令行工具。tshark option-i 设置抓包的网络接口,不设置则默认为第一个非自环接口。-D 列出当前存在的网络接口。在不了解OS所控制的网络设备时,一般先用“tshark -D”查看网络接口的编号以供-i参数使用。-f 设定抓包过滤表达式(capture filter expression)。抓包过滤表达...2020-02-17 17:59:06923
0
-
原创 Airflow集成在线编写创建dag的插件
https://cloud.tencent.com/developer/article/14244912020-02-11 19:29:061971
0
-
原创 mac开启docker kubernetes
需安装 Docker Desktop 的 Mac 或者 Windows 版本,如果没有请下载 Docker CE最新版本安装后启动,查看 Docker Desktop版本,Docker -> About Docker Desktop。查看docker中的kubernetes版本。Docker Desktop for Mac 开启 Kubernetes为 Docker daemon 配...2020-02-10 10:47:57527
0
-
转载 session 、cookie、token的区别及联系
sessionsession的中文翻译是“会话”,当用户打开某个web应用时,便与web服务器产生一次session。服务器使用session把用户的信息临时保存在了服务器上,用户离开网站后session会被销毁。这种用户信息存储方式相对cookie来说更安全,可是session有一个缺陷:如果web服务器做了负载均衡,那么下一个操作请求到了另一台服务器的时候session会丢失。cookie...2020-01-05 21:53:40201
0
-
原创 vscode 使用技巧(持续更新)
远程调试docker 容器打开vscode 安装remote container,重启 vscode ,启动容器按F1进入搜索,输入Remote-Containers: Attaching to running containers选择想调试的容器.打开文件夹, 打开文件,选择调试,会自动在容器中安装调试器, 安装调试器以后重启vscode打开文件,选择使用的python编译环境...2019-11-07 15:31:22449
0
-
转载 istio-opentracing链路追踪方案
目录istio-opentracing链路追踪方案envoy链路追踪初始化追踪跟踪上下文信息istio链路追踪链路追踪参数采样率jaegeristio中jaeger现状jaeger持久化存储istio-opentracing链路追踪方案istio-opentracing链路追踪主要是由sidecar(envoy)支持的,istio...2019-10-12 10:26:17808
0
-
原创 Python实现Kubernetes Operator
示例:为了使事情变得简单实用,让我们创建一个简单的operator:当出现一个新的namespace,或ConfigMap与Secret之一更改其状态时,复制ConfigMap。从实用的角度来看,我们的新operator可以用于批量更新应用程序的配置(通过更新ConfigMap)或重置Secret,例如用于Docker注册中心的键(当一个Secret添加到namespace时)。先定义CRD...2019-10-12 15:43:04401
0
-
转载 python分布式多进程框架 Ray
并行和分布式计算是现代应用程序的主要内容。我们需要利用多个核心或多台机器来加速应用程序或大规模运行它们。网络爬虫和搜索所使用的基础设施并不是在某人笔记本电脑上运行的单线程程序,而是相互通信和交互的服务的集合。ray的api接口教程:https://ray.readthedocs.io/en/latest/api.html为什么要使用 Ray?很多教程解释了如何使用 Python 的多进程模块...2019-03-13 19:49:279347
2
-
原创 使用GlusterFS作为Kubernetes的后端存储
用GlusterFS作为Kubernetes的存储这里简单的介绍一下使用基于容器化的GlusterFS + heketi作kubernetes的后端存储的部署方式;对于GlusterFS的介绍这里就不多说了;部署过程主要参考:gluster-kubernetes1、环境[root@master-0 ~]# kubectl get nodes -o wideNAME STAT...2019-02-17 14:23:201730
0
-
转载 Kubernetes vs OpenStack
前言最近2年相信大家都听过kubernetes这种新容器编排工具,越来越多的公司也去学习相关技术,并运用它去解决公司的问题,它在开源社区也是非常火,大小不断的k8smeeting以及容器相关的会议。这火爆程度和在2011年到2016年之间非常火的Openstack非常相似,不论是社区还是公司都是积极的去推动。笔者处在互联网之中,也接触学习过这两套系统,对他们相关技术也是非常的热爱,也在慢慢的根据...2019-03-06 16:25:14941
0
-
原创 Grafana教程(prometheus 基本查询语法,alerting报警)
prometheus原理可以参考:https://blog.csdn.net/luanpeng825485697/article/details/82318204k8s上的部署可以参考: https://blog.csdn.net/luanpeng825485697/article/details/83755430一、Data Source — 数据源Grafana支持多种不同的时序数据库数...2018-11-13 17:16:0132666
0
-
转载 使用kubectl访问Kubernetes集群时的身份验证和授权
kubectl是日常访问和管理Kubernetes集群最为常用的工具。当我们使用kubeadm成功引导启动(init)一个Kubernetes集群的控制平面后,kubeadm会在init的输出结果中给予我们下面这样的“指示”:`... ...Your Kubernetes master has initialized successfully!To start using your cl...2018-11-11 09:28:445450
0
-
原创 微服务架构系列文章、精品教程
架构系列文章大全2020-03-30 22:35:509942
6
-
转载 运行支持kubernetes原生调度的Spark程序
Spark 概念说明Apache Spark 是一个围绕速度、易用性和复杂分析构建的大数据处理框架。最初在2009年由加州大学伯克利分校的AMPLab开发,并于2010年成为Apache的开源项目之一。在 Spark 中包括如下组件或概念:Application:Spark Application 的概念和 Hadoop 中的 MapReduce 类似,指的是用户编写的 Spark 应用程序...2018-11-02 19:50:384825
7
-
转载 postman使用教程,接口自动化测试
1摘要Postman 是一个接口测试和 http 请求的神器,非常好用。官方 github 地址: https://github.com/postmanlabsPostman 的优点:支持各种的请求类型: get、post、put、patch、delete 等支持在线存储数据,通过账号就可以进行迁移数据很方便的支持请求 header 和请求参数的设置支持不同的认证机制,包括 B...2018-10-29 16:53:417812
0
-
转载 kubernetes--pod的生命周期管理(PostStart,PreStop)
lifecycle创建资源对象时,可以使用lifecycle来管理容器在运行前和关闭前的一些动作。lifecycle有两种回调函数:PostStart:容器创建成功后,运行前的任务,用于资源部署、环境准备等。PreStop:在容器被终止前的任务,用于优雅关闭应用程序、通知其他系统等等。例1、部署代码以下示例中,定义了一个Pod,包含一个JAVA的web应用容器,其中设置了PostS...2018-12-09 12:39:1412589
0
-
转载 RabbitMQ用户角色及权限控制
RabbitMQ的用户角色分类:none、management、policymaker、monitoring、administratoruser 有5种 tags :management :访问 management plugin;policymaker :访问 management plugin 和管理自己 vhosts 的策略和参数;monitoring :访问 management...2019-02-01 21:53:441414
0
-
原创 开发图形辅助工具
xmind:脑图win版本的可以转为甘特图示例效果安装参考:https://blog.csdn.net/qq_16093323/article/details/80967867架构图绘制 (AWS工具)最经典的当属4+1视图:逻辑视图开发视图过程视图物理视图场景视图在线地址: https://cloudcraft.co/app示例:APP 后台架构:IOT 架...2019-01-16 14:02:201185
0
-
转载 将Python脚本打包成可执行文件
Python是一个脚本语言,被解释器解释执行。它的发布方式:.py文件:对于开源项目或者源码没那么重要的,直接提供源码,需要使用者自行安装Python并且安装依赖的各种库。(Python官方的各种安装包就是这样做的).pyc文件:有些公司或个人因为机密或者各种原因,不愿意源码被运行者看到,可以使用pyc文件发布,pyc文件是Python解释器可以识别的二进制码,故发布后也是跨平台的,需...2018-10-13 18:21:271155
0
-
原创 Python 并行分布式框架 Celery
在学习Celery之前,我先简单的去了解了一下什么是生产者消费者模式。生产者消费者模式在实际的软件开发过程中,经常会碰到如下场景:某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是广义的,可以是类、函数、线程、进程等)。产生数据的模块,就形象地称为生产者;而处理数据的模块,就称为消费者。单单抽象出生产者和消费者,还够不上是生产者消费者模式。该模式还需要有一个缓冲区处于生产者和...2018-09-24 22:47:167878
0
-
原创 python文件夹,文件监听工具(pyinotify,watchdog)
watchdog库2018-09-24 09:37:588058
1
-
转载 prometheus之记录规则(recording rules)与告警规则(alerting rule)
Prometheus支持两种类型的规则:记录规则和警报规则。 要在Prometheus中包含规则,请创建一个包含必要规则语句的文件,并让Prometheus通过Prometheus配置中的rule_files字段加载规则文件。 通过将SIGHUP发送到Prometheus进程,可以在运行时重新加载规则文件。 这些更改仅适用于所有规则文件格式良好的情况。语法检查规则 要在不启动Promet...2018-09-16 22:45:203466
0
-
原创 使用Python编写Prometheus监控metrics接口
使用Python和Flask编写Prometheus监控Installationpip install flaskpip install prometheus_clientMetricsPrometheus提供4种类型Metrics:Counter, Gauge, Summary和HistogramCounterCounter可以增长,并且在程序重启的时候...2018-09-17 09:19:1615822
4
-
转载 helm的简介
Helm Chart 结构Chart 目录结构examples/ Chart.yaml # Yaml文件,用于描述Chart的基本信息,包括名称版本等 LICENSE # [可选] 协议 README.md # [可选] 当前Chart的介绍 values.yaml # Chart的默认配...2018-08-30 11:53:104844
0
-
转载 python操作rabbitmq操作数据
一、RabbitMQ 消息队列介绍RabbitMQ也是消息队列,那RabbitMQ和之前python的Queue有什么区别么?py 消息队列: 线程 queue(同一进程下线程之间进行交互) 进程 Queue(父子进程进行交互 或者 同属于同一进程下的多个子进程进行交互)123如果是两个完全独立的python程序,也是不能用上面两个queue进行交互的,或者和其他语言交...2018-08-27 14:55:134879
0