摘要:Strimzi-Kafka-Operator 从不同的角度看下Operator解决的问题 Kafka管理Operator-https://github.com/strimzi/strimzi-kafka-operator 部署安装Operator https://strimzi.io/downloa
阅读全文
:: :: :: :: :: 管理 |
随笔分类 - k8s
摘要:Strimzi-Kafka-Operator 从不同的角度看下Operator解决的问题 Kafka管理Operator-https://github.com/strimzi/strimzi-kafka-operator 部署安装Operator https://strimzi.io/downloa
阅读全文
摘要:从应用角度考虑,为什么会出现如此多的Operator场景,为什么很多中间件和厂商都会提供基于Operator的部署方案,他的价值是什么? 随着时代的发展,企业应用部署环境从传统的物理机->虚拟机->容器->集群,现在k8s已司空见惯,作为企业应用运行基础环境的kubernates的能力也越来越多的被
阅读全文
摘要:云与IDC 都是多个私网VPC组成云企网,再通过网关/边界路由经过专线到IDC LB云厂商实现原理 阿里云 腾讯云 https://help.aliyun.com/document_detail/27544.html 四层采用开源软件LVS(Linux Virtual Server)+ keepal
阅读全文
摘要:Iptables 五链四表执行关系如图所示,容器环境最常用的就是filter和nat表 加上各种自定义的链插入到各个环节,拦截流量做各种控制 filter表:匹配数据包以进行过滤 nat表:修改数据包进行地址或者端口的转换 mangle表:用于修改数据包IP头信息中TTL等、或者对数据包进行Mark
阅读全文
摘要:DNS Service提供了一组pod外部访问的统一入口,通过Servicename可以访问集群内的服务,DNS解决了从servicename→ip的解析问题 CoreDNS 通过watch&list ApiServer,监听Pod 和SVC的变化,从而实现同步配置到A记录(域名/主机→IP的关系)
阅读全文
摘要:需要调试网络,发现一般的镜像里很多命令不支持,调试十分不方便,所以需要一个命令完善的镜像供快速调试用 简单点, 在这位大佬的基础上完善指令,保存自己的调试工具 在原作上添加迭代 https://github.com/yobasystems/alpine-nginx FROM yobasystems/
阅读全文
摘要:1、从配置看 http_listen: ":8080" # the HTTP Server listen address, default is ":8080" enable_profiling: true # enable profiling via web interfaces # host:p
阅读全文
摘要:从入口来看下 cmd/nginx/main.go 初始化各种逻辑,开启监控数据收集,初始化web服务,初始化Nginx等 func main() { ... kubeClient, err := createApiserverClient(conf.APIServerHost, conf.RootC
阅读全文
摘要:1、普通创建 kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.0.4/deploy/static/provider/cloud/deploy.yaml 2、下载不下来的
阅读全文
摘要:1、代码结构 .├── ingress-nginx # k8s ingress-nginx源码│ ├── build # 构建相关│ ├── charts # helm打包编排│ ├── cmd # 命令行,初始化等│ ├── deploy # yaml构建相关支持│ ├── hack # 构建底层
阅读全文
摘要:1、编译可执行类 make 根据 Makefile 的描述找到build脚本 # Copyright 2017 The Kubernetes Authors. # # Licensed under the Apache License, Version 2.0 (the "License"); #
阅读全文
摘要:https://www.taohui.org.cn/2021/08/10/%E5%BC%80%E6%BA%90%E7%BD%91%E5%85%B3APISIX%E6%9E%B6%E6%9E%84%E5%88%86%E6%9E%90/#more Nginx采用了epoll + nonblock soc
阅读全文
摘要:1、安装 docker run -d --name etcd-server --publish 2379:2379 --publish 2380:2380 --env ALLOW_NONE_AUTHENTICATION=yes --env ETCD_ADVERTISE_CLIENT_URLS=htt
阅读全文
摘要:apisix-admin如何支持http到etcd 动态模板 ngx_tpl.lua content_by_lua_block { apisix.http_admin() } apisix/init.lua function _M.http_admin() if not router then ro
阅读全文
摘要:Nginx 动态化实现难点 1、 nginx路由匹配是基于静态的Trie前缀树、哈希表、正则数组实现的,一旦server_name、location变动,不执行reload就无法实现配置的动态变更; 2、master+n worker中如何同步获取配置 以下只讨论apisix系列、k8s-ingre
阅读全文
摘要:命令行方式是怎么支持的? 看源码,命令总入口在main.go中,main方法中使用了cmd.NewAPISIXIngressControllerCommand() package main import ( "fmt" "os" "github.com/apache/apisix-ingress-c
阅读全文
摘要:结合apisix-ingress-controller看下如何自定义CRD的流程,从阿里云上看,引入apisix后可见的新增CRD视图如下,不同的api版本分别对应不同的资源 那先用yaml创建一个再说 apiVersion: apisix.apache.org/v2alpha1 kind: Api
阅读全文
摘要:client-go,这个很牛,k8s大部分交互都靠它 discovery/dynamic动态客户端;informers是非常重要的通讯机制;kubernetes是clientset客户端;rest是rest客户端;util包含队列等 RESTClient是最基础的客户端。RESTClient对HTT
阅读全文
摘要:既然下了nginx-ingress的代码,那么换个角度,从go的包结构来重新审视一下,有go经验的一看就知道,cmd和internal是主要关注的; 这里补充一个认知,就是go的执行顺序,来自网络 既然import这么重要,那么也看看一般cmd里main都引入了那些,明显分为三部分,第一部分是go语
阅读全文
摘要:先从外部看,k8s部署了nginx-controller之后,可以针对服务做请求路由,进一步看,就是一个nginx,那么nginx配置是啥?pod-服务-配置的关系是怎么联动的? 所以先看下nginx.conf配置,他做了什么 http { lua_package_cpath "/usr/local
阅读全文
|