Docker学习工作总结 - 生产场景
前言
很久之前对Docker进行了简单的了解,在后续的工作中,公司也用到了Docker,本篇文章主要记录在生产实际使用中遇到的一些问题和解决方案
生产场景-问题列表
coreDns解析阿里云REDIS/hbase服务的域名时,总是出现解析超时或者会把redis/hbase的整体域名作为一个服务名
错误日志:


原因
是因为COREDNS在解析域名的时候比较复杂,网络抖动,可能会偶发超时问题, 下面是COREDNS解析日志如下
解析过程会尝试作为k8sservice处理
解决方案:
- 在域名后面增加
.作为全限定域名,这样coredns在解析的时候,就不会把这个当做k8s service处理了 ,不会去组合各种解析场景,最后才作为域名去解析,这样可以提高coredns解析的效率, 解析效率高了,出现问题的机率会减小 但是对于网络抖动超时,无能为力 - 咨询过阿里云,建议安装localDNS, 需要重启pod
避免两个非常重要的应用出现在同一个节点上
可以调整pod的亲和力配置
最佳实践
- K8S节点配置推荐 cpu核数:内存 =1:4, 生产推荐 8C32G
- pipeline
- 阿里云环境使用容器服务,节点池节点,最佳实践,CPU与内存配置比例是1:8
[1]: http://pic.albk.tech/docker-1-0.png