Kubernetes NFS CSI 启动 bitnami postgres 镜像权限不足
开始准备在kubernetes 集群里面部署一个 pgsql, 存储一些自己的个人数据,postgres pod 启动不了,pod 会反复 CrashLoopback, 查看其中postgres 进程的容器, 会遇到这样的报错: 1234567891011fixing permissions on existing directory /var/lib/postgresql/data … okcreating subdirectories … okselecting dynamic shared memory implementation … posixselecting default max_connections … 20selecting default shared_buffers … 400kBselecting default time zone … Etc/UTCcreating configuration files … okrunning bootstrap script … 2020-07-28 19:47:30.936 UTC [73] FATAL: d...
TigerVNC 在 RHEL9 的安装和配置
安装 VNC 步骤记录初始化系统, 安装图形化. ( 我还安装的 虚拟化宿主机, 我需要所以就安装了. 12345678910111213141516171819# 更新系统软件包到最新sudo dnf update -y# 查看哪些可用的 Group, (方便sudo dnf grouplist# 安装 Server GUIsudo dnf groupinstall -y "Server with GUI"# 安装 KVM (按需sudo dnf groupinstall -y "Virtualization Host"# 安装 TigerVNC 服务sudo dnf install -y tigervnc-server# 关闭 SElinuxsudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config# 可以重启 或者 设置为 Permissivesudo setenforce 0# 关闭防火墙.sudo systemctl stop...
MySQL 计算内存用量
对于 MySQL,可以按以下示例计算 RDS for MySQL 数据库实例的大致内存使用量:Maximum MySQL Memory Usage = innodb_buffer_pool_size + key_buffer_size + ((read_buffer_size + read_rnd_buffer_size + sort_buffer_size + join_buffer_size) * max_connections) From repost: https://repost.aws/zh-Hans/knowledge-center/low-freeable-memory-rds-mysql-mariadb From MySQL Offical:5.7 https://dev.mysql.com/doc/refman/5.7/en/memory-use.html8.0 https://dev.mysql.com/doc/refman/8.0/en/memory-use.html 存储引擎的说明:https://dev.mysql.com/doc/ref...
SElinux问题排查
https://docs.redhat.com/zh_hans/documentation/red_hat_enterprise_linux/9/html/using_selinux/analyzing-an-already-found-selinux-denial_troubleshooting-problems-related-to-selinux安装相关软件. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647root@ip-172-31-54-198:/var/mnt/docker_root# rpm-ostree install policycoreutils-python-utils setroubleshoot-serverChecking out tree 1873357... doneEnabled rpm-md repositories: fedora-cisco-openh264 updates fedora updates-archiv...
MySQL 主从复制
被问了一个数据库的问题, 主从复制需要 主库锁表 和 主库重启 吗? Setting Up Binary Log File Position Based Replication使用docker配置一遍, 测试一下记录了步骤, 有些东西还是 MySQL 的官方文档好用. 主库需要做的事情 需要有唯一的 server id. 这个可以设置 variables , 不需要重启. 12345678MySQL [(none)]> SHOW variables LIKE 'server_id';+---------------+-------+| Variable_name | Value |+---------------+-------+| server_id | 198 |+---------------+-------+1 row in set (0.001 sec) 创建一个用户用来让从库同步数据. 这个也不需要重启. 1234567891011121314151617181920212223242526272829303132333...
在 PVE 上使用 Ignition 文件启动 Fedora CoreOS
PVE 解决方案:https://forum.proxmox.com/threads/howto-startup-vm-using-an-ignition-file.63782/ CoreOS Butane Config Spec:https://coreos.github.io/butane/config-fcos-v1_5/ 之前使用使用了另一个方案 让 PVE coreos 可以直接使用 cloudinit 注入密钥。现在感觉也没有必要, 直接关闭 cloudinit 使用 ignition file 就可以了。 按照上面连接中的文档, 编辑 PVE VM 的配置文件, 将args 附加到QemuServer的配置文件里面即可。 1vim /etc/pve/qemu-server/101.conf 添加 args 的配置, 这个配置会直接被记录和传递给 qemu 。 1234567891011121314151617181920212223```shellagent: 1主要就是这一行, 直接添加这个就可以了args: -fw_cfg name=opt/com.coreo...
使用 Snapper 管理快照
Snapper是一个快照管理工具, 可以自动创建和定期清理文件系统快照. Snapper 默认配置文件在 etc/snapper/configs.日志在: /var/log/snapper.log 创建 Snapper 配置文件使用 Snapper 的方法是首先为需要自动快照的子卷创建snapper config. 12345# 创建快照snapper -c harbor_data create-config /mnt/btrfs/root/@harbor_data/# 列出所有配置snapper list-configs 管理快照Snapper 提供了自动管理快照的功能, 也可以手动管理. 通常的操作包括: 创建新的快照, 删除快照, 列出所有快照. 12345678910111213141516171819202122snapper -c harbor_data listType | # | Pre # | Date | User | Cleanup | Descriptio...
容器运行的NodeExporter出现异常的 CloseWait
1. 故障背景最近在对家里的 PVE(Proxmox VE)环境做功耗优化。为了省电,我通过 cpupower 命令限制了宿主机的 CPU 频率,并使用了节能模式。同时,为了防止监控组件占用过多资源,之前我已经在 NodeExporter 的 Docker 容器中配置了极低的 CPU 限制。 环境设置: 监控组件: NodeExporter (Docker 容器部署) -> Prometheus -> Grafana 宿主机功耗调整命令:12cpupower frequency-set -g powersavecpupower frequency-set -u 2GHz Docker 限制配置 (docker-compose.yml):1234deploy: resources: limits: cpus: '0.1' # 限制只使用 0.1 核 2. 问题现象晚上回家查看 Grafana 面板时,发现有三台 VM 的监控数据突然中断了(No Data)。 初步排查: 检查容器状态: 第一反应是 NodeExporter ...
Linux open()调用的理解
原本的问题最近看 OSTEP 的内容, 慢慢看, 搞了一点点代码, 还挺有意思的。一边写一边尝试回答后面的思考问题。 在自己的环境中发现程序会报错 read failed: Bad file descriptor. 2.编写一个打开文件的程序(使用 open()系统调用),然后调用 fork()创建一个新进程。 子进程和父进程都可以访问 open()返回的文件描述符吗?当它我并发(即同时)写入文件时, 会发生什么? 第一个版本的代码这第一个版本的代码是我提需求 Copilot 写的. 所以我并不理解其中的意思, 解释的也比较粗糙, 我即便提供给他报错的部分, 它还是坚信这个代码没有问题, 子进程可以访问父进程的文件描述符…… 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293...
Harbor 的升级记录
这次更新的目的是, 将原来的 LVM 切换成 btrfs (真香! 存储主要将两个部分迁移到 [[Linux_btrfs|btrfs]] 上。 docker daemon 的工作目录. harbor 的数据 日志和证书. 下载源代码从官方的项目下载这个版本的 offline 安装包.不用 online 的原因是 : online 还需要从 dockerhub 下载镜像, 国内实在一言难尽. https://github.com/goharbor/harbor/releases/tag/v2.9.4 12cd /opt/wget https://github.com/goharbor/harbor/releases/download/v2.9.4/harbor-offline-installer-v2.9.4.tgz 解压1tar zxvf ./harbor-offline-installer-v2.10.2.tgz 复制之前版本的配置文件1cp /opt/harbor-2.10.0/harbor.yml . 确认配置文件中的几个参数已经改为正确的路径, 其他位置不变: ...

