应用日志方案
发表于|更新于
|浏览量:
| 原生方式 | DaemonSet方式 | Sidecar方式 | |
|---|---|---|---|
| 集日志类型 | 标准输出 | 标准输出 | 文件 |
| 部署运维 | 低,原生支持 | 一般,需维护DaemonSet | 较高,需要为每个容器采集日志的 |
| 日志分类存储 | 无法实现 | 可通过容器、路径映射实现 | 每个Pod可单独配置,灵活性高 |
| 支持集群规模 | 本地存储无限制,若使用syslog/fluentd会有单点限制 | 取决于配置数 | 无限制 |
| 资源占用 | 低,docker引擎提供 | 较低,每个节点运行一个容器 | 较高,每个Pod运行一个容器 |
| 查询便捷性 | 低,grep原始日志 | 较高,自定义查询、统计 | 高,根据业务特点定制 |
| 适用场景 | 测试、POC等非生产环境 | 日志分类明确的集群 | 大型、混合型集群 |
文章作者: Michael Pan
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Michael Blog!
相关推荐

2020-05-20
OpenShift中etcd集群的某个etcd服务文件损坏,导致节点故障,恢复过程
问题etcd集群中某个etcd出现故障,使用docker ps -a | grep etcd | grep -v POD查看etcd节点,发现它异常退出。 123$ docker logs -f <etcd-container-id>....etcdserver : open wal error: wal: file not found 恢复步骤大方向步骤:一、将问题etcd节点从etcd集群剥离;二、将恢复的新的etcd节点添加到etcd集群。具体步骤如下: 查看etcd状态 1234$ etcdctl2 cluster-health$ ## 获取问题节点的member ID$ etcdctl2 member remove <member ID>$ ## 将问题etcd服务从etcd集群中删除 停止问题节点上的etcd服务 12$ mkdir -p /etc/origin/node/pods-stopped$ mv /etc/origin/node/pods/* /etc/origin/node/pods-stopped/ 删除问题节点上的...
2020-05-20
Openshift-Route证书HTTPS配置
后台应用为http服务Termination Type: EdgeInsecure Traffic: Allow 后台应用为https服务Termination Type: PassthroughInsecure Traffic: None

2020-05-20
网络相关工具简单汇总
lscpi查看Mac地址和网卡带宽12[root@localhost] $ yum install pciutils -y[root@localhost] $ lspci -vvv 里面的mac地址格式:46-8d-80-6d-06-07 ip a查看Mac地址与IP12[root@localhost] $ yum install iproute[root@localhost] $ ip a 里面的mac地址格式:46:8d:80:6d:06:07 iperf 对集群进行网络流量测试启动服务端 12[root@localhost] $ yum install iperf3 -y[root@localhost] $ iperf3 -s 客户端进行测试 12[root@localhost] $ yum install iperf3 -y[root@localhost] $ iperf3 -c 10.2.2.2 -P 5 以上默认为作TCP测试,如果要UDP测试,服务端启动与客户端测试都需要加上-u 1234## 服务端iperf3 -s -u## 客户端iperf3 -c 10.2....
2020-05-20
Kubernetes工具集(持续收集------)
Kubescope cliKubescope cli 是一个可以运行在本地或 Kubernetes 中的工具,可直接从 Docker Daemon 中收集容器指标并可视化。和 cAdvisor 等其他集群指标收集服务一样, kubescope cli 收集指标的周期是 1 秒(而不是 10-15 秒)。如果周期是 10-15 秒,你可能会在测试期间错过一些引发性能瓶颈的问题。如果你使用 cAdvisor 进行测试,每次都要使用新的 Pod 作为测试对象,因为 Kubernetes 在超过资源限制时就会将 Pod 杀死,然后重新启动一个全新的 Pod。而 kubescope cli 就没有这方面的忧虑,它直接从 Docker Daemon 中收集容器指标(你可以自定义收集指标的时间间隔),并使用正则表达式来选择和过滤你想要显示的容器。 KubeMarkKubemark是K8s官方提供的一个对K8s集群进行性能测试的工具。它可以模拟出一个K8s cluster(Kubemark cluster),不受资源限制,从而能够测试的集群规模比真实集群大的多。这个cluster中master...

2020-05-20
Kubefwd——Openshift-K8S-本地开发的福音
小志:“kubefwd 本地开发的福音啊,本地环境直接连接 svc。”当小志推荐这个工具的时候,我正在 Kubecon 大会的现场,听着 Kubernetes 近一年的各种成就和各种新特性。我无法看到微信另一头小志的表情,也许平静,也许跟我现在一样激动。kubefwd,这是第一次听到这个工具,“本地环境直接连接 svc”,openshift 的 port-fowrward 命令就能做到,没什么也不起的吧。我回复道:“openshift 的 port-forward,再加个自动更新本地 hosts 文件”。小志发来了 kubefwd 请求流向图。 服务 api 与服务 auth 提供的都是 80 端口,但是它们能够同时被本地访问,这是 port-forward 无法做到的!我意识到这个工具很不简单,刚才的想法太草率了。我马上回复:“我刚才理解得不对,它可以做到一个 port 对应多个 service!”此刻的心情其实已经非常激动了,因为意识到 kubefwd 这个工具也许解决了困扰我多天的问题。 近一周一直在脑中徘徊的是徐磊老师介绍微软的 TFS 时的演示:开发人员本地修改代码...
2020-05-20
研发项目管理实践
项目的特征 唯一性、2. 存在风险、3. 临时的、4. 跨部门的团队、5. 渐渐明晰 项目的三约束(QBT)Q:质量、B:资金、T:时间 按时、在预算之内、满足性能指标、满足或超出客户的预期完成就是一个成功的项目。 优秀的项目经理在完成一个项目的过程中,让Boss、客户、团队成员都满足。 做项目时要时刻考虑到项目的目的。 项目的来源 合同驱动、2. 市场驱动、3. 变更Change 项目周期 与不同干系人的沟通干系人指的是对项目成败有利益,对项目有影响的人。 识别干系人。核心团队成员一起来识别。 分析干系人。 对不同的干系人采取不同的策略。 影响力来源 信誉、2. 互惠、3. 说服 项目进展 核心团队成员融入到项目里面,能够将项目说清楚 做计划。计划的过程很重要。做计划的过程是把核心团队消化项目的过程,也是责任转移的过程。项目经理要将项目分成模块,细节让负责部分的核心团队成员来做。 团队建设模型(Tuckman模型) 团队建设分为四个阶段:形成阶段、磨合阶段、规范阶段、贡献阶段 四个阶段中间不能跳过 保证核心成员的完整性 项目经理,二件事:管项...
