Myluzh Blog

Strive to become a dream architect.

解决Nginx反向代理ESXi后,ESXi控制台显示“无法连接”(开启Nginx对于WebSocket的支持)

2023-6-25 myluzh Nginx

0x01 故障描述 Nginx反向代理ESXi后,通过Web访问虚拟机控制台,显示无法连接。F12查看提示WebSocket connection to 'wss://xxxxxxx' failed。 0x02 解决方案 在反向配置中Nginx Location下添加如下代码: proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; 这个的功能是开启nginx对于websocket的支持,esxi后台虚拟机控制台的图形化窗口就是通过websocket通信的,如果nginx不支持websocket,会导致无 法使用esxi的控制台功能。 0x03 完整反向代理代码 [root@nginx conf.d]# cat esxi_172.16.10.11.conf server { listen 8011 ssl; server_name esxi.itho.cn 127.0.0.1 localhost; ssl_certificate /e...

阅读全文>>

标签: esxi nginx 反向代理

评论(0) (329)

Kubernetes(k8s)-StatefulSet

2023-6-20 myluzh Kubernetes

0x01 什么是 StatefulSet StatefulSet 是用来管理有状态的应用,例如数据库。 前面我们部署的应用,都是不需要存储数据,不需要记住状态的,可以随意扩充副本,每个副本都是一样的,可替代的。 而像数据库、Redis 这类有状态的,则不能随意扩充副本。 StatefulSet 会固定每个 Pod 的名字 0x02 部署 StatefulSet 类型的 Mongodb 1.创建mongo.yaml apiVersion: apps/v1 kind: StatefulSet metadata: name: mongodb spec: serviceName: mongodb replicas: 3 selector: matchLabels: app: mongodb template: metadata: labels: app: mongodb spec: containers: - name: mongo image: mongo:...

阅读全文>>

标签: k8s kubernetes StatefulSet

评论(0) (155)

Kubernetes(k8s)-安装dashboard

2023-6-20 myluzh Kubernetes

0x01 下载yaml文件 下载合适自己版本的ymal文件,我这边k8s版本是1.23,所以合适的bashboard版本是v2.5.1 [root@master]# mkdir k8s-dashboard && cd k8s-dashboard [root@master k8s-dashboard]# wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.1/aio/deploy/recommended.yaml 在Service中增加type: NodePort与nodePort: 32000 [root@master k8s-dashboard]# vi recommended.yaml kind: Service apiVersion: v1 metadata: labels: k8s-app: kubernetes-dashboard name: kubernetes-dashboard namespace: kubernetes-dashboard spec: type: NodePort ports: - port...

阅读全文>>

标签: k8s dashboard kubernetes

评论(0) (173)

RouterOS与云上VPC通过IPsec实现内网互通

2023-6-17 myluzh RouterOS

0x01 架构图 本地侧使用的设备是Mikrotik RB750gr3 RouterOSv6.49.8,云侧使用的是腾讯云。需要打通的是本地侧的172.16.0.0/16与云端10.206.0.0/16。 看了一整晚的教程,踩了很多坑,所以决定自己梳理下。 0x02 云侧网关&通道配置 1.新建VPN网关 名字随便起,所属网络选择你要打通内网的VPC。等待创建完成后你就会拿到一个公网IP,这个IP就是云侧VPN网关IP。 2.建立VPN通道 通信模式可选目的路由和SPD策略类型,我这边选择是SPD策略(本地网段填写10.206.0.0/16 对端网段填写172.16.0.0/16) 配置IKE和IPSec时请确保云侧配置和本地配置一致、相匹配,以防因两端协议配置不一致而通道不通。如下图: 3.将去往本地内网路由指向VPN网关 这样云侧就全部配置完成了~ 0x03 ROS配置 1.新建Profiles 进入IP-IPsec-Profiles,新建一个,Name随便写,这里的IKE认证算法,加密算法,DH Group要跟云侧配置的一样。DH Group1 就是modp768。 2.配置Peers Na...

阅读全文>>

标签: routeros ros vpc ipsec

评论(0) (396)

Kubernetes(k8s)-Service

2023-6-16 myluzh Kubernetes

0x01 特性 Service 通过 label 关联对应的 Pod Servcie 生命周期不跟 Pod 绑定,不会因为 Pod 重创改变 IP 提供了负载均衡功能,自动转发流量到不同 Pod 可对集群外部提供访问端口 集群内部可通过服务名字访问 0x02 创建Service(默认为ClusterIP类型) 创建一个 Service,通过标签hellohttp跟对应的Pod关联上 service.yaml apiVersion: v1 kind: Service metadata: name: hellohttp spec: selector: app: hellohttp #这里一定要跟pod的标签对应上要不然关联不起来 type: ClusterIP ports: - port: 8080 # 本 Service 的端口 targetPort: 8080 # 容器端口 服务的默认类型是ClusterIP,只能在集群内部访问,我们可以进入到 Pod 里面访问: kubectl exec -it pod-name -- ba...

阅读全文>>

标签: k8s service k8s-service kubernetes

评论(0) (163)

Kubernetes(k8s)-回退版本

2023-6-16 myluzh Kubernetes

0x01 发布新版本 1.更新版本 方式一:原先镜像为hellohttp:v1,使用kubectl apply -f app.yaml发布,创建一个新的镜像为hellohttp:v2-error,修改app.yaml中镜像地址为image: registry.cn-hangzhou.aliyuncs.com/myluzh/hellohttp:v2-error,然后重新使用kubectl apply -f app.yaml发布。 方式二:也可以直接通过命令修改镜像,--record 表示把这个命令记录到操作历史中 [root@master ~]# kubectl set image deployment hellohttp hellohttp=registry.cn-hangzhou.aliyuncs.com/myluzh/hellohttp:v2-error --record Flag --record has been deprecated, --record will be removed in the future deployment.apps/hellohttp image updated #查看...

阅读全文>>

标签: k8s k8s-depolyment kubernetes

评论(0) (118)