Prometheus监控Tomcat需要用到的war包和jar包
需要的软件包如下所示:
链接:https://pan.baidu.com/s/1xQlfz1ViwRy8bkKy4ZE5hg
提取码:kp0l
在k8s的master节点制作一个tomcat镜像
(1)制作tomcat镜像,按如下步骤
mkdir /root/tomcat_image
把上面的war包和jar包传到这个目录下
cat Dockerfile
FROM tomcat
ADD metrics.war /usr/local/tomcat/webapps/
ADD simpleclient-0.8.0.jar /usr/local/tomcat/lib/
ADD simpleclient_common-0.8.0.jar /usr/local/tomcat/lib/
ADD simpleclient_hotspot-0.8.0.jar /usr/local/tomcat/lib/
ADD simpleclient_servlet-0.8.0.jar /usr/local/tomcat/lib/
ADD tomcat_exporter_client-0.0.12.jar /usr/local/tomcat/lib/
docker build -t='xianchao/tomcat_prometheus:v1' .
docker login
username:xianchao
password:1989317**
docker push xianchao/tomcat_prometheus:v1
#上传镜像到hub仓库
docker pull xianchao/tomcat_prometheus:v1
#在k8s的node节点拉取镜像
(2)基于上面的镜像创建一个tomcat实例
cat deploy.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: tomcat-deployment
namespace: default
spec:
selector:
matchLabels:
app: tomcat
replicas: 2 # tells deployment to run 2 pods matching the template
template: # create pods using pod definition in this template
metadata:
labels:
app: tomcat
annotations:
prometheus.io/scrape: 'true'
spec:
containers:
- name: tomcat
image: xianchao/tomcat_prometheus:v1
ports:
- containerPort: 8080
securityContext:
privileged: true
通过kubectl apply更新yaml文件
kubectl apply -f deploy.yaml
(3)创建一个service,可操作也可不操作
cat tomcat-service.yaml
kind: Service #service 类型
apiVersion: v1
metadata:
# annotations:
# prometheus.io/scrape: 'true'
name: tomcat-service
spec:
selector:
app: tomcat
ports:
- nodePort: 31360
port: 80
protocol: TCP
targetPort: 8080
type: NodePort
通过kubectl apply更新yaml文件
kubectl apply -f tomcat-service.yaml
为了大家更快速的学习知识,掌握技术,随时沟通交流问题,特组建了技术交流群,大家在群里可以分享自己的技术栈,抛出日常问题,群里会有很多大佬及时解答,这样我们就会结识很多志同道合的人,长按下图可加我微信,备注运维或者k8s或者devops即可进群,让我们共同努力,向着美好的未来出发吧~~~,想要免费获取各个版本的k8s高可用集群的安装视频或者其他的免费视频,也可进群获取哈~~
扫码加群????
微信:luckylucky421302
长按指纹关注公众号????
往期精彩文章
kubernetes全栈技术+企业案例演示【带你快速掌握和使用k8s】
kubernetes面试题汇总
DevOps视频和资料免费领取
kubernetes技术分享-可用于企业内部培训
谈谈我的IT发展之路
kubernetes系列文章第一篇-k8s基本介绍
kubernetes系列文章第二篇-kubectl
了解pod和pod的生命周期-这一篇文章就够了
kubernetes集群中部署EFK日志管理系统
Kubernetes中部署MySQL高可用集群
Prometheus+Grafana+Alertmanager搭建全方位的监控告警系统-超详细文档
k8s1.18多master节点高可用集群安装-超详细中文官方文档
Kubernetes Pod健康检查-livenessProbe和readinessProbe
kubernetes pod生命周期管理-postStart和preStop
k8s中蓝绿部署、金丝雀发布、滚动更新汇总
运维常见问题汇总-tomcat篇
运维常见问题汇总-tomcat部署java项目大量close_wait解决方案
关于linux内核参数的调优,你需要知道
kubernetes持久化存储volume
kubernetes挂载ceph rbd和cephfs
报警神器Alertmanager发送报警到多个渠道
jenkins+kubernetes+harbor+gitlab构建企业级devops平台
点击在看少个 bug????