开发 Tips(17)

2023年 1月 4日 59.5k 0

主要记录最近遇到的一些开发问题,解决方法。

1. 重启 Kubernetes 中的 Job 任务

1
kubectl -n {NAMESPACE} get job {JOB_NAME} -o json | jq 'del(.spec.selector)' | jq 'del(.spec.template.metadata.labels)' | kubectl replace --force -f -

如果提示没有找到 jq 命令,需要先按照 jq ,yum install -y jq

2. DNS 的 SPF 记录

在发送邮件时,由于发件人可以任意指定,收件人无法验证发件人是否真实。SPF 就是为了解决伪造发件人问题。例如,收件方收到来自主机 IP 10.10.10.10 的邮件,声称发件人为 [email protected]。为了验证发件人信息,收件方会去查询 SPF 记录,是否允许 IP 10.10.10.10 的主机发送邮件。如果不允许,则退信或当作垃圾邮件。相关原理和配置可以参考文档,SPF 记录:原理、语法及配置方法简介。

3. 在 Docker 中运行 Java 项目问题

JVM 不知道运行在容器中,误将物理资源当做容器的可用资源,Java 10 才解决这个问题,其他版本处理办法:

  • java5/6/7/8u131-,添加启动参数
-Xmx`cat /sys/fs/cgroup/memory/memory.limit_in_bytes`
  • java8u131+和java9+,添加启动参数
1
-XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap

参考链接:容器(docker)中运行java需关注的几个小问题

4. kubebuilder 安装脚本

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
export version=2.3.0
export os=$(go env GOOS)
export arch=$(go env GOARCH)

curl -L -O "https://github.com/kubernetes-sigs/kubebuilder/releases/download/v${version}/kubebuilder_${version}_${os}_${arch}.tar.gz"

tar -zxvf kubebuilder_${version}_${os}_${arch}.tar.gz
mv kubebuilder_${version}_${os}_${arch} /usr/local/kubebuilder

export PATH=$PATH:/usr/local/kubebuilder/bin

相关文章

KubeSphere 部署向量数据库 Milvus 实战指南
探索 Kubernetes 持久化存储之 Longhorn 初窥门径
征服 Docker 镜像访问限制!KubeSphere v3.4.1 成功部署全攻略
那些年在 Terraform 上吃到的糖和踩过的坑
无需 Kubernetes 测试 Kubernetes 网络实现
Kubernetes v1.31 中的移除和主要变更

发布评论