Skip to content

Instantly share code, notes, and snippets.

View Faker523's full-sized avatar
🤒
Out sick

Syy086 Faker523

🤒
Out sick
  • 09:31 (UTC -12:00)
View GitHub Profile
@Faker523
Faker523 / gist:ed1849248c9e0b8d78d97f930115a89f
Created September 23, 2024 06:05
数据中心带宽vs吞吐量
带宽:定义了在一段时间内可能传输的数据量
吞吐量:定义了在一段时间内实际传输的数据量
时延:指数据通过网络传输到目的地的速度
example:
例如,一个网络的带宽为每秒 1 Gb(Gbps)。吞吐量指的是在整个网络中传输和处理的实际数据量,
如果说带宽描述的是理论数据量,那么吞吐量描述的就是实际数据量。吞吐量的测量单位与带宽的比特率单位相同。
一个网络的带宽可能是 1 Gbps,这意味着它能够处理 1 Gbps 的数据。但根据具体情况,
其吞吐量可能只有 500 Mbps,网络处理能力只有其一半。
@Faker523
Faker523 / gist:2f3cb4671c30911f42619de1e49b6799
Created September 19, 2024 00:40
linux创建指定大小的文件
命令:
fallocate -l 10G /cache/test
解析:
在/cache目录下创建一个大小为10G的文件,文件名是test
ifconfig | grep cali | cut -d ' ' -f 1 | xargs -n1 -I{} sudo ifconfig {} mtu <size> up
@Faker523
Faker523 / gist:055f36d467469d11fe33560d878da68c
Last active September 9, 2024 01:27
kubernetes conntrack
概念
conntrack代表“连接跟踪“。conntrack是Linux内核中Netfilter框架的一个组件。
conntrack用作通过Linux服务器传输的网络连接的数据库。它跟踪每个网络连接的状态(TCP,UDP,UDP等)。
网络连接的状态对于Kubernetes中的包过滤和NAT规则至关重要。
conntrack条目最大值:net.nf_conntrack_max
conntrack条目当前值:net.netfilter.nf_conntrack_count
命令
查询dport=53的conntrack连接
@Faker523
Faker523 / gist:bf55f2d61b17cde30a6cd5bc3dda8978
Created September 6, 2024 08:28
kubernetes pod 和cali设备对应关系查找方式
方式一
1、获取带查询pod的IP地址 10.244.233.249
2、在该pod所在的物理机上执行:ip r get 10.244.233.249,即可看见对应的calico设备名称
3、每个cali设备名称对应一个netns,通过ip link list查看对应关系
4、ip netns exec cni-xxx bash 即可进入pod network netns
方式二
1、借助calicoctl 工具,执行calicoctl get weps -n namespace 即可看见pod对应的cali设备
2、剩余步骤同方式一
@Faker523
Faker523 / gist:2fca26ba9fb6091e02a65cba7f768eaf
Created September 6, 2024 03:05
bridge vlan show 结果解析
[root@cube-02 cluster-bo]# bridge vlan show
port vlan ids
cluster-bo 1 PVID Egress Untagged
122
211
cluster-br 1 PVID Egress Untagged
docker0 1 PVID Egress Untagged
@Faker523
Faker523 / gist:6699cb8fbbb3865fc53134eff8f6025b
Last active September 6, 2024 00:32
TCP三次握手详细过程
在TCP三次握手的过程中,会维护两个队列:
1、半连接队列--SYN QUEUE
2、全连接队列--ACCEPT QUEUE
具体过程:
1、Client 端向 Server 端发送 SYN 发起握手,Client 端进入 SYN_SENT 状态
2、Server 端收到 Client 端的 SYN 请求后,Server 端进入 SYN_RECV 状态,
此时内核会将连接存储到半连接队列(SYN Queue),并向 Client 端回复 SYN+ACK
@Faker523
Faker523 / gist:dda1cb761841ca9d5ef089a79bec3918
Created September 5, 2024 06:44
kubevirt 创建虚拟机流程
kube-apiserver -> virt-handler -> cmdserver -> virtqemud -> KVM subsystem -> VM
VMI states VM agent |-- virt-launcher pod --| kernel
virtctl image-upload pvc fuel-pvc --image-path=fuel-community-11.0.iso
--access-mode=ReadWriteOnce --size=10G
--uploadproxy-url=https://10.96.55.91:443 --force-bind --insecure --wait-secs=60
其中--uploadproxy 路径为kubectl get svc -n cdi | grep cdi-uploadproxy svc的具体IP地址
@Faker523
Faker523 / gist:bb61d11981cc0fbac09cd4bfd4bd183e
Last active September 4, 2024 01:26
kubernetes port-forward命令
1、查询要开启port-forward的endpoint
kubectl get endpoints
2、根据endpoint实际端口,开启port-forward
kubectl port-forward nginx 8888:80
3、本地curl -ivk http://127.0.0.1:8888
ps
上面的命令仅支持使用本机的127.0.0.1地址访问,如果想通过本机的任何地址都可以转发,正确命令为:
kubectl port-forward --address 0.0.0.0 nginx 8888:80