Skip to content

Commit 208ea60

Browse files
committed
add some blog from typora notes
1 parent 3c956a0 commit 208ea60

File tree

5 files changed

+591
-0
lines changed

5 files changed

+591
-0
lines changed

source/_posts/24-Week4-April.md

Lines changed: 108 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
---
2+
title: 24-Week4-April
3+
date: 2024-04-28 15:20:18
4+
description: 24-Week4-April
5+
categories:
6+
- weekly
7+
tags:
8+
- weekly
9+
---
10+
>24-4.22~4.28
11+
12+
[TOC]
13+
14+
15+
16+
周末是一如既往的睡到下午,然后在床上躺着不想起床的情况
17+
18+
活动为
19+
刷B站+看小说+淘宝闲鱼+小红书
20+
21+
#硬件DIY
22+
23+
[99元低成本搭建docker服务器](https://www.bilibili.com/video/BV1ND421T7nB)
24+
25+
#影视作品
26+
27+
怀旧向_关于年轻时动画片的评论,喜羊羊,猪猪侠这些_猪猪侠和蓝弧后面坐了洛洛历险记/超兽武装?_动漫公司多来自广东
28+
29+
#旅游
30+
31+
[![img](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/d21bdb0b22f2c5bc2ff31878728c93a367239c4a.jpg@160w_100h_1c.webp)](https://www.bilibili.com/video/BV1UZ42187Ho?spm_id_from=333.880.my_history.page.click)
32+
33+
[一个月300,如何在浙江安吉摆烂?【小城市旅居报告2】](https://www.bilibili.com/video/BV1UZ42187Ho)
34+
35+
> 数字游民形式_但是房租很贵能到两千+,吃的也贵,分几个园区,感觉不会去_老园区会有小团体问题,新园区还好,依赖老人友好的带新人氛围,但是新人如果老人带了后后续宅起来,不回馈社区,也不利于社区发展
36+
37+
[![img](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/4b08c363b278e4340c4574d03cf5b38033c9dc67.jpg@160w_100h_1c.webp)](https://www.bilibili.com/video/BV1Cw411X7A5?spm_id_from=333.880.my_history.page.click)
38+
39+
[一天60元,在青旅摆烂是一种什么体验?(青年旅社的优缺点详细介绍)](https://www.bilibili.com/video/BV1Cw411X7A5)
40+
41+
> 青旅的介绍,如背包十年
42+
43+
#美食
44+
45+
[![img](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/e28d46307198530eba2d03a8fc5e7b80b1670cfa.jpg@160w_100h_1c.webp)](https://www.bilibili.com/video/BV1FK421e75E?spm_id_from=333.880.my_history.page.click)
46+
47+
[日式咖喱漫谈——有科技 也会狠活儿](https://www.bilibili.com/video/BV1FK421e75E)
48+
49+
> 咖喱在日本演化出很多种类
50+
>
51+
> 加热就可以用来做饭感觉类似现在的料理包
52+
>
53+
> 感觉一些看起来挺好吃的,不同的肉和蔬菜
54+
55+
[![img](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/22557ae88cb78876c9e71797c32dca8f4f3ce384.jpg@160w_100h_1c.webp)](https://www.bilibili.com/video/BV19S421c7bb?spm_id_from=333.880.my_history.page.click)
56+
57+
[王国士兵的餐桌——奥斯曼帝国篇](https://www.bilibili.com/video/BV19S421c7bb)
58+
59+
#粤语
60+
61+
查找B站和油管 男亲女爱全集失败
62+
63+
#台剧
64+
65+
#台湾犯罪故事
66+
67+
> 找到后,在B站看完了四集解说
68+
>
69+
> 出轨=>破坏火车铁轨保险骗保事件
70+
>
71+
> 生死困局=>蒙冤入狱灭门案黑帮保镖与受害人记者儿子的故事
72+
>
73+
> 恶有引力=>感觉出彩一些,家豪(打架)+善亦(自闭+缺少认知+没朋友)杀害老师的故事,对于两个小孩子刻画很好,家豪虽然坏,但是对善亦很好,善亦受欺负,像乖孩子那种,但是对生死好坏没认知,帮助家豪杀害了帮助自己的女老师==>994年「內湖女教師命案」
74+
75+
#台北女子图鉴
76+
77+
> 看了一点,开头台南去台北的部分,很像大陆的小地方进大城市
78+
79+
https://www.olevod.com/index.php/vod/play/id/38903/sid/1/nid/1.html
80+
#电动车头盔教程
81+
82+
感觉半盔比较适合,要找新国标3C认证更安全,看了一下测评的牌子
83+
84+
#ai #朝鲜
85+
86+
[![img](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/18fc08c3e30209c10650aa39f7763d9980e94863.jpg@160w_100h_1c.webp)](https://www.bilibili.com/video/BV18x4y187NX?spm_id_from=333.880.my_history.page.click)
87+
88+
[人民女团:将军!请下命令吧!](https://www.bilibili.com/video/BV18x4y187NX)
89+
90+
ai把朝鲜军歌改成南朝鲜风格
91+
92+
#台湾
93+
94+
> 大陆和台湾 要开放福建到台湾马祖,希望早日开放广东
95+
96+
#购物
97+
98+
新的被子,这次选了绿色
99+
100+
新的线条小狗短袖两只
101+
102+
103+
104+
> 小红书看到有博主@陈出月设计 大明帝国护照,想买来做护照壳,不过博主目前只做手账本,护照壳可能需要自己找人做,但是好像烫金要很多件才可以做
105+
>
106+
> 因为年份聊到崇祯纪元,发现最后一本崇祯纪元书本是1914,之前一直记错成1912,
107+
>
108+
> 感觉可以找时间做个崇祯纪元计算的工具

source/_posts/Sealos使用.md

Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
---
2+
title: Sealos使用
3+
date: 2024-09-23 15:20:18
4+
createdTime: 24-02-23 (星期五) 13:39
5+
updateTime: 25-01-03 (星期五) 17:17
6+
---
7+
https://cloud.sealos.io/
8+
9+
### 使用sealos选择nginx docker镜像部署
10+
11+
修改k8s部署的nginx image内部的nginx.conf来添加proxy_pass
12+
13+
需要在外部编写一个nginx.conf,覆盖掉镜像内部的nginx.conf
14+
15+
**在k8s中,可以使用把编写的nginx.conf放到 configMap内 随后用configMap的内容挂载到nginx容器内覆盖掉configMap**
16+
17+
> gui `新增配置文件`创建后 实际生成了`configMap`
18+
19+
`configmap.yaml`
20+
21+
```yml
22+
apiVersion: v1
23+
kind: ConfigMap
24+
metadata:
25+
name: nginx-test
26+
data:
27+
etcvn-nginxvn-nginxvn-conf: |-
28+
user nginx;
29+
worker_processes auto;
30+
31+
error_log /var/log/nginx/error.log notice;
32+
pid /var/run/nginx.pid;
33+
...省略其他配置内容
34+
```
35+
36+
37+
38+
`deployment.yml`
39+
40+
```yml
41+
apiVersion: apps/v1
42+
kind: Deployment
43+
metadata:
44+
name: nginx-test
45+
labels:
46+
app: nginx-test
47+
spec:
48+
replicas: 1
49+
revisionHistoryLimit: 1
50+
selector:
51+
matchLabels:
52+
app: nginx-test
53+
...
54+
spec:
55+
automountServiceAccountToken: false
56+
containers:
57+
- name: nginx-test
58+
image: nginx
59+
...
60+
volumeMounts: #容器挂载配置
61+
- name: etcvn-nginxvn-nginxvn-conf #对应vloume名称
62+
mountPath: etc/nginx/nginx.conf #挂载到容器的的路径
63+
subPath: ./etc/nginx/nginx.conf #只挂载vloume中特定文件,而非整个目录
64+
volumes:
65+
- name: etcvn-nginxvn-nginxvn-conf #volume 定义的卷的名称
66+
configMap: #vloume
67+
name: nginx-test #configMap的名称
68+
items:
69+
- key: etcvn-nginxvn-nginxvn-conf #configMap中数据项的key
70+
path: ./etc/nginx/nginx.conf #数据项在卷中路径
71+
```
72+
73+
> 原gui 新建的名字即为挂载到容器中的路径,需要修改为etc/nginx/nginx.conf
74+
75+
`kubectl edit deployment nginx-test` 进入编辑模式
76+
77+
按`Insert` 进入编辑
78+
79+
`Esc` 退出编辑,进入命令模式 `:wq` 保存并退出 `:q` 不保存退出
80+

source/_posts/k8s笔记.md

Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
---
2+
date: 2024-11-23 15:20:18
3+
title: k8s笔记
4+
createdTime: 23-05-21 (星期日) 21:17
5+
updateTime: 25-01-03 (星期五) 17:28
6+
---
7+
8+
9+
![image-20230521213417394](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521213417394.png)
10+
11+
![image-20230521213437099](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521213437099.png)
12+
13+
![image-20230521213456098](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521213456098.png)
14+
15+
![image-20230521213544895](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521213544895.png)
16+
17+
## K8S的对象
18+
19+
![img](https://static001.geekbang.org/resource/image/b5/cf/b5a7003788cb6f2b1c5c4f6873a8b5cf.jpg?wh=1920x1298)
20+
21+
### 离线业务->临时任务->只跑一次:job,定时任务:cronjob
22+
23+
**一些字段**
24+
activeDeadlineSeconds,设置 Pod 运行的超时时间。
25+
26+
backoffLimit,设置 Pod 的失败重试次数。
27+
28+
completions,Job 完成需要运行多少个 Pod,默认是 1 个。
29+
30+
parallelism,它与 completions 相关,表示允许并发运行的 Pod 数量,避免过多占用资源。
31+
32+
![image-20230521214214049](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521214214049.png)
33+
34+
![img](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/9b780905a824d2103d4ayyc79267ae28.jpg)![img](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/yy352c661ae37dd116dd12c61932b43c.jpg)
35+
36+
### ConfigMap/Secret:明文/秘文配置信息
37+
38+
> 不是容器 不需要spec字段说明允许规格
39+
>
40+
> containers”里有一个“env”,它定义了 Pod 里容器能够看到的环境变量
41+
>
42+
> 可以使用了简单的“value”,把环境变量的值写“死”在了 YAML 里
43+
>
44+
> 实际上它还可以使用另一个“valueFrom”字段,从 ConfigMap 或者 Secret 对象里获取值
45+
>
46+
> * name”字段是 API 对象的名字,而不是 Key-Value 的名字。
47+
48+
![img](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/0663d692b33c1dee5b08e486d271b69d.jpg)
49+
50+
![image-20230521214405793](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521214405793.png)
51+
52+
![image-20230521214605773](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521214605773.png)
53+
54+
### Deployment:管理pod->pod管理container
55+
56+
#### DaemonSet (spec 里没有 replicas 字段)在**每个节点上只创建出一个 Pod 实例**
57+
58+
如需要运行在master node上 需要设置污点/容忍度 taint:tolerations
59+
60+
![img](https://static001.geekbang.org/resource/image/c1/1c/c1dee411aa02f4ff2b8caaf0bd627a1c.jpg?wh=1920x1173)
61+
#### StatefulSet
62+
63+
> 专门部署“有状态应用”的 API 对象 StatefulSet,它与 Deployment 非常相似,区别是由它管理的 Pod 会有固定的名字、启动顺序和网络标识,这些特性对于在集群里实施有主从、主备等关系的应用非常重要
64+
65+
![img](https://static001.geekbang.org/resource/image/71/88/71b485401dca6946fe4788fa97e3fd88.png?wh=1268x414)
66+
67+
> **所管理的 Pod 不再是随机的名字了,而是有了顺序编号**,从 0 开始分别被命名为 redis-sts-0、redis-sts-1,Kubernetes 也会按照这个顺序依次创建(0 号比 1 号的 AGE 要长一点),这就解决了“**有状态应用”的第一个问题:启动顺序**
68+
>
69+
> **有了这个唯一的名字,应用就可以自行决定依赖关系了**
70+
>
71+
> 如以 Redis 为例子里,就可以让先启动的 0 号 Pod 是主实例,后启动的 1 号 Pod 是从实例
72+
>
73+
> Service 自己会有一个域名,格式是“对象名. 名字空间”,当我们把 Service 对象应用于 StatefulSet 的时候,**会为 Pod 再多创建出一个新的域名,格式是“Pod 名. 服务名. 名字空间.svc.cluster.local”/“Pod 名. 服务名**
74+
>
75+
> 外部的客户端只要知道了 StatefulSet 对象,就**可以用固定的编号去访问某个具体的Pod了,虽然 Pod 的 IP 地址可能会变,但这个有编号的域名由 Service 对象维护,是稳定不变的**
76+
77+
![img](https://static001.geekbang.org/resource/image/1a/0f/1a06987c87f3db948b591883a81bac0f.jpg?wh=4000x2946)
78+
79+
### Service与Ingress
80+
81+
> 不再关心 Pod 的具体地址,只要访问 Service 的固定 IP 地址
82+
83+
![img](https://static001.geekbang.org/resource/image/0f/64/0f74ae3a71a6a661376698e481903d64.jpg?wh=1920x1322)
84+
85+
#### ingress:集群内外边界上的入口
86+
87+
> Ingress 的路由规则是 HTTP 协议,所以就不能用 IP 地址的方式访问,必须要用域名、URI
88+
89+
![img](https://static001.geekbang.org/resource/image/e6/55/e6ce31b027ba2a8d94cdc553a2c97255.png?wh=1288x834)
90+
91+
#### 四者联系
92+
93+
![img](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/bb7a911e10c103fb839e01438e184914.jpg)
94+
95+
96+
97+
## 几种更新策略
98+
99+
> 普通部署 全部停掉 然后全部启动新的
100+
>
101+
> 用时最短
102+
103+
![image-20230521220007395](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521220007395.png)
104+
105+
### 滚动更新
106+
107+
![image-20230521220049973](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521220049973.png)
108+
109+
### 蓝绿部署
110+
111+
![](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521220049973.png)
112+
113+
金丝雀发布
114+
115+
![image-20230521220129212](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521220129212.png)
116+
117+
## 应用更健康
118+
119+
> 创建容器有三大隔离技术:namespace、cgroup、chroot。其中的 namespace 实现了独立的进程空间,chroot 实现了独立的文件系统,cgroup 的作用是管控 CPU、内存,保证容器不会无节制地占用基础资源,进而影响到系统里的其他应用
120+
121+
### cgroup
122+
123+
CPU、内存与存储卷,在 Pod 容器的描述部分添加一个新字段 resources 进行申请,它就相当于申请资源的 Claim
124+
125+
![image-20230521221149186](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521221149186.png)
126+
127+
> Kubernetes 里 CPU 的最小使用单位是 0.001,为了方便表示用了一个特别的单位 m,也就是“milli”“毫”的意思,比如说 500m 就相当于 0.5
128+
129+
### 容器状态探针(Probe)
130+
131+
> 除了保证崩溃重启,还必须要能够探查到 Pod 的内部运行状态,定时给应用做“体检”,让应用时刻保持“健康”,能够满负荷稳定工作
132+
133+
* Startup,启动探针,用来检查应用是否已经启动成功,适合那些有大量初始化工作要做,启动很慢的应用。
134+
135+
* Liveness,存活探针,用来检查应用是否正常运行,是否存在死锁、死循环。
136+
* Readiness,就绪探针,用来检查应用是否可以接收流量,是否能够对外提供服务
137+
138+
![img](https://static001.geekbang.org/resource/image/64/d9/64fde55dd2eab68f9968ff34218646d9.jpg?wh=1920x1200)
139+
140+
#### 探测方式
141+
142+
![image-20230521221515092](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521221515092.png)
143+
144+
> 启用了 80 端口,然后用 location 指令定义了 HTTP 路径 /ready,它作为对外暴露的“检查口”,用来检测就绪状态,返回简单的 200 状态码和一个字符串表示工作正常
145+
146+
![image-20230521221701080](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521221701080.png)
147+
148+
![image-20230521221605863](https://sheepnote.oss-cn-shenzhen.aliyuncs.com/ita/image-20230521221605863.png)
149+
150+
### namespace:通过不同命名空间实现资源隔离
151+
152+
> 可以像管理容器一样,给名字空间设定配额,把整个集群的计算资源分割成不同的大小,按需分配给团队或项目使用

0 commit comments

Comments
 (0)