背景
php上阿里云ack(k8s)后,想保留原来定时工作,然而又须要放弃单点运行,所以思考应用阿里云SchedulerX来方便管理。
官网文档如下:
尽管官网文档显示能够用Sidecar形式接入,然而理论并非进入到指标容器执行,仅能执行http申请到指标容器。
实现
应用agent形式接入,间接打包入php镜像,毛病就是须要java运行环境,镜像会很大并且占用运行内存。倡议有定时工作需要才应用此镜像。
链接地址:https://help.aliyun.com/document_detail/149969.html
而后在Deployment配置文件上减少env
# spec > template > spec > containers - name: php-fpm env: - name: "SCHEDULERX_ENDPOINT" value: "${SCHEDULERX_ENDPOINT}" - name: "SCHEDULERX_NAMESPACE" value: "${SCHEDULERX_NAMESPACE}" - name: "SCHEDULERX_GROUPID" value: "${SCHEDULERX_GROUPID}" - name: "SCHEDULERX_APPKEY" value: "${SCHEDULERX_APPKEY}" - name: "SCHEDULERX_STARTER_MODE" value: "sidecar"
局部dockerfile
php5.6-fpm
FROM php:5.6-fpm# SchedulerX AgentRUN mkdir -p /usr/share/man/man1 \ && apt-get install -y openjdk-8-jdk wget \ && cd /opt \ && wget https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.4.2.tar.gz \ && tar -xf schedulerxAgent-1.4.2.tar.gz \ && rm schedulerxAgent-1.4.2.tar.gz \ && mkdir -p /root/logs/schedulerx \ && sed -i '45c \ \ \ \ \ \ \ \ sed -i "4c appKey=${SCHEDULERX_APPKEY}" ${WORKER_CONF_DIR}/agent.properties' /opt/schedulerxAgent/bin/start-200m.sh
php7.4-fpm
FROM php7.4-fpm# SchedulerX AgentRUN apt-get install -y openjdk-11-jdk wget \ && cd /opt \ && wget https://schedulerx2.oss-cn-hangzhou.aliyuncs.com/agent/schedulerxAgent-1.4.2.tar.gz \ && tar -xf schedulerxAgent-1.4.2.tar.gz \ && rm schedulerxAgent-1.4.2.tar.gz \ && mkdir -p /root/logs/schedulerx \ && sed -i '45c \ \ \ \ \ \ \ \ sed -i "4c appKey=${SCHEDULERX_APPKEY}" ${WORKER_CONF_DIR}/agent.properties' /opt/schedulerxAgent/bin/start-200m.sh