低代码平台概览
对象存储-minio
minio 对象存储
引入原因
1、文件上传功能,不自己写上传接口
2、不用应用服务器 nginx 部署
3、权限设置,不希望有数据对外展示
4、阿里云对象存储收费
相关内容
安装
1 | docker pull minio/minio |
客户端使用
1 | docker pull minio/mc |
curl上传 centos正常,mac有问题
1 | # 设置Access Key和Secret Key |
存在问题
1、修改管理员密码
1 | # 修改密码 |
2、对外如何访问
见代码
3、预览不能展示图片
见 4
4、永久访问
1 | # 将bucket设置为public jpg直接能在浏览器打开 |
参考
springboot 内存占用定位
java 内存占用高
表现
1 | # 查看内存剩余 |
故障定位
查看具体项目内存占用
top -p pid查看 java 开启的线程数
top -H -p 22085heap 对象输出情况
jmap -heap pid获取 dump 文件
jmap -dump:format=b,file=/root/roi-pay/pay.hprof 22085大对象分析 - mat 工具 JDK11
Reports -> Leak Suspects -> Problem Susppects -> Details -> See stacktrace
1 | mysql 连接占用较大 mysql-cj-abandoned-connection-cleanup |
- 或者 jhat pay.hprof 然后在浏览器中 localhost:7000 访问分析结果
- 或者 https://fastthread.io/ 上传分析
参考
VirtualBox VM 固定ip
固定 ip
说明
| 模式名称 | 特点 |
|---|---|
| 网络地址转换(NAT) | 连接这个网络可以访问外部网络,但是外部网络不可访问虚拟机 |
| 桥接网卡 | 这个网络完全可以共享主机网络,主机网络发生变化时,也跟随变化,ip 也随之变动 |
| 仅主机(Host-Only)网络 | 这个网络也可以用来主机访问虚拟机以及虚拟机上 web 服务,但是虚拟机不可访问外网 |
方案
方案一:选择桥接网卡,直接共享主机网络,主机、虚拟机之间访问都没有问题
但是我们家用或者公司使用,都不会固定 ip 的,主机随时变化,那么虚拟机的 ip 也随时变化,很不方便,我们希望虚拟机的 ip 是固定的,方便我们连接和访问服务使用
方案二:网络地址转换(NAT) + 仅主机(Host-Only)网络 的组合
参考
dns解析原理
dns 解析原理
dig 的使用
foxhello.com 的 dns 结果
1 | dig +short ns foxhello.com |
step 1 根域名
dig @h.root-servers.net foxhello.com
根域名
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> @h.root-servers.net foxhello.com
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22835
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 13, ADDITIONAL: 27
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;foxhello.com. IN A
;; AUTHORITY SECTION:
com. 172800 IN NS a.gtld-servers.net.
com. 172800 IN NS b.gtld-servers.net.
com. 172800 IN NS c.gtld-servers.net.
com. 172800 IN NS d.gtld-servers.net.
com. 172800 IN NS e.gtld-servers.net.
com. 172800 IN NS f.gtld-servers.net.
com. 172800 IN NS g.gtld-servers.net.
com. 172800 IN NS h.gtld-servers.net.
com. 172800 IN NS i.gtld-servers.net.
com. 172800 IN NS j.gtld-servers.net.
com. 172800 IN NS k.gtld-servers.net.
com. 172800 IN NS l.gtld-servers.net.
com. 172800 IN NS m.gtld-servers.net.
;; ADDITIONAL SECTION:
a.gtld-servers.net. 172800 IN A 192.5.6.30
b.gtld-servers.net. 172800 IN A 192.33.14.30
c.gtld-servers.net. 172800 IN A 192.26.92.30
d.gtld-servers.net. 172800 IN A 192.31.80.30
e.gtld-servers.net. 172800 IN A 192.12.94.30
f.gtld-servers.net. 172800 IN A 192.35.51.30
g.gtld-servers.net. 172800 IN A 192.42.93.30
h.gtld-servers.net. 172800 IN A 192.54.112.30
i.gtld-servers.net. 172800 IN A 192.43.172.30
j.gtld-servers.net. 172800 IN A 192.48.79.30
k.gtld-servers.net. 172800 IN A 192.52.178.30
l.gtld-servers.net. 172800 IN A 192.41.162.30
m.gtld-servers.net. 172800 IN A 192.55.83.30
a.gtld-servers.net. 172800 IN AAAA 2001:503:a83e::2:30
b.gtld-servers.net. 172800 IN AAAA 2001:503:231d::2:30
c.gtld-servers.net. 172800 IN AAAA 2001:503:83eb::30
d.gtld-servers.net. 172800 IN AAAA 2001:500:856e::30
e.gtld-servers.net. 172800 IN AAAA 2001:502:1ca1::30
f.gtld-servers.net. 172800 IN AAAA 2001:503:d414::30
g.gtld-servers.net. 172800 IN AAAA 2001:503:eea3::30
h.gtld-servers.net. 172800 IN AAAA 2001:502:8cc::30
i.gtld-servers.net. 172800 IN AAAA 2001:503:39c1::30
j.gtld-servers.net. 172800 IN AAAA 2001:502:7094::30
k.gtld-servers.net. 172800 IN AAAA 2001:503:d2d::30
l.gtld-servers.net. 172800 IN AAAA 2001:500:d937::30
m.gtld-servers.net. 172800 IN AAAA 2001:501:b1f9::30
;; Query time: 63 msec
;; SERVER: 198.97.190.53#53(198.97.190.53)
;; WHEN: 五 3 月 04 09:42:47 CST 2022
;; MSG SIZE rcvd: 837
step 2 一级域名
dig @a.gtld-servers.net foxhello.com
一级域名
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> @a.gtld-servers.net foxhello.com
; (2 servers found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 47429
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 2, ADDITIONAL: 19
;; WARNING: recursion requested but not available
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;foxhello.com. IN A
;; AUTHORITY SECTION:
foxhello.com. 172800 IN NS dns9.hichina.com.
foxhello.com. 172800 IN NS dns10.hichina.com.
;; ADDITIONAL SECTION:
dns9.hichina.com. 172800 IN A 120.76.107.42
dns9.hichina.com. 172800 IN A 120.76.107.52
dns9.hichina.com. 172800 IN A 139.224.142.112
dns9.hichina.com. 172800 IN A 139.224.142.122
dns9.hichina.com. 172800 IN AAAA 2408:4009:501::17
dns9.hichina.com. 172800 IN A 39.96.153.42
dns9.hichina.com. 172800 IN A 39.96.153.52
dns9.hichina.com. 172800 IN A 47.118.199.202
dns9.hichina.com. 172800 IN A 47.118.199.212
dns10.hichina.com. 172800 IN A 120.76.107.41
dns10.hichina.com. 172800 IN A 120.76.107.51
dns10.hichina.com. 172800 IN A 139.224.142.111
dns10.hichina.com. 172800 IN A 139.224.142.121
dns10.hichina.com. 172800 IN AAAA 2408:4009:501::18
dns10.hichina.com. 172800 IN A 39.96.153.41
dns10.hichina.com. 172800 IN A 39.96.153.51
dns10.hichina.com. 172800 IN A 47.118.199.201
dns10.hichina.com. 172800 IN A 47.118.199.211
;; Query time: 216 msec
;; SERVER: 192.5.6.30#53(192.5.6.30)
;; WHEN: 五 3 月 04 09:43:41 CST 2022
;; MSG SIZE rcvd: 400
step 2 域名
dig dns9.hichina.com foxhello.com
域名
; <<>> DiG 9.11.4-P2-RedHat-9.11.4-26.P2.el7_9.7 <<>> dns9.hichina.com foxhello.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15406
;; flags: qr rd ra; QUERY: 1, ANSWER: 8, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;dns9.hichina.com. IN A
;; ANSWER SECTION:
dns9.hichina.com. 1034 IN A 47.118.199.202
dns9.hichina.com. 1034 IN A 120.76.107.42
dns9.hichina.com. 1034 IN A 139.224.142.112
dns9.hichina.com. 1034 IN A 139.224.142.122
dns9.hichina.com. 1034 IN A 47.118.199.212
dns9.hichina.com. 1034 IN A 120.76.107.52
dns9.hichina.com. 1034 IN A 39.96.153.52
dns9.hichina.com. 1034 IN A 39.96.153.42
;; Query time: 1 msec
;; SERVER: 183.60.83.19#53(183.60.83.19)
;; WHEN: 五 3 月 04 09:44:45 CST 2022
;; MSG SIZE rcvd: 162
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 3675
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;foxhello.com. IN A
;; AUTHORITY SECTION:
foxhello.com. 600 IN SOA dns9.hichina.com. hostmaster.hichina.com. 2022011002 3600 1200 86400 600
;; Query time: 177 msec
;; SERVER: 183.60.83.19#53(183.60.83.19)
;; WHEN: 五 3 月 04 09:44:45 CST 2022
;; MSG SIZE rcvd: 90
参考
kubernetes 搭建
kubernetes
搭建 方案一
安装 kubectl
1 | curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" |
安装 minikube
1 | curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 |
创建服务 hello-minikube
1 |
|
创建服务 balanced
1 |
|
开放端口
1 |
|
搭建 方案二 Kuboard Spray
Kuboard Spray 搭建
1 | docker run -d \ |
在浏览器地址栏中输入 http://这台机器的 IP 地址,输入默认密码 Kuboard123
kuboard 安装 k8s 图形化管理界面
1 | kubectl apply -f https://kuboard.cn/install-script/kuboard.yaml |
问题
- 如何访问服务?
- https 证书怎么解决?
参考
acme.sh 域名解析
acme.sh
证书下载
1 | export Ali_Key="你的key" |
参考
ansible 自动化运维
自动化运维
ansible
安装
1 | # 安装依赖 |
yml示例
1 | ### roicloud-user.yml |
/etc/ansible/hosts 示例
1 | [roicloud-db] |
jenkins job示例
1 | ansible-playbook /root/playbook-yml/roicloud-user.yml --extra-vars "baseDir=${WORKSPACE}" |