MoreRSS

site iconFrytea | 宋天伦修改

专注于云计算和AI相关技术,喜欢摄影、阅读、观影、写作,安静的做事情。
请复制 RSS 到你的阅读器,或快速订阅到 :

Inoreader Feedly Follow Feedbin Local Reader

Frytea | 宋天伦的 RSS 预览

Kubernetes kubectl --raw 使用指南

2025-11-10 21:08:00

什么是 kubectl --raw?

kubectl --raw 是一个强大的底层工具,允许你直接访问 Kubernetes API Server 的 REST API,绕过 kubectl 的客户端逻辑、准入控制器(Admission Controllers)和 Webhook。

为什么需要 --raw?

标准 kubectl 的请求流程

kubectl 命令
    ↓
客户端验证和处理
    ↓
Admission Controllers
    ↓
Mutating Webhooks (修改请求)
    ↓
Validating Webhooks (验证请求)
    ↓
API Server 存储到 etcd

kubectl --raw 的请求流程

kubectl --raw
    ↓
直接 HTTP 请求到 API Server
    ↓
绕过大部分中间件
    ↓
直接操作 etcd

适用场景

  1. 绕过 Webhook 干扰 - 当 Mutating/Validating Webhook 阻止正常操作时
  2. 调试 API Server - 排查 kubectl 客户端与 API Server 的交互问题
  3. 访问特殊端点 - 访问 metrics、healthz 等非资源端点
  4. 绕过客户端限制 - kubectl 版本不支持某些新特性时
  5. 性能测试 - 直接测试 API Server 响应时间
  6. 修复僵尸资源 - 清理被控制器锁定的资源状态

基本语法

# 基本格式
kubectl get --raw <API-PATH>

# 或在某些版本中
kubectl --raw <API-PATH>

常用操作示例

1. GET 请求 - 查询资源

查看集群级别资源

# 获取所有节点
kubectl get --raw /api/v1/nodes | jq .

# 获取特定节点
kubectl get --raw /api/v1/nodes/node-name | jq .

# 获取节点状态
kubectl get --raw /api/v1/nodes/node-name/status | jq .

# 获取所有命名空间
kubectl get --raw /api/v1/namespaces | jq .

查看命名空间级别资源

# 获取 default 命名空间的所有 Pod
kubectl get --raw /api/v1/namespaces/default/pods | jq .

# 获取特定 Pod
kubectl get --raw /api/v1/namespaces/default/pods/pod-name | jq .

# 获取 Deployment
kubectl get --raw /apis/apps/v1/namespaces/default/deployments/deploy-name | jq .

# 获取 Service
kubectl get --raw /api/v1/namespaces/default/services/svc-name | jq .

查看子资源

# Pod 日志
kubectl get --raw /api/v1/namespaces/default/pods/pod-name/log

# Pod 状态
kubectl get --raw /api/v1/namespaces/default/pods/pod-name/status | jq .

# Service 的 Endpoint
kubectl get --raw /api/v1/namespaces/default/endpoints/service-name | jq .

2. PUT 请求 - 完整更新资源

# 更新节点(先获取,修改,再替换)
kubectl get --raw /api/v1/nodes/node-name > node.json

# 编辑 node.json 文件
vim node.json

# 替换(注意:不同版本语法可能不同)
kubectl replace --raw /api/v1/nodes/node-name -f node.json

# 或使用 kubectl proxy 方式
kubectl proxy --port=8001 &
curl -X PUT \
  -H "Content-Type: application/json" \
  -d @node.json \
  http://localhost:8001/api/v1/nodes/node-name

实战案例:清除节点僵尸条件

# 获取节点当前状态
kubectl get --raw /api/v1/nodes/node-name > /tmp/node.json

# 使用 jq 删除特定条件
jq 'del(.status.conditions[] | select(.type == "EtcdIsVoter"))' \
  /tmp/node.json > /tmp/node-fixed.json

# 更新节点状态
kubectl replace --raw /api/v1/nodes/node-name/status -f /tmp/node-fixed.json

3. POST 请求 - 创建资源

# 创建 Pod
cat > pod.json <<EOF
{
  "apiVersion": "v1",
  "kind": "Pod",
  "metadata": {
    "name": "test-pod",
    "namespace": "default"
  },
  "spec": {
    "containers": [{
      "name": "nginx",
      "image": "nginx:latest"
    }]
  }
}
EOF

kubectl create --raw /api/v1/namespaces/default/pods -f pod.json

4. DELETE 请求 - 删除资源

# 删除 Pod
kubectl delete --raw /api/v1/namespaces/default/pods/pod-name

# 使用 kubectl proxy 方式
kubectl proxy --port=8001 &
curl -X DELETE http://localhost:8001/api/v1/namespaces/default/pods/pod-name

5. PATCH 请求 - 部分更新

# JSON Patch (精确的操作指令)
kubectl patch --raw /api/v1/nodes/node-name \
  --type='json' \
  -p='[
    {"op": "add", "path": "/metadata/labels/new-label", "value": "new-value"},
    {"op": "remove", "path": "/status/conditions/0"}
  ]'

# Strategic Merge Patch (合并式更新)
kubectl patch --raw /api/v1/nodes/node-name \
  --type='merge' \
  -p '{
    "metadata": {
      "labels": {
        "environment": "production"
      }
    }
  }'

# Merge Patch (简单合并)
kubectl patch --raw /api/v1/nodes/node-name \
  --type='merge' \
  -p '{"spec":{"unschedulable":true}}'

API 路径规则

核心 API 组 (Core API Group)

# 格式
/api/v1/<resource-type>                        # 集群级别
/api/v1/namespaces/<namespace>/<resource-type> # 命名空间级别

# 示例
/api/v1/nodes
/api/v1/nodes/node-name
/api/v1/nodes/node-name/status
/api/v1/namespaces/default/pods
/api/v1/namespaces/default/pods/pod-name
/api/v1/namespaces/default/services

命名 API 组 (Named API Groups)

# 格式
/apis/<group>/<version>/<resource-type>
/apis/<group>/<version>/namespaces/<ns>/<resource-type>

# 常用 API 组示例
/apis/apps/v1/deployments                           # Deployment
/apis/apps/v1/namespaces/default/deployments
/apis/batch/v1/cronjobs                             # CronJob
/apis/networking.k8s.io/v1/ingresses                # Ingress
/apis/rbac.authorization.k8s.io/v1/clusterroles     # ClusterRole
/apis/storage.k8s.io/v1/storageclasses              # StorageClass

子资源 (Subresources)

# 状态子资源
/api/v1/nodes/<name>/status
/apis/apps/v1/namespaces/<ns>/deployments/<name>/status

# 日志
/api/v1/namespaces/<ns>/pods/<name>/log
/api/v1/namespaces/<ns>/pods/<name>/log?container=container-name

# 执行命令
/api/v1/namespaces/<ns>/pods/<name>/exec

# 端口转发
/api/v1/namespaces/<ns>/pods/<name>/portforward

# 代理
/api/v1/nodes/<name>/proxy
/api/v1/namespaces/<ns>/pods/<name>/proxy
/api/v1/namespaces/<ns>/services/<name>/proxy

特殊端点

查看 API 资源

# 列出所有 API 版本
kubectl get --raw /apis | jq '.groups[].name'

# 查看特定 API 组
kubectl get --raw /apis/apps/v1 | jq .

# 列出所有可用资源
kubectl get --raw /api/v1 | jq '.resources[].name'

# OpenAPI 规范
kubectl get --raw /openapi/v2 | jq . > openapi.json

集群信息

# 版本信息
kubectl get --raw /version | jq .

# 健康检查
kubectl get --raw /healthz
kubectl get --raw /livez
kubectl get --raw /readyz

# API Server 标志
kubectl get --raw /debug/flags/v

# Metrics
kubectl get --raw /metrics

认证和授权

# 检查当前用户权限
kubectl get --raw /apis/authorization.k8s.io/v1/selfsubjectaccessreviews \
  -X POST \
  -d '{
    "apiVersion": "authorization.k8s.io/v1",
    "kind": "SelfSubjectAccessReview",
    "spec": {
      "resourceAttributes": {
        "namespace": "default",
        "verb": "get",
        "resource": "pods"
      }
    }
  }'

使用 kubectl proxy 的方式

kubectl --raw 不可用或语法复杂时,可以使用 proxy 方式:

# 启动代理
kubectl proxy --port=8001 &

# 使用 curl 访问
curl http://localhost:8001/api/v1/nodes | jq .

# GET 请求
curl http://localhost:8001/api/v1/namespaces/default/pods

# POST 请求
curl -X POST \
  -H "Content-Type: application/json" \
  -d @pod.json \
  http://localhost:8001/api/v1/namespaces/default/pods

# PUT 请求
curl -X PUT \
  -H "Content-Type: application/json" \
  -d @node.json \
  http://localhost:8001/api/v1/nodes/node-name/status

# DELETE 请求
curl -X DELETE \
  http://localhost:8001/api/v1/namespaces/default/pods/pod-name

# 停止代理
pkill -f "kubectl proxy"

实战案例

案例 1: 绕过 Webhook 修改节点标签

# 问题:Mutating Webhook 拦截标签修改
# 解决:直接通过 API 修改

# 1. 获取节点
kubectl get --raw /api/v1/nodes/node-name > node.json

# 2. 使用 jq 添加标签
jq '.metadata.labels["custom-label"] = "custom-value"' node.json > node-updated.json

# 3. 替换节点
kubectl replace --raw /api/v1/nodes/node-name -f node-updated.json

案例 2: 清理僵尸 Finalizer

# 问题:资源因 finalizer 无法删除
# 解决:直接清空 finalizers

# 1. 获取资源
kubectl get --raw /api/v1/namespaces/stuck-namespace > ns.json

# 2. 清空 finalizers
jq '.spec.finalizers = []' ns.json > ns-clean.json

# 3. 更新
kubectl replace --raw /api/v1/namespaces/stuck-namespace/finalize -f ns-clean.json

案例 3: 批量查询资源状态

#!/bin/bash
# 批量检查节点状态

for node in $(kubectl get nodes -o name | cut -d/ -f2); do
  echo "=== Node: $node ==="
  kubectl get --raw /api/v1/nodes/$node/status | \
    jq -r '.status.conditions[] | select(.type=="Ready") | 
    "Status: \(.status), Reason: \(.reason)"'
done

案例 4: 性能测试

#!/bin/bash
# 测试 API Server 响应时间

echo "Testing API Server performance..."
for i in {1..10}; do
  time kubectl get --raw /api/v1/nodes > /dev/null 2>&1
done

案例 5: 导出所有资源

#!/bin/bash
# 导出命名空间的所有资源

NAMESPACE="default"
OUTPUT_DIR="./k8s-backup"
mkdir -p $OUTPUT_DIR

# 导出 Pods
kubectl get --raw /api/v1/namespaces/$NAMESPACE/pods | \
  jq . > $OUTPUT_DIR/pods.json

# 导出 Services
kubectl get --raw /api/v1/namespaces/$NAMESPACE/services | \
  jq . > $OUTPUT_DIR/services.json

# 导出 Deployments
kubectl get --raw /apis/apps/v1/namespaces/$NAMESPACE/deployments | \
  jq . > $OUTPUT_DIR/deployments.json

echo "Backup completed in $OUTPUT_DIR"

注意事项

1. 权限要求

# 需要相应的 RBAC 权限
# 检查权限
kubectl auth can-i get nodes
kubectl auth can-i update nodes

2. resourceVersion 冲突

# 更新时可能遇到冲突
# Error: the object has been modified; please apply your changes to the latest version

# 解决:重新获取最新版本
kubectl get --raw /api/v1/nodes/node-name > node-latest.json
# 重新修改并更新

3. 数据格式验证

# 使用 jq 验证 JSON 格式
cat resource.json | jq . > /dev/null

# 如果有错误会提示

4. 备份重要资源

# 在修改前务必备份
kubectl get --raw /api/v1/nodes/node-name > node-backup-$(date +%Y%m%d).json

5. 只读操作优先

# 先用 GET 查看,确认无误后再 PUT/PATCH
kubectl get --raw /api/v1/nodes/node-name | jq .

版本兼容性

Kubernetes 1.18+

kubectl get --raw /api/v1/nodes
kubectl create --raw /api/v1/namespaces/default/pods -f pod.json
kubectl replace --raw /api/v1/nodes/node-name -f node.json
kubectl patch --raw /api/v1/nodes/node-name --type=merge -p '{...}'
kubectl delete --raw /api/v1/namespaces/default/pods/pod-name

早期版本或不支持时

# 使用 kubectl proxy
kubectl proxy --port=8001 &
curl http://localhost:8001/api/v1/nodes

调试技巧

1. 查看完整请求

# 增加日志级别
kubectl get --raw /api/v1/nodes -v=8

2. 使用 jq 过滤输出

# 只查看节点名称
kubectl get --raw /api/v1/nodes | jq '.items[].metadata.name'

# 查看 Pod 状态
kubectl get --raw /api/v1/namespaces/default/pods | \
  jq '.items[] | {name: .metadata.name, status: .status.phase}'

3. 格式化时间戳

# 转换时间格式
kubectl get --raw /api/v1/nodes/node-name | \
  jq '.metadata.creationTimestamp | fromdate | strftime("%Y-%m-%d %H:%M:%S")'

总结

kubectl --raw 是 Kubernetes 的"瑞士军刀",提供了:

直接访问 API - 绕过客户端限制
调试工具 - 排查 kubectl 和 API Server 问题
应急修复 - 处理 Webhook 和控制器导致的问题
性能测试 - 直接测试 API Server
学习工具 - 理解 Kubernetes API 结构

⚠️ 使用场景: 作为最后的调试和修复手段
⚠️ 不推荐: 日常操作应使用标准 kubectl 命令
⚠️ 需谨慎: 直接操作可能破坏资源状态

参考资源

磁盘使用分析工具对比:du vs ncdu vs gdu vs dust

2025-11-03 23:14:51

Claude Sonnet 4.5 协助编写。

在日常的系统管理和磁盘空间清理工作中,我们经常需要分析磁盘使用情况。本文将对比四个常用的磁盘使用分析工具:传统的 du、经典的交互式工具 ncdu、现代化的 gdudust

工具简介

du (Disk Usage)

du 是 Unix/Linux 系统自带的经典磁盘使用分析工具,已经存在了几十年。它是最基础、最通用的选择。

ncdu (NCurses Disk Usage)

ncdu 是基于 ncurses 库的磁盘使用分析工具,提供了简洁的交互式文本界面。它是最早流行的交互式磁盘分析工具之一。

gdu (Go Disk Usage)

gdu 是用 Go 语言编写的现代化磁盘分析工具,提供了交互式界面和更快的扫描速度。

dust (du + rust = dust)

dust 是用 Rust 编写的磁盘使用分析工具,以更直观的可视化输出为特色。

功能对比

特性 du ncdu gdu dust
交互式界面
扫描速度 中等 中等
可视化输出 基础 中等 强大 优秀
系统自带
内存占用
删除文件功能
编程语言 C C Go Rust
易用性

使用示例

du 基本用法

# 显示当前目录大小
du -sh

# 显示所有子目录大小并排序
du -h --max-depth=1 | sort -hr

# 显示最大的10个目录
du -h | sort -rh | head -10

优点:

  • 系统自带,无需安装
  • 稳定可靠,脚本友好
  • 广泛的兼容性

缺点:

  • 速度较慢
  • 输出不够直观
  • 缺少交互功能

ncdu 基本用法

# 安装
# Debian/Ubuntu
sudo apt install ncdu

# macOS
brew install ncdu

# RHEL/CentOS
sudo yum install ncdu

# 分析当前目录
ncdu

# 分析指定目录
ncdu /path/to/directory

# 扫描时排除某些目录
ncdu --exclude /path/to/exclude

# 导出结果到文件(可在其他机器上查看)
ncdu -o result.json
ncdu -f result.json  # 读取导出的文件

交互式操作:

  • ↑↓j/k: 上下移动
  • Enter: 进入目录
  • : 返回上级目录
  • d: 删除选中的文件/目录
  • g: 显示百分比/图形条
  • n: 按名称排序
  • s: 按大小排序
  • q: 退出

优点:

  • 成熟稳定,广泛使用
  • 交互式界面简洁清晰
  • 可以直接删除文件
  • 支持导出和导入扫描结果
  • 内存占用合理
  • 在大多数发行版仓库中可用

缺点:

  • 扫描速度比 gdu 慢
  • 界面相对传统,不如 gdu 美观
  • 大型目录扫描时需要等待

gdu 基本用法

# 安装
# macOS
brew install gdu

# Linux
curl -L https://github.com/dundee/gdu/releases/latest/download/gdu_linux_amd64.tgz | tar xz
sudo mv gdu /usr/local/bin/

# 分析当前目录
gdu

# 分析指定目录
gdu /path/to/directory

# 非交互模式
gdu -n /path/to/directory

优点:

  • 扫描速度极快
  • 交互式 TUI 界面,可以用键盘导航
  • 可以直接在界面中删除文件
  • 支持彩色输出
  • 可以显示进度条

缺点:

  • 需要单独安装
  • 交互模式在某些脚本场景下不适用

dust 基本用法

# 安装
# macOS
brew install dust

# Linux
cargo install du-dust

# 基本使用
dust

# 分析指定目录
dust /path/to/directory

# 显示更多层级
dust -d 3

# 只显示目录
dust -t

优点:

  • 树状图可视化输出,非常直观
  • 彩色条形图显示占用比例
  • 输出清晰易读
  • 速度较快
  • 默认排序输出

缺点:

  • 需要单独安装
  • 没有交互式界面
  • 相对 du 功能较新,可能有兼容性问题

实际使用场景推荐

选择 du 的场景

  • 在生产服务器上进行快速检查
  • 编写自动化脚本
  • 需要最大兼容性
  • 系统资源受限

选择 ncdu 的场景

  • 需要交互式浏览但服务器上没有 gdu
  • 偏好传统稳定的工具
  • 需要导出扫描结果到其他机器分析
  • 在资源受限的系统上需要交互功能
  • 系统包管理器中已有 ncdu

选择 gdu 的场景

  • 需要深入分析大型目录结构
  • 需要最快的扫描速度
  • 追求现代化的交互体验
  • 在个人工作站上使用
  • 经常处理超大目录

选择 dust 的场景

  • 需要快速浏览目录大小
  • 偏好可视化输出
  • 想要更现代化的工具体验
  • 不需要交互式操作
  • 需要快速生成报告

性能对比

在一个包含 50GB 数据、约 100,000 个文件的目录上测试:

  • du: ~8 秒
  • ncdu: ~5 秒(扫描阶段)
  • gdu: ~2 秒
  • dust: ~4 秒

注:实际性能取决于硬件配置、文件系统类型和文件数量。ncdu 的优势在于扫描后的交互浏览非常流畅。

总结

四个工具各有千秋:

  • du 是经典之选,适合脚本和生产环境
  • ncdu 是稳定可靠的交互式工具,兼具易用性和可用性
  • gdu 是性能之王,提供强大的交互功能和最快速度
  • dust 是可视化专家,输出最为直观

工具演进历史

这四个工具代表了磁盘分析工具的演进过程:

  1. du (1970s): 命令行时代的基础工具
  2. ncdu (2007): 加入交互式界面,提升用户体验
  3. gdu (2020): 现代编程语言带来的性能提升
  4. dust (2018): 注重可视化和用户友好度

我的推荐

对于日常使用,我的建议是:

  1. 保留 du 用于脚本和快速检查
  2. 安装 ncdu 作为通用的交互式工具(服务器友好)
  3. 安装 gdu 用于深入的磁盘分析(个人工作站)
  4. 安装 dust 用于快速浏览和可视化

如果只能选一个额外工具:

  • 服务器环境: 选 ncdu(稳定、轻量、可靠)
  • 个人电脑: 选 gdu(快速、现代、强大)
  • 快速查看: 选 dust(直观、美观、高效)

根据具体需求选择合适的工具,甚至可以将它们组合使用,发挥各自的优势。

参考链接

2025 年黑五云主机活动汇总(含双十一)

2025-11-03 23:14:00

2025 年主机厂商黑五活动集合,持续更新。

2025 年黑色星期五为 11月28日

内容收集自 Telegram、NodeSeek、LowEndTalk 等途径,仅做信息汇集,不做购买建议。
链接默认无 aff

ChangeLog

  • 2025-11-24

    • TapHip
    • YINNET
  • 2025-11-07

    • ColoCrossing
    • ISIF
  • 2025-11-05

    • DMIT
    • YINNET
    • YXVM
    • CloudIPLC
  • 2025-11-04

    • ZgoCloud
    • DogYun
    • OVH
    • netcup
  • 2025-11-03

    • HostDare

云主机

HostDare

2025-11-03

使用优惠码 BF2025,即可享受洛杉矶 CN2 GIA - CAMD/CSSD 套餐 35% 持续折扣

探索CSSD NVMe VPS方案:https://bill.hostdare.com/store/premium-china-optimized-nvme-kvm

探索CAMD VPS套餐:https://bill.hostdare.com/store/cheap-amd-nvme-kvm-vps-la-usa


使用优惠码 BFBIRD25 即可享受 日本JSSD/NKVM 套餐 25% 持续折扣

探索JSSD NVMe VPS套餐:https://bill.hostdare.com/store/premium-japan-kvm-vps

探索NKVM NVMe VPS套餐请点击:https://bill.hostdare.com/store/cheap-nvme-kvm-vps-japan


使用优惠码 BF2025SALE 即可享受 65% 持续折扣,订阅 经济型洛杉矶 NVMe/HDD 方案

探索 NVMe SSD VPS 方案:https://bill.hostdare.com/store/los-angeles-ssd-kvm

探索AMD VPS套餐:https://bill.hostdare.com/store/cheap-amd-nvme-kvm-vps-la-usa


使用优惠码 LOYAL25 即可享受 保加利亚 NVMe SSD 套餐 25% 持续折扣

探索保加利亚 NVMe 套餐:https://bill.hostdare.com/store/bg-ssd-kvm

通过DeepL.com(免费版)翻译


优惠码 BF2025SALE 可享 65% 折扣,并获赠 免费内存及带宽升级

ASSD0
1 vCPU Core ( AMD EPYC )
10 GB NVMe SSD Storage
768 MB RAM+768 MB RAM*
500 GB + 500 GB Bandwidth/month*
200 Mbps public port
1 IPv4, /64 IPv6 Address
KVM Virtualization
$9.80/year
Order Now

ASSD1
1 vCPU Core ( AMD EPYC )
25 GB NVMe SSD Storage
1 GB RAM+1GB RAM*
1000 GB +1000 GB Bandwidth/month*
500 Mbps public port
1 IPv4, /64 IPv6 Address
KVM Virtualization
$14.70/year
Order Now

ASSD2
2 vCPU Cores ( AMD EPYC )
50 GB NVMe SSD Storage
2 GB RAM+ 2GB RAM*
2000 GB+2000GB Bandwidth/month*
500 Mbps public port
1 IPv4, /64 IPv6 Address
KVM Virtualization
$26.25/year
Order Now


优惠码 BF2025 可享 35% 折扣,并免费升级内存及带宽/端口。

CSSD0
1 vCPU Core
10 GB SSD NVMe Storage
768 MB + 768 MB RAM*
250 GB +250 GB Bandwidth/month*
100 Mbps CN2,GIA,CU,CM Network*
1 dedicated IPv4
Price: $23.39/year
Order Now

CSSD1
1 vCPU Cores
25 GB SSD NVMe Storage
1 GB + 1 GB RAM*
600 GB +600 GB Bandwidth/month*
100 Mbps CN2,GIA,CU,CM Network*
1 dedicated IPv4
Price: $33.59/year
Order Now

CSSD2
2 vCPU Cores
50 GB SSD NVMe Storage
2 GB +2 GB RAM*
1000 GB +1000 GB Bandwidth/month*
100 Mbps CN2,GIA,CU,CM Network*
1 dedicated IPv4
Price: $51.59/year
Order Now


促销条款与细则

凡订购任何ASSD/SSD/CSSD/CAMD虚拟专用服务器并选择年度付款方案,即可获赠双倍内存及带宽/端口升级。本优惠仅适用于年度或更长期限付款方案。

  • 标注项为免费升级。所有折扣优惠券仅限3期付款方案使用。

所有非托管VPS服务均包含:

全天候高效技术支持
即时部署服务
自定义反向DNS
VNC远程控制台
企业级服务器硬件技术
Virtualizor控制面板(支持启动/重启/关机/重装)
高端带宽
自有硬件及IP地址(运营自2016年)
99.9%运行时间保障
更多服务!

数据中心测试IP及下载文件: Test File

netcup

2025-11-04

限时抢购提醒 ⚡

纽伦堡地区限时特惠:RS 1000 G12 Pro 套餐,SSD 容量翻倍,最低仅需签约3个月!

🔥 抓紧时间——优惠仅限今日(2025-11-04)下午5点前有效!

👉  https://sohub.io/js3x

OVH

2025-11-04

🛍 OVH KS-LE sale is now live on the website:

https://eco.ovhcloud.com/en/

🖥️ OVH 服务器查询: https://kele.ge/ovh.html

2025-11-19

OVH黑五页面正式上线
https://www.ovhcloud.com/en-ie/black-friday/

美区OVH促销上线
https://us.ovhcloud.com/deals/

狗云 | DogYun

2025-11-04

双11 · 促销活动

活动一:
折扣码“11.11”:新开弹性云7折;新开经典云(特价机除外)8折。
折扣码“jian100”:新开物理服务器优惠100元。

活动二:
11月5日-11月11日,单笔充值每满11元送1元。

活动三:
11月5日-11月11日,幸运大转盘每日抽取5折码,流量,余额等奖品。

活动四:
两款物理服务器预售,11月4日开始逐步交付
预售地址:https://ds.dogyun.com/server/preorder

ZgoCloud

2025-11-04

ZgoCloud 2025双十一活动

一:洛杉矶非优化线路,解锁还行

1C / 1G / 20G SSD / 2T月流量 / 15刀年付
https://clients.zgovps.com/?cmd=cart&action=add&id=93

二:洛杉矶国内优化线路,9929 + CMIN2线路

1C / 768MB / 15G SSD / 600G月流量 / 30刀年付
https://clients.zgovps.com/?cmd=cart&action=add&id=39

支持3天内流量不超过10G,全额退款(套餐一不支持以网络原因退款)

DMIT

2025-11-05

DMIT促销款补货

联通移动的建议上DMIT.LAX.EB ,电信上DMIT.LAX.Pro

DMIT.LAX.Pro 马里布 补货
MALIBU 1TB@1Gbps=49.9USD/yr
https://www.dmit.io/aff.php?pid=186
三网 CTG GIA(aka CN2 GIA) 回程
电信 CTG GIA 去程
联通 CUG VIP(aka 9929) 去程
移动 CMIN2 去程
另IPv6双程三网优化已是最佳路由

DMIT.LAX.EB WEE 补货
WEE 1TB@1Gbps=39.9USD/yr
https://www.dmit.io/aff.php?pid=188
联通 CUG VIP(Aka 9929) 去程 / 回程
电信 CN2 GIA 去程 CUG VIP 回程
移动 CMIN2 去程 / 回程
另IPv6双程三网优化已是最佳路由

YINNET

2025-11-05

📢 YINNET 限時優惠|六折促銷代碼限量 300 個

尊敬的用戶您好,

為回饋新老客戶的支持,YINNET 現推出限時促銷活動:

✅ 全場 VPS 產品 6 折優惠
✅ 限量 300 組優惠代碼:E7F1RHKT1I
✅ 每位用戶、每張訂單限使用一次
✅ 售完即止,先用先得

👉 登入官網立即使用:
https://www.yin-net.com/aff.php?aff=27&gocar=true
若您近期有伺服器、跨境應用部署、遊戲伺服器、跨國網站、加速業務等場景需求,這將是最划算的入手機會。

如有產品選型或技術疑問,歡迎隨時聯繫我們的客服團隊,我們將竭誠協助。

感謝您一直以來的信任與支持!
YINNET 團隊

YXVM

2025-11-05

🎉 YXVM · 双十一活动预热 🎉
🚀 新品上架 · 超值独立服务器 即刻开售!

双十一即将到来啦!YXVM 为您带来 性价比爆表的日本独立服务器新品
更稳网络、更便宜价格,一站满足建站、中转、数据库等多种需求!
采用超微 MS5039 ,所有服务器均支持 IPMI


✅ 新品亮点

  • CPU:E3-1230v6
  • RAM: DDR4 UDIMM ECC 16G
  • 存储:250G SSD
  • 带宽:1Gbps 独享
  • 流量:无限制(公平使用)
  • IP:/29 IPv4 段(5个可用IP)
  • 测试IP:142.248.148.2
  • 价格:月付 $59 USD / 年付 $499 USD

👉 立即订购
👉

开通日期 11.11
请注意这款产品有14个C段,IP地址为随机分配/29,您拿到的机器与测试IP可能不在一个C段。
我们不支持更换指定地址请求。

CloudIPLC

2025-11-05

✨【CloudIPLC-双11秒杀】

香港CMI-Mini(三网回国优化),限时双倍升级+限时折扣!
限时折扣:仅需299元/年!

限时升级:
vCPU:1H->2H
内存:1GB->2GB
存储:10G->20G SSD
流量:300G->600G
带宽:30M->60M
活动时间:即日起-11/11

👉抢购链接(每ID限购1个):
https://www.cloudiplc.com/cart.php?a=add&pid=157

请注意!此款是个人轻量使用,流量固定,不可变更!


2025-11-07

【CloudIPLC 双11+9周年庆】

🔥 沪日IPLC-NAT秒杀款,限时返场!

返场时间:11/7-11/9 【数量有限,售完截止】
配置:1vCPU/512M/5G-SSD/50M峰值带宽
流量&价格(下单后流量不可变更):
200G方案:779/半年,1299/整年
1000G方案:4559/半年,7599/整年

👉🏻 抢购链接:
https://www.cloudiplc.com/aff.php?pid=125

🌍 线路说明:
上海入口采用更优秀的BGP多线,确保不同运营商的低延时快速访问。东京出口为NTT+BBIX
⚠️ 由于涉及内地入口,务必合法合规。严谨高风险应用例如XUI面板,因此不建议新手购买

ISIF

2025-11-07

🌟 JP.TYO-Cs.1C0G-CM
1 vCPU (EPYC) · 512MB RAM · 20GB SSD
📶 300Mbps · 流量 1000GB(大陆优化)
🌐 IPv4 ×1(大陆优化)
🌐 IPv6 /56(国际)
💰 双十一特惠:年付 €48.00 🎁

🌟 JP.TYO-Cs.1C1G-CM
1 vCPU (EPYC) · 1GB RAM · 40GB SSD
📶 1000Mbps · 流量 2000GB(大陆优化)
🌐 IPv4 ×1(大陆优化)
🌐 IPv6 /56(国际)
💰 双十一特惠:年付 €84.00 🎁

🌟 HK.HKG-Cs.1C0G-CM
1 vCPU (EPYC) · 512MB RAM · 20GB SSD
📶 300Mbps · 流量 1000GB(大陆优化)
🌐 IPv4 ×1(大陆优化)
🌐 IPv6 /56(国际)
💰 双十一特惠:年付 €48.00 🎁

🌟 HK.HKG-Cs.1C1G-CM
1 vCPU (EPYC) · 1GB RAM · 40GB SSD
📶 1000Mbps · 流量 2000GB(大陆优化)
🌐 IPv4 ×1(大陆优化)
🌐 IPv6 /56(国际)
💰 双十一特惠:年付 €84.00 🎁

Test IP:
日本 46.3.43.1
香港 46.3.39.1

🔗 立即订购 👉 https://cloud.isif.net/order/ecs - Special Products
也有常规月付款可供选购

ColoCrossing

2025-11-07

11.11 VPS offers, now available in multiple locations - New York, Los Angeles, Dallas, Chicago, Toronto

1GB KVM VPS
1GB RAM
1vCPU
30GB SSD
40TB @ 1Gbps 
1 x IPv4
$11.11/yr
https://cloud.colocrossing.com/aff.php?pid=112

2GB KVM VPS
2GB RAM
2vCPU
40GB SSD
40TB @ 1Gbps 
1 x IPv4
$16.16/yr
https://cloud.colocrossing.com/aff.php?pid=114

4GB KVM VPS
4GB RAM
3vCPU
60GB SSD
40TB @ 1Gbps 
1 x IPv4
$22.22/yr
https://cloud.colocrossing.com/aff.php?pid=126

8GB KVM VPS
8GB RAM
4vCPU
80GB SSD
40TB @ 1Gbps 
1 x IPv4
$44.44/yr
https://cloud.colocrossing.com/aff.php?pid=116
2025-11-18

https://www.colocrossing.com/black-friday

Refs: https://lowendtalk.com/discussion/211721/colocrossings-black-friday-sale-vps-from-1-97-mo-dedicated-servers-from-147-96-yr-more

RackNerd

2025-11-18

2025黑色星期五VPS促销套餐来喽!


========
1GB 套餐
========
1 GB 内存
1 CPU 核心
25 GB SSD 存储
2000 GB 月流量
1 Gbps 带宽
1个 IPv4 地址
$10.60 /年 (续费同价)
可选机房: 多机房可选
购买链接: https://my.racknerd.com/cart.php?a=add&pid=923

========
2.5GB 套餐
========
2.5 GB 内存
2 CPU 核心
45 GB SSD 存储
3000 GB 月流量
1 Gbps 带宽
1个 IPv4 地址
$18.66 /年 (续费同价)
可选机房: 多机房可选
购买链接: https://my.racknerd.com/cart.php?a=add&pid=924

========
4GB 套餐
========
4 GB 内存
3 CPU 核心
65 GB SSD 存储
6500 GB 月流量
1 Gbps 带宽
1个 IPv4 地址
$29.98 /年 (续费同价)
可选机房: 多机房可选
购买链接: https://my.racknerd.com/cart.php?a=add&pid=925

========
6GB 套餐
========
6 GB 内存
5 CPU 核心
100 GB SSD 存储
10,000 GB 月流量
1 Gbps 带宽
1个 IPv4 地址
$44.98 /年 (续费同价)
可选机房: 多机房可选
购买链接: https://my.racknerd.com/cart.php?a=add&pid=926

========
8GB 套餐
========
8 GB 内存
6 CPU 核心
150 GB SSD 存储
20,000 GB 月流量
1 Gbps 带宽
1个 IPv4 地址
$62.49 /年 (续费同价)
可选机房: 多机房可选
购买链接: https://my.racknerd.com/cart.php?a=add&pid=927

Lycheen

2025-11-20
🔥🔥 Lycheen 荔枝云 | 黑五促销

全年最低价,提供多地区 DNS 解锁,可随时订购流量包。

黑五特价产品
🇭🇰 HKv2 Lite Nano (移动快乐机):
1C / 512M / 5G / 768G流量 
价格:¥7.50/月 
🛒 [购买链接] (https://www.lycheen.com/store/2025-black-friday/hkv2-lite-nano-bf25)

🇺🇸 US-SLC Lite Tall (超级性价比):
1C / 1G / 10G / 2T流量 
价格:🔥 ¥88/年 
🛒 [购买链接] (https://www.lycheen.com/store/2025-black-friday/us-slc-lite-v1-1g-bf25) 

🇺🇸 US-SLC Lite Grand (美国大流量):
1C / 2G / 15G / 4T流量 
价格:¥13.90/月 
🛒 [购买链接] (https://www.lycheen.com/store/2025-black-friday/us-slc-lite-v1-grand-bf25)

🇪🇺 欧洲精品 DE/UK (中国优化,限量促销):
1C / 512M / 5G / 300G流量 
价格:¥10.00/月 
🇩🇪 德国 BGP [购买链接] (https://www.lycheen.com/store/2025-black-friday/de-fra-bgp-pro-mini-bf25)
🇬🇧 英国 BGP [购买链接] (https://www.lycheen.com/store/2025-black-friday/uk-lon-bgp-pro-mini-bf25)

---

📂 活动主会场:
https://www.lycheen.com/store/2025-black-friday/

🏷 全场折扣:
常规产品(不含促销/VDS/WARP)循环 7 折
优惠码: BF2025_30OFF
官网:  https://www.lycheen.com/store/

活动时间:即日起 到11月29日
支持加购 IP、建立 BGP Session、BYOIP/ASN 广播。
如有需求请提交工单咨询。

TakeHost

https://takehost.biz/manage/order/yearly-vps/1gb-yearly

✓ 1x CPU
✓ AMD EPYC 7763
✓ 1 GB RAM
✓ 50 GB NVMe SSD storage
✓ 50GBPS Port

7.90 euro a year
35 in stock

CrownCloud

CrownCloud 荷兰/德国 EPYC主机优惠,老牌商家

Plan1:
- 2v CPU(EPYC 7763)
- 6G RAM
- 60G SSD
- 3TB/10Gbps
- 1x Snapshot Slot
$5/月,$50/年
荷兰 (https://crowncloud.net/clients/index.php?rp=/store/specials/ams-6g-60g-epyc-10g-1s) / 德国 (https://crowncloud.net/clients/index.php?rp=/store/specials/fra-6g-60g-epyc-10g-1s)

Plan2:
- 4v CPU(EPYC 7763)
- 8G RAM
- 80G SSD
- 4TB/10Gbps
- 1x Snapshot Slot
$7/月,$70/年
荷兰 (https://crowncloud.net/clients/index.php?rp=/store/specials/ams-8g-80g-epyc-10g-1s) / 德国 (https://crowncloud.net/clients/index.php?rp=/store/specials/fra-8g-80g-epyc-10g-1s)

· 支持Windows(需自备许可证)
· 25端口可通过工单申请
· 可开启CPU直通,可切换VirtIO和e1000网卡
· rDNS支持
· 免费自定义ISO

测试IP:
德国:Test IPv4: 195.88.191.1 / Test IPv6: 2a0a:51c0:0:1f:291d::1
荷兰:Test IPv4: 2.58.15.20 / Test IPv6: 2a07:efc0:1001:1265::1 / Test File: https://nl2.lg.crowncloud.net/1gb.file

YINNET

2025-11-23
📢 YINNET 黑色星期五限時活動|全場 VPS 五折狂歡

尊敬的用戶您好,

為迎接黑色星期五購物季,回饋廣大用戶對 YINNET 的長期支持,我們特別推出年度重磅優惠活動:

✅ 全場 VPS 產品 5 折優惠
✅ 黑五專屬促銷代碼:BF50YINNET
✅ 每位用戶、每張訂單限使用一次
✅ 活動限時開放,售完即止,先到先得

⏰ 活動時間:即日起至黑色星期五當晚 24:00 截止

👉 登入官網於結算頁輸入優惠代碼即可享受五折優惠。

如您對產品選型、配置需求或部署方案有任何疑問,歡迎隨時聯繫客服團隊,我們將為您提供專業協助。

感謝您一直以來的支持與信任,
祝您黑五購物愉快!

YINNET 團隊 敬上

官網:https://www.yin-net.com/

TapHip

2025-11-23
黑五促销上线!HiNet 台湾家宽限时特价

📌 NAT 机型(¥99/年)
CPU:2
RAM:512MB
SSD:5GB
网络端口:300Mbps
月流量:512GB
IPv4 NAT & IPv6 × 1

📌 独享 IP(¥188/月)
CPU:4
RAM:2048MB
SSD:15GB
网络端口:500Mbps
月流量:10240GB
IPv4 × 1 + IPv6 × 1
🛒 下单地址:https://taphip.com/aff.php?gid=7

✨ 24H自动切换IP

App

Parallels

Parallels® Desktop for Mac 标准版和 Pro 版一年订阅官方打 5 折:

https://www.parallels.com/products/desktop/

Refs: https://www.appinn.com/parallels-desktop-26/

GoodSync

黑色星期五/网络星期一 促销 新的GoodSync高级订阅可享40%优惠截至12月1日。

https://www.goodsync.com/php/pums/rfprepay.php?lang=cn

UptimeRobot

UptimeRobot 黑五7折优惠
https://app.uptimerobot.com/billing/pricing/?coupon=BF25_30

Refs

彻底解决阿里云和 tailscale 冲突

2025-10-27 23:20:01

如果你在一台阿里云服务器安装并启动了 tailscale,大概率会出现阿里云服务器无法上网的问题,根本原因为阿里云服务器默认DNS与tailscale网段产生冲突。

由于阿里云和 tailscale 都使用了 100.64.0.0/10 这个网段。100.64.0.0/10RFC 6598 中被保留为 运营商级 NAT (Carrier-Grade NAT) 地址段,用于 ISP 做 NAT 时避免与内网冲突。Tailscale 把它当成“只允许来自 Tailscale 接口的地址段”是符合规范的。但阿里云在 VPC 内把 100.100.2.136100.100.2.138 作为内网 DNS 服务地址,初衷是: 地址在公网不可路由,避免外泄; 与经典网络互通时不会冲突。

由于动机不同,目标不同,造成二者冲突。

目前比较流行的方法,是关闭 tailscale 的 iptables 规则生成,但这是不安全的。浏览各种解决方案后我认为脚本轮询的方案最可靠。

脚本轮训解决

/usr/local/bin/fix-ts-dns.sh

#!/bin/bash
while true; do
  if ! iptables -C ts-input -s 100.100.2.136/32 -j ACCEPT 2>/dev/null; then
    iptables -I ts-input 1 -s 100.100.2.136/32 -j ACCEPT
  fi
  sleep 30
done

/etc/systemd/system/fix-ts-dns.service

[Unit]
Description=Keep Aliyun DNS whitelist in Tailscale chain
After=tailscaled.service

[Service]
Type=simple
ExecStart=/usr/local/bin/fix-ts-dns.sh
Restart=always

[Install]
WantedBy=multi-user.target
chmod +x /usr/local/bin/fix-ts-dns.sh
systemctl enable --now fix-ts-dns.service

脚本轮询,检查到存在 tailscale 的规则表且不存在白名单时,自动插入一条放通阿里云网段的规则。

解决方案来源:https://www.xugj520.cn/archives/aliyun-cgnat-tailscale-conflict.html

Refs

2025-10-21 | 沉淀思维

2025-10-21 22:08:25

焦虑的时候,还是要看书。

一章一章的读下去,让自己的思维从那些焦虑的事情上短暂移开,看到更大的世界。

焦虑是告诉人们处于不安全状态的信号,且焦虑的原因很有可能源自过去的事,低概率的事,未知的事情。弄清楚这一点,这只是传递信号,需要思考的,是更通透的看待这个世界,更深刻的思考面临的问题,更清晰的审视当前的处境。想清楚,看清楚,思考的足够深,足够远,就不会在意当下这一点小麻烦,焦虑可能就随之而去。

Reading - Unsplash

试着站在更高维度去思考和做事。多看书,多总结。

macOS 单独为鼠标或触控板开启自然滚动

2025-10-19 00:31:21

macOS 系统配置“自然滚动”,虽然鼠标和触控板都可以配置,但是两个控制是同步的,更改任意一个另一个都会跟着动。

一直是这样,也没有要更改的意思。

使用 LinearMouse 这个软件可以实现单独为触控板开启自然滚动,鼠标不开启自然滚动。

对于我来说,操作自然多了。简单记录一下。

Refs