K8s部署kong之yaml
官方文档官方安装:https://getkong.org/install/kubernetes/ 简介:Kong 是在客户端和(微)服务间转发API通信的API网关,通过插件扩展功能。 Kong 有两个主要组件: Kong Server :基于 nginx 的服务器,用来接收 API 请求。 Apache Cassandra & :用来存储操作数据。 注:Ambassador没有数据库 - 它依赖于ConfigMap来存储状态 Kong 基本功能: HTTP 基本认证、密钥认证、CORS( Cross-origin Resource Sharing,跨域资源共享)、TCP、UDP、文件日志、API 请求限流、请求转发以及 nginx 监控 Serf是一个去中心化的集群成员管理、故障检测解决方案,Kong用它做清缓存,看来Kong里面核心的数据consumer、api、plugin都是做了缓存的,还可以做集群节点的监控 Kong 不足: 数据库不支持常用的mysql,只支持Postgres/Cassandra 扩展Kong需要会写lua脚本 不修改源码的情况...
K8s部署kong之docker
Kong 官方镜像https://hub.docker.com/_/kong 使用 docker 的安装目前Kong 只支持 postgresql 或 cassandra 两种存储数据,这里我们选用 PG 创建 pg 数据库 容器 1 2 3 4 5 6 | docker run -d --name kong-database \ -p 5432:5432 \ -e "POSTGRES_USER=kong" \ -e "POSTGRES_DB=kong" \ -e "POSTGRES_PASSWORD=your_pg_password" \ postgres:9.6 —|— kong 数据迁移到 pg 1 2 3 4 5 6 7 | docker run --rm \ --link kong-database:kong-database \ #...
kafka入门教程
1、认识kafka1.1 kafka简介Kafka 是一个分布式流媒体平台 kafka官网:http://kafka.apache.org/ (1)流媒体平台有三个关键功能: 发布和订阅记录流,类似于消息队列或企业消息传递系统。 以容错的持久方式存储记录流。 记录发生时处理流。 (2)Kafka通常用于两大类应用: 构建可在系统或应用程序之间可靠获取数据的实时流数据管道 构建转换或响应数据流的实时流应用程序 要了解Kafka如何做这些事情,让我们深入探讨Kafka的能力。 (3)首先是几个概念: Kafka作为一个集群运行在一个或多个可跨多个数据中心的服务器上。 Kafka集群以称为 topics主题 的类别存储记录流。 每条记录都包含一个键,一个值和一个时间戳。 (4)Kafka有四个核心API: Producer API(生产者API)允许应用程序发布记录流至一个或多个kafka的topics(主题)。 Consumer API(消费者API)允许应用程序订阅一个或多个topics(主题),并处理所产生的对他们记录的数据流。 Streams API(流API)允...
Kubernetes之pod调度
Pod的调度在默认情况下是Scheduler Controller 采用默认算法的全自动调度,在实际使用中并不满足我们的需求,因为并不能事先掌握pod被调度到哪个Node之上,所以kubernetes又提供了好几种方式让我们自已选择调度到什么Node中,比如有NodeSelector(定向调度)、NodeAffinity(Node亲和性)、PodAffinity(Pod亲和性)。 NodeSelector调度算法比较简单,NodeSelector 只调度到某个拥有特定标签的Node上,如果没有满足条件的Node,那么此Pod将不会被运行,即使在集群中还有可用Node列表,这就限制了它的使用场景,现在基本上被NodeAffinity取代了,NodeAffinity在NodeSelector的基础之上的进行了扩展,使调度更加灵活,除了有一个必须要满足条件的Node之外,还要可设置优先条件,下面来看下NodeAffinity的使用方式: 一、NodeAffinityNodeAffinity 亲和性有两种表达方式: RequiredDuringSchedulingIgnoredDuri...
K8s默认的services ip不通
写在前边的话今天团队的小测试集群突然挂掉,完全不能访问,紧急任务排查问题 问题现象平台挂掉,集群内有一台master节点的容器全部down掉,其中大部分pod显示Evicted状态 排查登录三台master节点分别get node发现其中有一台一直未返回,docker ps发现此节点的所有容器down掉,其它两台节点正常。通过其它两台正常节点排查发现kube-dns\flanne\kube-proxy等pod全部是失败状态 在有问题节点查看相关route \ ip等信息,发现也全是缺少相关路由,cni0等网卡; 通过查看flannel容器日志发现: Failed to create SubnetManager: error retrieving pod spec for ‘kube-system/kube-flannel-8hpcf’: Get https://10.96.0.1:443/api/v1/namespaces/kube-system/pods/kube-flannel-8hpcf: dial tcp 10.96.0.1:443: i/o ...
灵雀云K8s集群对接Prometheus
安装helm安装helmdocker run -ti --rm -v /usr/local/bin/:/var/log/abc index.alauda.cn/claas/helm:v2.10.0-rc.2 sh -c "cp /systembin/helm /var/log/abc" 安装chart_repo源(我自己的平台已经安装,所以不需要操作)docker run -d \ -p 8088:8080 \ -e PORT=8080 \ -e DEBUG=1 \ -e STORAGE="local" \ -e STORAGE_LOCAL_ROOTDIR="/data" \ -e BASIC_AUTH_USER="chartmuseum" \ -e BASIC_AUTH_PASS="chartmuseum" \ -v /data:/data \ chartmuseum/chartmuseum:latest 检查确定安装成功helm repo list NAME UR...
Linux 性能监控工具
注:原文连接:http://tenpercent.top/2018/07/10/Linux-performance-monitor/ Linux 性能指标 CPU CPU利用率、用户时间(表示CPU在用户进程上的时间百分比)、系统时间(表示CPU花在内核操作上的时间百分比)、空闲时间、平均负载、阻塞、上下文切换、中断等 内存 空闲内存、Swap利用率、缓冲和缓存、活动和非活动内存等 磁盘IO IO等待、平均队列长度、每秒传输(TPS)等 网络 接收和发送的包、每秒碰撞(各个网络接口所连接网络的所发生的冲突数量)、丢包、错误等 监测工具以下是对 Linux 的性能进行监控的常用工具: 工具 简介 top 查看进程活动状态以及一些系统状况 vmstat 查看系统状态、硬件和系统信息等 iostat 查看 CPU 负载、硬盘状况 sar 综合工具,查看系统状况 mpstat 查看多处理器状况 netstat 查看网络状况 iptraf 实时网络状态监测 tcpdump 抓取网络数据包,详细分析 tcptrace 网络包分析工...
深入 Nginx 之配置篇
注:原文链接:http://tenpercent.top/2019/02/15/learn-nginx-configuration/ 常用配置项在工作中,我们与 Nginx 打交道更多的是通过其配置文件来进行。那么掌握这些配置项各自的作用就很有必要了。 首先,nginx.conf 的内容通常是这样的: ... ... #核心摸块 events { #事件模块 ... } http { # http 模块 server { # server块 location [PATTERN] { # location块 ... } location [PATTERN] { ... } } server { ... } } mail { # mail 模块 server { # server块 ... ...
深入 Nginx 之架构篇
注:原文链接:http://tenpercent.top/2019/01/18/depth-nginx/ 前言最近在读 Nginx 相关的书籍,做一下读书笔记。 Nginx 作为业界知名的高性能服务器,被广泛的应用。它的高性能正是由于其优秀的架构设计,其架构主要包括这几点:模块化设计、事件驱动架构、请求的多阶段异步处理、管理进程与多工作进程设计、内存池的设计,以下内容依次进行说明。 模块化设计高度模块化的设计是 Nginx 的架构基础。在 Nginx 中,除了少量的核心代码,其他一切皆为模块。 所有模块间是分层次、分类别的,Nginx 官方共有五大类型的模块:核心模块、配置模块、事件模块、HTTP 模块、mail 模块。它们之间的关系如下: 在这 5 种模块中,配置模块和核心模块是与 Nginx 框架密切相关的。而事件模块则是 HTTP 模块和 mail 模块的基础。HTTP 模块和 mail 模块的“地位”类似,它们都是更关注于应用层面。 事件驱动架构事件驱动架构,简单的说就是由一些事件发生源来产生事件,由事件收集器来收集、分发事件,然后由事件处理器来处理这些事件(事件处...
某云ace 2.3平台部署
需要环境 一台数据库机器 一台ake机器,也就是部署机 三台master 三台global 三台es 注: 所有主机都需要单独挂载一块数据盘 环境准备 将所有主机启动 创建一个外网clb 在clb上进行绑定,32001-32006(挂载三台master)、3306(挂载mysql主机)端口 注:此文档安装docker为1.12.6,使用devicemapper存储 部署mysql 安装docker及docker-compose yum -y install docker docker-compose 编辑mysql yaml文件 vim mysql-master.yaml version: '2' services: mysql: network_mode: "bridge" ports: - "3306:3306" container_name: mysql-master image: mysql environme...