阿里云容器服务DaemonSet实践

DaemonSet 保证在每个 Node 上都运行一个容器副本,常用来部署一些集群的日志、监控或者其他系统管理应用。下面以日志收集 fluentd 为例,看下如何使用阿里云容器服务控制台创建DaemonSet。

准备Kubernetes环境

在阿里云容器服务控制台中创建Kubernetes 集群(1.11.5),3 master,3 worker

安装fluentd

1、选择应用->守护进程集->使用镜像创建


填写应用名称,选择部署集群、命名空间,进入下一步

2、选择镜像并进行相应配置




注意:这里挂载了配置项fluentd-conf,用来覆盖镜像中的默认配置,需要提前创建出来,内容如下:

apiVersion: v1
kind: ConfigMap
metadata:name: fluentd-confnamespace: kube-system
data:td-agent.conf: |<match fluent.**>type null</match><source>type tailpath /var/log/containers/*.logpos_file /var/log/es-containers.log.postime_format %Y-%m-%dT%H:%M:%S.%NZtag kubernetes.*format jsonread_from_head true</source><filter kubernetes.**>type kubernetes_metadataverify_ssl false</filter>

否则会遇到pod 启动问题

[error]: config error file="/etc/td-agent/td-agent.conf" error="Invalid Kubernetes API v1 endpoint https://172.21.0.1:443/api: SSL_connect returned=1 errno=0 state=error: certificate verify failed"

3、设置更新策略

可以在高级配置中选择升级方式:

  • 滚动升级(RollingUpdate):更新 DaemonSet 模版后,自动删除旧的 Pod 并创建新的 Pod
  • 替换升级(OnDelete):更新模板后,只有手动删除了旧的 Pod 后才会创建新的 Pod

4、指定节点调度

只选择worker节点安装。设置节点亲和性如图。

5、创建完成

点击创建,可以看到创建成功。

6、问题排查与更新

按着上述步骤可以看到在3个worker节点分别起了对应的pod,但pod并没有成功启动。选择其中的一个容器,查看一下日志发现如下错误:

config error file="/etc/td-agent/td-agent.conf" error="Exception encountered fetching metadata from Kubernetes API endpoint: pods is forbidden: User cannot list pods at the cluster scope"

Google后发现需要设置ClusterRole

apiVersion: v1
kind: ServiceAccount
metadata:name: fluent-accountnamespace: kube-system
---
apiVersion: rbac.authorization.k8s.io/v1beta1
kind: ClusterRoleBinding
metadata:name: fluent-account
roleRef:kind: ClusterRolename: viewapiGroup: rbac.authorization.k8s.io
subjects:- kind: ServiceAccountname: fluent-accountnamespace: kube-system

创建成功后更新fluent-es 的yaml,编辑yaml,提交更新。

Pod启动成功,日志已经可以正常采集了。


原文链接
本文为云栖社区原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/520079.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

GIF动画解析RNN,LSTM,GRU

循环神经网络是一类常用在序列数据上的人工神经网络。三种最常见的循环神经网络分别是&#xff1a; 1.维尼拉循环神经网络&#xff08;vanilla RNN&#xff09; 2.长短期记忆网络&#xff08;LSTM&#xff09;&#xff0c;由Hochreiter和Schmidhuber于1997年提出 3.门控循环…

oracle检查外键依赖,Oracle中检查外键是否有索引的SQL脚本分享

COLUMN COLUMNS format a30 word_wrappedCOLUMN tablename format a15 word_wrappedCOLUMN constraint_name format a15 word_wrappedSELECT TABLE_NAME,CONSTRAINT_NAME,CNAME1 || NVL2(CNAME2, ‘,‘ || CNAME2, NULL) ||NVL2(CNAME3, ‘,‘ || CNAME3, NULL) ||NVL2(CNAME4,…

2018最有用的六个机器学习项目

2018年又是人工智能和机器学习快速发展的一年。许多新的机器学习的项目正在以非常高的影响力影响着诸多领域&#xff0c;特别是医疗保健、金融、语音识别、增强现实和更复杂3D视频渲染。 这一年&#xff0c;我们看到了更多的应用驱动研究&#xff0c;而不是理论研究。虽然这可…

雅士利牵手阿里云实现新零售改造,双11全渠道成交金额同比增长超过200%

12月3日在阿里云峰会广州站上&#xff0c;雅士利分享了与阿里云的合作&#xff0c;借助数据中台实现新零售改造。在刚刚结束的天猫双11中&#xff0c;雅士利旗舰店整体线上交易同比增长超3倍&#xff0c;旗下羊奶粉品牌“朵拉小羊”50秒成交额超越618全天成交总额&#xff0c;朵…

安装Vuecli新版本正常,但是显示版本是低版本

安装最新版Vuecli: npm install -g vue/cli查看版本 vue --version如果出现bash: vue: command not found 请参考&#xff1a;https://blog.csdn.net/weixin_40816738/article/details/106151054 如果版本显示是低版本的 找到本地仓库&#xff0c;进入到这个目录下面执行命令…

到底什么成就了今天的人工智能?(上)

维基百科对智能有如下定义&#xff1a; 智能是一种能够感知或推断信息&#xff0c;并将其作为知识留存下来&#xff0c;自适应地用于某种环境或上下文的能力。 人工智能&#xff08;Artificial Intelligence&#xff09; 虽然我们很难对人工智能做一个确切的解释&#xff0c;但…

平板电脑可以开发php吗,PHP代码判断设备是手机还是平板电脑(两种方法)

现在移动互联网越来越发达&#xff0c;很多的网站都普及了手机端浏览&#xff0c;为了更好的让网页在手机端显示&#xff0c;我们都选择了使用CSS媒体查询制作响应式模版&#xff0c;但这也有弊端&#xff0c;例如某些网站的结构是CMS类型的&#xff0c;太多的内容要显示&#…

华为美国研发中心将迁至加拿大;高通CEO否认中国5G超美国:技术上还没有,顶多算并驾齐驱;亚马逊宣布进军量子界……...

关注并标星星CSDN云计算极客头条&#xff1a;速递、最新、绝对有料。这里有企业新动、这里有业界要闻&#xff0c;打起十二分精神&#xff0c;紧跟fashion你可以的&#xff01;每周三次&#xff0c;打卡即read更快、更全了解泛云圈精彩newsgo go go 每周三次&#xff0c;打卡即…

阿里巴巴,果然开始拥有“预测未来”的能力了

顶灯闪烁&#xff0c;笛声响彻。 救护车载着病人&#xff0c;冲向茫茫车海&#xff0c;在时间的赛道上狂奔。 高德地图、GPS 卫星导航、路面磁感线圈、1300 个路口摄像头同时开动&#xff0c;为这辆救护车勘探最快路线&#xff1b; GPS 传回实时数据&#xff0c;后台根据辅助数…

sonarqube 启动不了,异常提示:远程主机强迫关闭了一个现有的连接

启动sonarqube 6.7.1 报下面的错误&#xff1a; 2018.01.24 10:10:56 WARN app[][o.e.t.n.Netty4Transport] exception caught on transport layer [[id: 0x146de8cb, L:/127.0.0.1:57099 – R:/127.0.0.1:9001]], closing connectionjava.io.IOException: 远程主机强迫关闭了…

性能诊断利器 JProfiler 快速入门和最佳实践

背景 性能诊断是软件工程师在日常工作中需要经常面对和解决的问题&#xff0c;在用户体验至上的今天&#xff0c;解决好应用的性能问题能带来非常大的收益。Java 作为最流行的编程语言之一&#xff0c;其应用性能诊断一直受到业界广泛关注。可能造成 Java 应用出现性能问题的因…

oracle 出参类型定义,Oracle plsql出参clob类型的操作

Steps:1. DBMS_LOB.createtemporary (store_in_list, TRUE); --获取lob locator2. DBMS_LOB.OPEN(store_in_list, DBMS_LOB.LOB_READWRITE);--打开3. dbms_lob.writeappend(store_in_list, LENGTH(v_result), v_result);--writeappend 在后面追加4. DBMS_LOB.CLOSE(store_in_li…

Sonarqube+maven 分析代码

文章目录一、方式11. 配置2. 编译项目执行命令2.1.编译项目2.2.代码分析3. 分析结果4. 解决bug5. 项目名称二、方式2三、方式3Sonar是一个用于代码质量管理的开源平台&#xff0c;用于管理Java源代码的质量。通过插件机制&#xff0c;Sonar 可以集成不同的测试工具&#xff0c;…

刚刚!我被产品小姐姐的笔记本深深吸引了....

今天我看到产品小姐姐的一个东西&#xff0c;我惊呆了&#xff0c;因为我好像看到了黑科技&#xff0c;事情是这个样子的....由于加班写代码&#xff0c;在比较疲劳的时候&#xff0c;就站起来随意的在办公室里走走&#xff0c;放松一下自己的脑神经。走到一个产品小姐姐身边&a…

云栖专辑 | 阿里开发者们的第12个感悟:多维思考,胜过盲目苦干

2015年12月20日&#xff0c;云栖社区上线。2018年12月20日&#xff0c;云栖社区3岁。 阿里巴巴常说“晴天修屋顶”。 在我们看来&#xff0c;寒冬中&#xff0c;最值得投资的是学习&#xff0c;是增厚的知识储备。 所以社区特别制作了这个专辑——分享给开发者们20个弥足珍贵的…

php中队列控制的方法,学习猿地-php 队列的实现方法

php实现队列的方法&#xff1a;首先新建一个文件“artisan.php”&#xff1b;然后通过“php artisan”执行队列&#xff1b;最后进入redis客户端输入命令“lpush listname a b c d e f g”即可。PHP实现队列的原理(laravel)用过laravel框架的童鞋都知道其自带队列功能&#xff…

阿里开发者们的第13个感悟:工程师需要在循环迭代中成长

2015年12月20日&#xff0c;云栖社区上线。2018年12月20日&#xff0c;云栖社区3岁。 阿里巴巴常说“晴天修屋顶”。 在我们看来&#xff0c;寒冬中&#xff0c;最值得投资的是学习&#xff0c;是增厚的知识储备。 所以社区特别制作了这个专辑——分享给开发者们20个弥足珍贵的…

倒计时 1 天 | 2019 中国大数据技术大会(BDTC)报名通道即将关闭(附参会提醒)...

2019年12月5-7日&#xff0c;由中国计算机学会主办&#xff0c;CCF 大数据专家委员会承办&#xff0c;CSDN、中科天玑数据科技股份有限公司协办的中国大数据技术大会&#xff08;BDTC 2019&#xff09;将于北京长城饭店隆重举行。届时&#xff0c;超过百位顶尖技术专家将齐聚于…

Sonarqube 中文插件专栏

文章目录一、基础知识1. 插件说明2. 插件版本总览二、案例演示2.1. 插件下载2.2. 插件安装2.3. 重启 Sonarqube一、基础知识 1. 插件说明 关于下载中文插件说明&#xff0c;默认显示有2个版本&#xff0c;第一个版本是官方的最新版本&#xff0c;第2个版本不知是谁添加到仓库…

到底什么成就了今天的人工智能?(下)

人工智能 大多数个人电脑、智能手机和其他设备的硬件性能非常相似&#xff0c;由操作系统定义&#xff0c;通过下载其他软件“学习”。早期计算机的学习完全依赖于与人类的交互&#xff0c;而现在则通过互联网接收更新。 随着越来越多的数据存储到云端&#xff0c;服务器代理的…