千家信息网

TensorFlow-Serving如何切换模型存储引擎HDFS与S3

发表于:2024-09-26 作者:千家信息网编辑
千家信息网最后更新 2024年09月26日,小编给大家分享一下TensorFlow-Serving如何切换模型存储引擎HDFS与S3,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、TensorFlow-Serving使用S3
千家信息网最后更新 2024年09月26日TensorFlow-Serving如何切换模型存储引擎HDFS与S3

小编给大家分享一下TensorFlow-Serving如何切换模型存储引擎HDFS与S3,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

一、TensorFlow-Serving使用S3存储模型

  • 注意:这里的S3不单单指亚马逊的S3,也可支持minio等实现了S3协议的对象存储,值得提示的是,在测试过程中,腾讯云cos支持2.2.0及以前版本,对2.3.0存在兼容性问题,minio没有出现问题。

#请设置如下环境变量AWS_ACCESS_KEY_ID=XXXXX                           # 访问S3需要的ID凭证AWS_SECRET_ACCESS_KEY=XXXXX                       # 访问S3需要的KEY凭证AWS_REGION=us-east-1                              # S3存储桶的区域信息,(可选项)S3_ENDPOINT=s3.us-east-1.amazonaws.com            # S3访问地址S3_USE_HTTPS=1                                    # 是否使用HTTPS协议. 若关闭设置为0S3_VERIFY_SSL=1                                   # 如果使用了HTTPS协议,控制是否应启用SSL,若关闭设置为0

二、TensorFlow-Serving使用HDFS存储模型

  • 目前如果需要使用HDFS作为存储引擎,需要对现有的docker镜像进行重新打包。

1、下载对应的Hadoop包,并解压

https://archive.apache.org/dist/hadoop/core/hadoop-2.6.0/hadoop-2.6.0.tar.gz

2、Dockerfile如下:

FROM tensorflow/serving:2.3.0RUN apt update && apt install -y openjdk-8-jreCOPY hadoop-2.6.0 /root/hadoopENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64/ENV HADOOP_HDFS_HOME /root/hadoopENV LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${JAVA_HOME}/jre/lib/amd64/serverRUN echo '#!/bin/bash \n\n\CLASSPATH=$(${HADOOP_HDFS_HOME}/bin/hadoop classpath --glob) tensorflow_model_server --port=8500 --rest_api_port=9000 \--model_name=${MODEL_NAME} --model_base_path=${MODEL_BASE_PATH}/${MODEL_NAME} \"$@"' > /usr/bin/tf_serving_entrypoint.sh \&& chmod +x /usr/bin/tf_serving_entrypoint.shEXPOSE 8500EXPOSE 9000ENTRYPOINT ["/usr/bin/tf_serving_entrypoint.sh"]

3、Docker Build

docker build -t tensorflow_serving:2.3.0-hadoop-2.6.0 .

4、运行 TensorFlow-Serving

docker run -p 9001:9000 --name tensorflow-serving -e MODEL_NAME=resnet -e MODEL_BASE_PATH=hdfs://172.16.36.234:8020/user/model/tensorflow/ -t tensorflow_serving:2.3.0-hadoop-2.6.0

看完了这篇文章,相信你对"TensorFlow-Serving如何切换模型存储引擎HDFS与S3"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

0