k8sデプロイメントffmpeg

プログラムは毎朝自動的に再起動されます

apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: ffmpeg
  name: ssx-ffmpeg-dm
  namespace: ssx
spec:
  replicas: 1
  selector: #标签选择器,与上面的标签共同作用
    matchLabels: #选择包含标签app:mysql的资源
      app: ffmpeg
  template: #这是选择或创建的Pod的模板
    metadata: #Pod的元数据
      labels: #Pod的标签,上面的selector即选择包含标签app:mysql的Pod
        app: ffmpeg
    spec: #期望Pod实现的功能(即在pod中部署)
      hostAliases: #给pod添加hosts网络
        - ip: "192.168.0.101"
          hostnames:
            - "node101"
        - ip: "192.168.0.102"
          hostnames:
            - "node102"
        - ip: "192.168.0.103"
          hostnames:
            - "node103"
      containers: #生成container,注意此pod部署了zookeeper和kafka.因为后者依赖前者。逻辑上来说需要有启动顺序,如果kafka启动报错未连接到zk,但是kebernetes会重启kafka容器
        - name: ssx-ffmpeg-c
          image: jrottenberg/ffmpeg  #配置阿里的镜像,直接pull即可
          imagePullPolicy: IfNotPresent
          volumeMounts: # zipkin默认不会持久化数据的,默认保存在内存中
            - mountPath: /etc/localtime   #时间同步
              name: c-v-path-lt
            - mountPath: /ssxtmp   #视频存储位置
              name: c-v-path-video
          command: ["bash"]
          args: ["-c","export date1=`date -d tomorrow +%Y%m%d` && export date2=`date +%s -d $date1` && export date3=`date +%s` && export dateend=`expr $date2 - $date3` && /usr/local/bin/ffmpeg -v info -t $dateend -i 'rtsp://admin:[email protected]:554/h264/ch1/sub/av_stream' -force_key_frames 'expr:gte(t,n_forced*1)' -hls_time 60 -threads 1 -hls_list_size 0 -hls_segment_filename /ssxtmp/index_${date3}_%20d.ts /ssxtmp/index_${date3}.m3u8 || exit 1"] # 此配置会覆盖dockerFile的CMD参数,这里ffmpeg参数指定1,还有使用低码率的源视频流,都是为了降低cpu的转码率。目前大概在15%,如果使用默认的配置是200%   高清视频地址rtsp://admin:[email protected]:554/h264/ch1/main/av_stream
      volumes:
        - name: c-v-path-lt
          hostPath:
            path: /etc/localtime   #时间同步
        - name: c-v-path-video
          hostPath:
            path: /home/app/apps/k8s/for_docker_volume/nginx/static-pages/nas/ffmpeg/current_video
      nodeSelector: #把此pod部署到指定的node标签上
        kubernetes.io/hostname: node101

おすすめ

転載: blog.csdn.net/weixin_48835367/article/details/131270125