2024-7-8 myluzh
Kubernetes
0x01 前置条件
默认已经安装好了istio,并且已经有了确保已经安装 Istio 并配置了 istio-ingressgateway。由于我已经之前安装了ingress-nginx 已占用 80 和 443 端口。所以我 istio-ingressgateway 从默认的 LoadBalancer 类型改为 NodePort 类型。istio-ingressgateway 使用端口 http 30058 和 https 30605
root@iZbp12bkuvg20e1j3y9gtxZ:~/# kubectl get svc -n istio-system | grep ingress
istio-ingressgateway NodePort 10.43.160.137 <none> 15021:31016/TCP,80:30058/TCP,443:30605/TCP,31400:32117/TCP,15443:32636/TCP 87d
0x02 实例演示
1、创建命名空间并自动注入边车代理
kubectl create ns myluzh
kubec...
阅读全文>>
标签: k8s Ingress istio istio-ingressgateway gateway virtualservice
评论(0)
(258)
2024-6-7 myluzh
Docker
0x01 Docker Save & Load
docker save: 用于将Docker镜像保存为.tar文件。这个过程会保存镜像的所有层、元数据和历史记录,因此生成的文件较大。当你需要备份或者迁移某个镜像时非常有用,尤其是当你需要保留镜像的全部构建历史以便将来在其他地方恢复时。
docker save -o my_image.tar my_image:tag
docker load: 用来载入由docker save创建的镜像文件,将其恢复到本地镜像库中。这个过程不会允许你为导入的镜像指定新的名称,如果本地已有同名镜像,它会被覆盖。
docker load -i my_image.tar
0x02 Docker Export & Import
docker export: 用于将运行中的Docker容器导出为一个 tar 归档文件。与save不同,export只导出容器当前的状态(即最终的文件系统层),不包含容器的元数据或历史记录,因此导出的文件通常比用save导出的镜像文件要小。
docker export my_container > my_container.tar
docker impo...
阅读全文>>
标签: docker import save export load
评论(0)
(592)
2024-5-29 myluzh
OpenStack
0x01 介绍
本次实验是在centos7虚拟机里面安装openstack_allinone。
注意1:centos7虚拟机是在vmware esxi上创建的,需要开启二层虚拟化。(虚拟机设置 CPU开启硬件虚拟化 向客户机操作系统公开硬件辅助的虚拟化)
注意2:vmware esxi的虚拟交换机需要开启(混杂模式 mac地址更改 伪传输)这三个功能,要不然openstack路由器到物理网络不通的。
注意3:centos7 虚拟机配置为 16c 32g 300g。如果太低可能跑不起来。
大概拓扑如下:
0x02 准备工作
# yum源加速
[root@openstack-allinone ~]# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
[root@openstack-allinone ~]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@openstack-allino...
阅读全文>>
标签: openstack allinone
评论(0)
(529)
2024-5-24 myluzh
Docker
0x01 描述
在使用 Docker 时发现其默认的网段与你的内网网段冲突,可以考虑修改 Docker 的默认网段以避免冲突。
0x02 解决
打开 daemon.json 文件,并添加或修改 "bip"(bridge IP)字段来设置 Docker 的网桥 IP 地址和子网掩码。你可以选择一个与你的内网网段不冲突的网段。例如:
# vim /etc/docker/daemon.json
{
"bip": "192.168.0.1/24"
}
# systemctl reload docker
# systemctl restart docker
阅读全文>>
评论(0)
(248)
2024-4-7 myluzh
Kubernetes
0x01 故障
集群中一个deployment中有很多Evicted的pod
root@iZbp12bkuvg20e1j3y9gtxZ:~# kubectl get pod -n base-ops
NAME READY STATUS RESTARTS AGE
registry-6d7b7c9fb4-22f2x 0/1 Evicted 0 10d
registry-6d7b7c9fb4-24r7j 0/1 Evicted 0 10d
registry-6d7b7c9fb4-25clg 0/1 Evicted 0 10d
...
0x02 原因
原因:由于node节点的磁盘或内存资源不够后将现有的pod进行了驱赶。可以把磁盘资源释放后,批量删除Evicted Pod
kubectl -n base-ops get pods | grep Evicted | awk '{print$1}' |xargs kubectl -n base-...
阅读全文>>
标签: k8s pod evicted 驱逐
评论(0)
(390)
2024-2-28 myluzh
CLOUD
0x01 获取方法介绍
当使用ALB监听转发流量时,您可通过HTTP头部的X-Forwarded-For字段获取客户端真实IP地址。
七层负载均衡(HTTP或HTTPS协议)支持在HTTP头部的X-Forwarded-For字段保留客户端真实IP信息,服务器进行相应配置后即可获取到客户端真实IP地址。
X-Forwarded-For字段格式如下:
X-Forwarded-For: <客户端真实IP, 代理服务器1-IP, 代理服务器2-IP,...>
当使用此方式获取客户端真实IP时,获取的第一个地址就是客户端真实IP。
0x02 操作步骤
步骤一:检查监听已开启通过X-Forwarded-For获取功能
1、登录应用型负载均衡ALB控制台。
2、在顶部菜单栏,选择实例所属的地域。
3、在实例页面,找到目标实例,单击实例ID。
4、在实例详情页面,单击监听页签,找到目标监听,单击监听ID。
5、在监听详情页面,查看到附加HTTP头字段包括开启通过X-Forwarded-For头字段获取来访者客户端IP。
说明:ALB默认开启通过X-Forwarded-For头字段获取客户端真实IP功...
阅读全文>>
标签: 日志 nginx 负载均衡 格式化 阿里云 ALB
评论(0)
(523)