听云 java 探针_kubernetes听云实战发布版

本文详述了在Kubernetes(k8s)环境中使用听云Java探针的实践过程,包括系统架构、Docker镜像的构建、Jenkins自动化构建应用镜像、配置configmap、设置Deployment、Service以及Ingress。通过这个教程,读者可以了解到如何在Kubernetes集群中高效监控Java应用。
摘要由CSDN通过智能技术生成

听云线上使用k8s已经有一段时间了,下面对一些听云使用过程中的问题进行一些梳理,包括架构设计,安装部署和后期维护。 目录结构如下:

53c763751fafdc6ab3c93933145b5b2d.png

下面进入正题:

我们以听云系统的一个报表系统为例来详细进行说明:

1.系统架构

该应用属于Java Web报表类应用,部署在Ucloud云上。系统架构如下:

a1d7a4c758f57d7b69ed3d5172cc31eb.png

这是典型web应用的系统架构,在听云内部大部分应用都是此形式,对于并发量不高的业务均可参考此文档。

基本规范:

1.configmap用来管理配置文件

2.deployment用来编排应用,进行升级回滚等

3.pv用于共享存储,后端为glustefsr和nfs

4.daemonset 用于变更不频繁,一台机器一个docker的应用

5.nginx+ingress来做前端负载均衡和自动发现

6.对并发要求很高的应用可以尝试用host模式,不用service做负载均衡

2.部署说明

参考架构图,我们需要nginx-ingress-controller 和 应用的Docker。下面分别进行详细说明。

2.1 准备基础Docker镜像

听云先进行应用的部署,规范是每个项目一个Docker镜像,版本号为jenkins构建的版本号。

为了规范日后上线。我们需要按层次构建镜像,方便日后使用。

构建基础镜像

由于听云的项目中绝大大部分为Java项目,为了精简Docke镜像大小,基础镜像我们没有采用Centos或者Ubuntu,而是采用了alpine,该镜像只有4MB。

Dockerfile内容如下:

FROM registry.tingyun.com/docker.io/alpine

MAINTAINER netop "netop@tingyun.com"

ENV REFRESHED_AT 2016-03-18

RUN apk add --no-cache --update-cache bash

ENV GLIBC_PKG_VERSION=2.23-r1

RUN apk add --no-cache --update-cache curl ca-certificates bash && \

curl -Lo /etc/apk/keys/andyshinn.rsa.pub "https://github.com/andyshinn/alpine-pkg-glibc/releases/download/${GLIBC_PKG_VERSION}/andyshinn.rsa.pub" && \

curl -Lo glibc-${GLIBC_PKG_VERSION}.apk "https://github.com/andyshinn/alpine-pkg-glibc/releases/download/${GLIBC_PKG_VERSION}/glibc-${GLIBC_PKG_VERSION}.apk" && \

curl -Lo glibc-bin-${GLIBC_PKG_VERSION}.apk "https://github.com/andyshinn/alpine-pkg-glibc/releases/download/${GLIBC_PKG_VERSION}/glibc-bin-${GLIBC_PKG_VERSION}.apk" && \

curl -Lo glibc-i18n-${GLIBC_PKG_VERSION}.apk "https://github.com/andyshinn/alpine-pkg-glibc/releases/download/${GLIBC_PKG_VERSION}/glibc-i18n-${GLIBC_PKG_VERSION}.apk" && \

apk add glibc-${GLIBC_PKG_VERSION}.apk glibc-bin-${GLIBC_PKG_VERSION}.apk glibc-i18n-${GLIBC_PKG_VERSION}.apk

add Shanghai /etc/localtime

ENV LANG en_US.UTF-8

构建镜像

docker build -t registry.tingyun.com/common/alpine .

push 到仓库中

docker push registry.tingyun.com/common/alpine

构建JDK镜像

Dockerfile内容如下:

FROM registry.tingyun.com/common/alpine

MAINTAINER netop "netop@tingyun.com"

ENV REFRESHED_AT 2016-03-14

ADD  jdk1.7.0_45.tar.gz /opt

ENV LANG en_US.UTF-8

ENV JAVA

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值