安装 - 多服务器
在多个服务器上安装skil遵循与在单个服务器上安装skil相同的安装路径,但还有一些附加要求。
ZooKeeper
为了使多个服务器能够彼此工作和协调,skil的每个服务器/实例必须具有相同的ZOOKEEPER_HOST设置,并且所有skil的服务器/实例都必须能够访问zookeeper集群。
安装细节见Zookeeper。
SKIL 配置
在每台skil机器上,将/etc/profile.d/skil-env.sh中的ZOOKEEPER_HOST值设置为完全相同的值。
数据库
当使用skil的多个实例/服务器时,需要一个网络可访问的数据库,如mysql、postgres等,数据库是通过jdbc访问的,但是只有mysql经过了完整的SQL查询兼容性测试。
有关安装正确版本MySQL的指南,请参阅MySQL。
MySQL
skil不分发mysql jdbc驱动程序,它们必须单独获得。它们可以从MySQL网站下载,网址:https://dev.mysql.com/downloads/connector/j/。
下载的JAR文件应该放在每个服务器的${SKIL_HOME}/lib目录中,通常是/opt/skil/lib。
或
你可以安装并创建到JDBC驱动程序的符号链接,方法如下:
sudo yum install -y mysql-connector-java
sudo ln -s /usr/share/java/mysql-connector-java.jar /opt/skil/lib/mysql-connector-java.jar
准备数据库和凭据
skil需要许多数据库,并将根据需要创建它们。所有数据库都以“skil_”作为前缀,为它们提供一个可区别的命名空间。还需要一个名为“skil”的数据库,并且必须在使用MySQL运行skil之前创建该数据库。
详见mysql章节。
SKIL 配置
要将skil配置为使用mysql,skil必须使用正确的JDBC驱动程序信息和凭据进行配置。编辑/etc/skil/skil-env.sh配置文件,并添加以下内容:
SKIL_USE_EMBEDDED_DB=false
SKIL_DB_DRIVER=com.mysql.jdbc.Driver
SKIL_DB_URL=jdbc:mysql://localhost:3306/skil
SKIL_DB_USER=skil
SKIL_DB_PASSWORD=skil
上面的配置示例假定mysql服务器在3306端口的localhost上运行,并且用户名和密码都是“skil”。
模型存储
在大型多节点分布式skil集群中,模型存储必须驻留在共享/分布式文件系统上。目前,skil只支持hdfs作为分布式文件系统。其他配置(如NFS)尚未测试。对于较小的集群,skil节点将在它们之间同步模型文件。
HDFS 模型存储配置
要使用HDFS模型存储,请将以下内容添加到/etc/skil-env.sh配置文件中:
MODEL_STORAGE_CLASS=io.skymind.modelstorage.hdfs2.Hdfs2ModelStorage
skil.hdfs2modelstorage.hdfsuri=hdfs://namenode
将hdfs://namenode替换为hdfs集群的完整hdfs-uri。
基本目录
要配置skil将存储模型的基本目录,请添加以下设置:
skil.hdfs2modelstorage.basedir=/skil/modelstorage
将/skil/modelstorage替换为所需目录。
Hadoop 用户
要调整skil连接到hdfs时使用的用户名,请调整以下设置:
skil.hdfs2modelstorage.hadoopuser=skil
启动SKIL
配置skil后,使用以下命令启用和启动skil:
sudo systemctl daemon-reload
sudo systemctl enable skil
sudo systemctl start skil
要查看执行上述命令后发生什么 ,需要查看在/var/log/skil/skil.log创建的日志文件。你可以使用tail命令查看日志,如下所示:
tail -f /var/log/skil/skil.log
启动skil后,打开浏览器并指向:
http://
要停止skil服务器,请使用:
sudo systemctl stop skil
翻译:风一样的男子