美文网首页
k8s下php定时任务接入阿里云SchedulerX

k8s下php定时任务接入阿里云SchedulerX

作者: aiChenK | 来源:发表于2022-05-09 20:01 被阅读0次

    背景

    php上阿里云ack(k8s)后,想保留原来定时任务,但是又需要保持单点运行,所以考虑使用阿里云SchedulerX来方便管理。
    官方文档如下:


    image.png

    虽然官方文档显示可以用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 Agent
    RUN 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 Agent
    RUN 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
    

    相关文章

      网友评论

          本文标题:k8s下php定时任务接入阿里云SchedulerX

          本文链接:https://www.haomeiwen.com/subject/ymxkurtx.html