2023-6-27 myluzh
Docker
0x00 前言
系统性地看完了《深入浅出Docker》这本干货,通俗易懂写得挺不错的。我现在对Docker的整个工作原理都有了一定的了解,并总结出了一些常用的命令,做下笔记备用。
0x01 容器
运行容器
docker run -d --restart=always --name nextcloud -p 80:80 -v /home/docker/nextcloud/:/var/www/html/ --link mysql nextcloud:latest
参数解释:-d 后台运行容器返回容器id
--restart=always 自动启动相关容器
--name 运行容器的名称
 ...
阅读全文>>
标签: 网络 docker 容器 镜像 仓库
评论(0)
(301)
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)
(968)
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)
(327)
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)
(341)
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)
(856)
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)
(327)