- 博客(161)
- 收藏
- 关注
原创 基于Docker的Minio分布式集群实践
以多节点的Docker容器方式实现minio存储集群,并配以nginx反向代理及负载均衡作为访问入口。软件配置:ubuntu22.04 + 宝塔面板 + nginx。服务器 (2 nodes)硬件配置:8核16G2T。
2024-12-17 17:57:59
689
原创 Ansible 运维工具
处理: 清理 ~/.ssh/known_hosts文件中对应的ip主机。/etc/ansible/hosts , 指定密码或密钥访问分组机器。
2024-12-03 17:14:35
474
原创 FrankenPHP实践
它实际上是有两种运行模式:普通模式和worker模式,其中的普通模式类似于传统的LNMP容器,只是Nginx换成了Caddy Server,带来的提升并不特别明显。如果自建镜像扩展插件,需三思是否需要加Opcache,开启后 frankenphp 的watch功能(监控文件修改自动热启)将不能正常使用,但开启后,性能将提高40%左右。Frankenphp是一个先进的,结合了高性能Caddy服务器的PHP。,它允许用户只需要少量改动,就能让传统的php前端应用插上翅膀,享受到。
2024-11-01 11:19:07
1448
1
原创 大数据应用方案1-Postgresql集群
加入配置 REPMGR_PRIMARY_HOST=pg-0 (即主服务),则读写都可以了,否则是只读模式, 当通过连接pgpool删减或增加表时,自动同步到pg-0与pg-1。- 停掉pg-1节点, 然后连接pgpool,新增一个t1表,插入一条数据, 重启pg-1节点,观察相应数据库是否有新增t1表及数据完整性,- 两个已安装了docker的Ubuntu22.04虚拟机,其中pg-0为主节点, pg-1为从节点,pgpool为负载均衡节点。
2024-10-11 10:28:22
1310
原创 我的私有云-IOT定位/追踪系统
本文介绍一套低成本实现的IOT定位追踪系统方案,实现基于:本地内网服务器-云服务器-IOT终端-手机终端 互联互通基础上的定位追踪应用。
2024-08-30 16:29:28
1995
3
原创 Apache Nifi挂接MQTT与Kafka实践
Nifi支持集群化部署,如此从数据采集,数据流动到数据存储都实现了分布式,而且有可视化的界面可方便地进行数据节点的集聚与增减配置,目前只是浅尝即止,更深入的研究待后续不断补充优化。
2024-07-26 16:30:55
1617
原创 Gitlab: Python项目CI/CD实践
Python项目应用Giltab系统, 进行CI/CD实践,分别以fastapi和kinit项目示例。
2024-04-18 21:36:40
2077
原创 fastapi / kinit 笔记
Kinit 是一套开箱即用的中后台解决方案,可以作为新项目的启动模版,前后端分离架构,开箱即用,在线例子:https://kinit.ktianc.top/login。默认账号:15020221010 密码:kinit2022 - 用的是alembic工具 Welcome to Alembic’s documentation! — Alembic 1.13.1 documentation编辑迁移文件命令执行
2024-04-14 20:45:58
1018
3
原创 Gitlab: PHP项目CI/CD实践
构建的镜像将push到hub.docker.com,因此需要在Admin Area->CI/CD->Variables添加docker访问用户变量。- 注意build时所需的参数,缺少会诱发错误: “Invalid tag: missing manifest digest”- 需要在Admin Area->CI/CD->Variables添加docker访问用户变量。.dev文件是运维人员建立的服务器定制环境文件,不进入仓库,链接到项目同名文件。链接到最新版本的应用数据保存目录,如:日志,缓存等。
2024-03-04 12:24:45
1429
原创 Gitlab: 私有化部署
gitlab是一个强大且免费的代码管理/部署工具,能统一集成代码仓库,CI/CD的工作。开始时我以为只能在官网上使用,后来才知道能私有化部署,确实了不起。gitlab资源要求比较高,建议8核16G,目前我的虚拟机是分配了5核12G,要是工作任务上来,还要划拨资源。docker-composer方式,指定外部访问url为。安装后进去容器设置管理员(root)密码。
2024-02-29 10:43:19
5979
原创 Ubuntu/WSL下生产密钥脚本
有时候需要为开发人员配发密钥,为方便写了个小脚本,在linux下运行,要求 python10, putty-tools。使用时,在staffList定义用户列表,运行后程序自动产生对应目录及密钥。
2024-02-19 10:52:49
389
原创 K8S集群实践之十:虚拟机部署阶段性总结
K8s的集群鲁棒性相对比较脆弱,断电或不正常重启都极可能造成集群服务不能启动(6443 api不能访问之类的),所以ceph等要求安稳性高的服务就尽量不要部署在上面了,另需做好快照准备,以便及时恢复。
2024-02-10 22:55:30
966
1
原创 Python 开发笔记
目录- 根据已有数据表生成实体模型类- 字典合并- 与asyncio一起,在TCP服务端检查客户端是否断连- * 与 ** 的用法- 初始化venv环境- pip- 避免安装时出现 "python setup.py egg_info did not run successfully." 问题- linux下安装tkinter包- 将库中的python模块用作脚本去运行- vscode中的launch.json- 项目根目录定义- 函数参数中的/和*- 类型转换- 关于pytest- fastapi中的数据分
2023-12-13 08:51:31
896
原创 Chrome中设置安全来源域名
目的:使得本地映射的域名能被浏览器安全访问,允许调用设备资源步骤: 在Chrome中导航栏打开 `chrome://flags/#unsafely-treat-insecure-origin-as-secure` 填入hosts域名:如 http://h5-twzc003.local.com 参考:https://medium.com/@Carmichaelize/enabling-the-microphone-camera-in-chrome-for-
2023-11-20 08:48:01
1038
原创 K8S集群实践之九: Ceph
3. 编写删除脚本,/k8s_apps/scripts/rook-ceph-delete.sh。2. 编写安装脚本,/k8s_apps/scripts/k8s-rook-ceph.sh。4. 执行安装,一切正常的话,如下图,不正常的话,执行删除脚本,排除问题后重来。因香橙派和树莓派资源所限,转移到基于VirtualBox建立的VMs继续实践。1. 获取rook仓库到安装路径,如:/k8s_apps/rook。一句话:有个裸盘 (100G /dev/sdb)
2023-10-23 18:19:09
501
原创 OpenCV与mediapipe实践
开发环境:vscode + venv初始化环境在VSCode中使用CTRL+shift+p命令: 打开命令交互面板;(或点击Setting,点击Command Palette…)输入 Python:Select Interpreter。
2023-10-16 16:12:18
934
原创 VirtualBox7+Ubuntu22集群规划
systemd-networkd 默认使用 /etc/machine-id 来识别,当虚拟机克隆的时候,他们都有一样的 /etc/machine-id 和 DHCP server,因此返回的都是同一个 ip 了。"machine ID"是一个32字符长度的十六进制小写字母字符串, 并以换行符结尾, 其本质是一个128位二进制整数的16进制表示。另一方面,对于无状态系统,如果此文件为空, 将在系统启动的早期自动随机生成一个。,原装了一套Win11专业版,为建设虚拟机集群研究提供基础支持。
2023-09-01 12:03:07
813
2
原创 Wav2Lip实践
1.1 安装 conda以指定python版本运行环境下载:Index of /1.2 如按旧项目基于python3.6版本对话,会有很多包找不到的情况,经摸索后以python3.9构建成功,requirements.txt 内容。
2023-08-09 17:27:42
1315
4
原创 香橙派4和树莓派4B构建K8S集群实践之八: TiDB
可在KubeSphere看到可用的PVs,等用了SC的Pods起来后就可以赋予绑定,不然这些pod会报错。local-volume-provisioner:v2.3.4 没有for arm体系的版本, 拉取时报错。介绍如何在标准 Kubernetes 集群上通过 TiDB Operator 部署 TiDB 集群。(注:如果用之前默认设好的NFS SC作为tidb的存储类会导致pd,kv pods不能启动)修改对应Stroage Class。编辑客户机hosts。
2023-07-10 18:02:48
1160
2
原创 香橙派4和树莓派4B构建K8S集群实践之七: Jenkins
查找安装的目标Server是否有污点 "node-role.kubernetes.io/control-plane",有则去掉或修改。编辑 volume.yaml,设置/data0/jenkins-volume为存储地, 节点 k8s-master-0。(jenkins_url)/restart – 强制重启,无需等待生成完成。解决办法:手动安装 skip-certificate-check,到这里下载。然后就可以欢快地访问 jenkins.k8s-t2.com了。执行脚本k8s-jenkins.sh。
2023-07-06 17:53:43
10368
1
原创 强大的蚊子
今天有一友向我荐iphone vision pro的视频,强调如何如何创新法,心里不以为然,正想驳斥,只觉脚踝一阵皮痒,低头看,但见几只蚊子吸饱了血仍趴着不走,遂一巴掌拍成血泥。忽而想之,蚊子有动力系统,会飞前飞后,向上向下,有嗅觉传感器,有紧急避险装置,有吸取能量消化并储存的系统,还有生殖系统,iphone相比简直弱爆了,相比之下,人类正处于AI应用爆发的前沿一刻,什么时候能发展到蚊子这样个体的水平呢?
2023-06-06 22:18:44
128
原创 香橙派4和树莓派4B构建K8S集群实践之六:App服务部署
- 根据之前的k8s基础,我打算设置两种不同的虚拟主机运行在这个K8s集群上面,一个是PHP+Nginx体系的WebApp,一个是Java SpringBoot体系的WebApp。- 关于PHP+Nginx体系的WebApp,这里将实践两种部署模式:单节点多容器模式 多节点单容器协作模式
2023-05-24 17:43:24
1040
原创 香橙派4和树莓派4B构建K8S集群实践之五:端口公开访问配置
我们需用k8s集群提供开放特别的端口访问服务,如一些微服务端口- 在团队开发环境中,通常要访问公共数据库,集群需提供统一的接口给大伙接下来以实践四中设置的mariadb-galera为基础,公开端口3306,并用db.k8s-t2.com访问。
2023-05-17 18:41:31
784
原创 香橙派4和树莓派4B构建K8S集群实践之四:BuildKit与LNMP
namespace为iot-age, nginx 与 php分别部署到不同的pods, 它们共用相同的pvc存储(即wwwroot目录相同,应用部署在里面), php pods 访问相同的数据库。- 使用buildkit作为image构建工具,通过指定镜像部署定制化的php pods。
2023-05-11 22:36:50
1045
7
原创 香橙派4和树莓派4B构建K8S集群实践之三:kubesphere
KubeSphere 是在 Kubernetes 之上构建的以应用为中心的多租户容器平台,提供全栈的 IT 自动化运维的能力 (), 主要功能:多云与多集群管理、Kubernetes 资源管理、DevOps、应用生命周期管理、微服务治理(服务网格)、日志查询与收集、服务与网络、多租户管理、监控告警、事件与审计查询、存储管理、访问权限控制、GPU 支持、网络策略、镜像仓库管理以及安全管理等。
2023-05-04 12:31:08
957
1
原创 香橙派4和树莓派4B构建K8S集群实践之二:ingress-nginx
资料显示,Kubernetes 里的Ingress 服务提供了类似大厦入口管理处这样的能力。以上可得知4.6.0版本可用,由于伟大的墙缘故,须先拿下来源包后,做些代理源上的设置修改。- 计划在ks8-master-1(参阅前文。)上用helm3安装。安装好后,添加以下源。
2023-04-22 19:06:52
818
1
原创 香橙派4和树莓派4B构建K8S集群实践之一:K8S安装
临时关闭Swap, 在我的香橙派中,重启后swap分区又会出来,(试过很多方法都不行),简直是打不死的小强,后期在配置文件(/etc/systemd/system/kubelet.service.d/10-kubeadm.conf)中添加参数--fail-swap-on=false解决,参看遇到的问题一节。kubectl describe pod -n kube-flannel kube-flannel-ds-x4px6 # 查pod问题。: 删除 --network-plugin=cni。
2023-04-11 18:41:43
3327
2
原创 VSCode下配置WSL2+PHP+Hyperf开发环境
按F1键,选择WSL: New WSL Window, 相当于建立了对本地linux系统的访问连接。本机的php开发环境是WSL2下的php8.2+swoole (打开项目文档,设置launch.json。访问 localhost:9501。
2023-03-02 12:25:01
1032
原创 WSL2下的PHP多版本设置
对于习惯于Win下操作的朋友,WSL2带来了极大的便利,最近需要升级下里面的php版本,分享下过程。如图:目前本机环境是apache2 + 多个php版本。
2023-02-27 10:47:40
879
原创 关于PowerDesigner中SQL保留字的去除
说明很长一段时间以来,PowerDesigner都是我工作的好搭档,唯一不爽的地方是其生成的sql中含有一些带双引号的保留字不能去除,一直由于懒的原因而采取绕弯路手动方式修正, 确实是个隐藏得比较深的设定,今天努力了一番终于找出解决方法,分享之...
2023-02-25 10:15:51
147
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人