Kamafeel

求其上,得其中;求其中,得其下,求其下,必败


  • 首页

  • 归档

kafka并发方案

发表于 2022-02-11 | 更新于 2022-03-06 | 分类于 中间件 , Kafka

topic分区

topic分区主要是让消息分摊到broker,提高消息吞吐量

KafkaConsumer

启动多个Consumer,将会去连不通的分区的数据。

批量收消息

批量拉取消息,然后交给线程池/多线程处理。

中间用一个LinkedBlockingQueue(queue都行),作为管道。

采用线程池,需要考虑批量拉取消息和线程处理速度的关系。避免线程池溢出

dockerFile的创建策略

发表于 2022-01-13 | 分类于 Docker

容量小是核心要素

层的概念

alpine,slim的选择

http://dockerone.com/article/10354

基本语法

https://yeasy.gitbook.io/docker_practice/image/dockerfile

docker私有仓库搭建

发表于 2022-01-13 | 分类于 Docker

nexus

nexus负责下载缺失的镜像

harbor

harbor负责管理包

centos磁盘分配挂载

发表于 2022-01-12 | 更新于 2022-03-07 | 分类于 linux

观察现有现状

df -h 查看硬盘信息
fdisk -l 查看所有磁盘信息
lsblk 检查哪块磁盘为加载和分区

把磁盘分区

fdisk -l #查看情况
fdisk /dev/sda

分区信息同步分区表

partprobe

格式化

mkfs –type=ext3 /dev/sda3

挂盘

mount /dev/sda3 /docker

重启挂盘

vi /etc/fstab

参考

https://blog.csdn.net/apacat/article/details/95926148
https://blog.csdn.net/sugarbliss/article/details/107033034
https://blog.csdn.net/woailyoo0000/article/details/86485666

CPU架构

发表于 2022-01-10 | 分类于 linux

操作系统后面的编号

32位:
x86
64位:
x86_64/amd64 cisc指令集
arm64/aarch64 risc指令集

服务器

X86架构生态完备,arm具备节能优势

Java相关

x86: openjdk,oracle
arm: openjdk,毕昇JDK

K8S DNS

发表于 2022-01-10 | 分类于 K8S

基本机制

pod–>k8s DNS–>宿主机
alt

CoreDNS和KubeDNS

CoreDNS默认

参考

https://zhuanlan.zhihu.com/p/39782114
https://zhuanlan.zhihu.com/p/80141656

人生终极目标

发表于 2021-12-24 | 分类于 瞎扯蛋

人生目标

最大限度享受快乐,避免痛苦

幸福分类-享乐主义

(感官,情绪,生理快乐):甜食,热水澡,恋爱,购买等。

享乐跑步机,停下来消失。容易幸福后快速感到失落和孤独。

幸福分类-精神升华主义

自我实现

1.自主性,有选择生活方式的能力。
2.完善自我,实现自身价值和成长
3.实现自己的生活目标,人生的意义。
4.不要和别人攀比,接受自己,接纳自己,努力成为更好的自己。
5.和社会互动,能够为他人或者社会做更多的贡献

比如:慈善基金

对身体的影响

避免环境造成选择享乐主义幸福(避免现在资本社会充斥的消费循环理念)

只有精神升华主义的幸福,对健康有正向作用

K8S核心要素

发表于 2021-12-08 | 分类于 K8S

K8S理念

容器云原生平台,屏蔽底层细节

核心要素

node节点(各种conditions控制) 和pod容器组
alt

service服务和labelSelector(标签选择器)
alt

集群架构

alt

service层网络逻辑

1.会为Service创建一个本地集群的DNS入口,因此前端Pod只需要DNS查找主机名为 ‘backend-service’,就能够解析出前端应用程序可用的IP地址。

2.现在前端已经得到了后台服务的IP地址,但是它应该访问2个后台Pod的哪一个呢?Service在这2个后台Pod之间提供透明的负载均衡,会将请求分发给其中的任意一个(如下面的动画所示)。通过每个Node上运行的代理(kube-proxy)完成

alt

控制器

针对POD的控制,由期望状态,通过控制器调整到目标状态
Deployment
StatefulSet
DaemonSet
CronJob
Jobs - Run to Completion

Ingress

非必须,可以起到路由转发作用,HTTP请求到service层中间增加路由功能

HTTP/HTTPS–>Ingress–>Service->kubeproxy–>Pod

网络模型

network namespace 进程的网络堆栈–>默认分配到 root networK Namespace

veth pair 跨多个network namespace进行通信(虚拟网卡)

网桥 ARP 判断是否本地转发

iptables进行NAT为互联网IP或者serviceIP

数据包的传递:Node-to-Internet
下图中:

1.数据包从 Pod 的 network namespace 发出
2.通过 veth0 到达虚拟机的 root network namespace
3.由于网桥上找不到数据包目标地址对应的网段,数据包将被网桥转发到 root network namespace 的网卡 eth0。在数据包到达 eth0 之前,iptables 将过滤该数据包。
4.在此处,数据包的源地址是一个 Pod,如果仍然使用此源地址,互联网网关将拒绝此数据包,因为其 NAT 只能识别与节点(虚拟机)相连的 IP 地址。因此,需要 iptables 执行源地址转换(source NAT),这样子,对互联网网关来说,该数据包就是从节点(虚拟机)发出的,而不是从 Pod 发出的
5.数据包从节点(虚拟机)发送到互联网网关
6.互联网网关再次执行源地址转换(source NAT),将数据包的源地址从节点(虚拟机)的内网地址修改为网关的外网地址,最终数据包被发送到互联网

alt

避免

避免建立迅速成功的Pod,造成K8S无法检测到成功,导致频繁拉起pod

开源K8S管理平台

发表于 2021-12-02 | 更新于 2021-12-08 | 分类于 K8S

平台

Kuboard 偏开发
KubeSphere 偏开发
KubeOperator
Rancher 偏运维

参考

https://blog.csdn.net/zhangpfly/article/details/105204053

https://kuboard.cn/install/v3/install.html#kuboard-v3-x-%E7%89%88%E6%9C%AC%E8%AF%B4%E6%98%8E

https://www.jianshu.com/p/821ef8e9e69e

分布式存储方案

发表于 2021-12-02 | 分类于 架构 , 基础层

核心要素

是否符合POSIX
是否允许fuse挂盘

参考

https://segmentfault.com/a/1190000039196722

1…345…21

Kamafeel

204 日志
57 分类
129 标签
© 2022 Kamafeel
由 Hexo 强力驱动 v3.9.0
|
主题 – NexT.Pisces v7.1.2