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

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

创新互联建站主营沁阳网站建设的网络公司,主营网站建设方案,APP应用开发,沁阳h5成都微信小程序搭建,沁阳网站营销推广欢迎沁阳等地区企业咨询

一、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协议. 若关闭设置为0
S3_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.0
RUN apt update && apt install -y openjdk-8-jre
COPY hadoop-2.6.0 /root/hadoop

ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64/
ENV HADOOP_HDFS_HOME /root/hadoop
ENV LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:${JAVA_HOME}/jre/lib/amd64/server

RUN 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.sh

EXPOSE 8500
EXPOSE 9000
ENTRYPOINT ["/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”有了一定的了解,如果想了解更多相关知识,欢迎关注创新互联行业资讯频道,感谢各位的阅读!


本文标题:TensorFlow-Serving如何切换模型存储引擎HDFS与S3
转载注明:http://myzitong.com/article/iijdoc.html