What template and version are you using? On Tue, Sep 26, 2017 at 9:28 PM Jim Miller <jemiller1...@gmail.com> wrote:
> Hi guys, > > I have another error that I cannot get past: > > *vagrant:MyRecommendation/ (develop*) $ pio train > > [21:47:39]* > *[ERROR] [Console$] unable to read engine factory from > /home/vagrant/MyRecommendation/engine.json. Aborting.* > > > Does anyone have any advice? > > Thanks, > > Jim > > -- > Jim Miller > > On September 26, 2017 at 7:42:02 PM, Jim Miller (jemiller1...@gmail.com) > wrote: > > Shinsuke, you rock! That was it. > > Thank you so much, > > Jim > > -- > Jim Miller > > On September 24, 2017 at 7:29:28 PM, Shinsuke Sugaya ( > shinsuke.sug...@gmail.com) wrote: > > Hi, > > > PIO_STORAGE_SOURCES_ELASTICSEARCH_PORTS=9300 > > Elasticsearch 5 uses 9200 port. > Could you try 9200 port? > > Thanks, > shinsuke > > > 2017-09-24 3:02 GMT+09:00 Jim Miller <jemiller1...@gmail.com>: > > Hi Donald, > > > > Tried just now and received the following error: > > > > vagrant:~/ $ pio status > > [13:34:52] > > [INFO] [Management$] Inspecting PredictionIO... > > [INFO] [Management$] PredictionIO 0.12.0-incubating is installed at > > /home/vagrant/pio/PredictionIO-0.12.0-incubating > > [INFO] [Management$] Inspecting Apache Spark... > > [INFO] [Management$] Apache Spark is installed at > > > /home/vagrant/pio/PredictionIO-0.12.0-incubating/vendors/spark-2.1.1-bin-hadoop2.7 > > [INFO] [Management$] Apache Spark 2.1.1 detected (meets minimum > requirement > > of 1.3.0) > > [INFO] [Management$] Inspecting storage backend connections... > > [INFO] [Storage$] Verifying Meta Data Backend (Source: ELASTICSEARCH)... > > [ERROR] [Management$] Unable to connect to all storage backends > > successfully. > > The following shows the error message from the storage backend. > > > > error while performing request (java.lang.RuntimeException) > > > > Dumping configuration of initialized storage backend sources. > > Please make sure they are correct. > > > > Source Name: ELASTICSEARCH; Type: elasticsearch; Configuration: HOME -> > > > /home/vagrant/pio/PredictionIO-0.12.0-incubating/vendors/elasticsearch-5.5.2, > > HOSTS -> localhost, PORTS -> 9300, CLUSTERNAME -> firstCluster, TYPE -> > > elastic search > > > > > > HERE IS MY PIO-ENV.SH > > > > # PredictionIO Main Configuration > > # > > # This section controls core behavior of PredictionIO. It is very likely > > that > > # you need to change these to fit your site. > > > > # SPARK_HOME: Apache Spark is a hard dependency and must be configured. > > # SPARK_HOME=$PIO_HOME/vendors/spark-2.0.2-bin-hadoop2.7 > > SPARK_HOME=$PIO_HOME/vendors/spark-2.1.1-bin-hadoop2.7 > > > > POSTGRES_JDBC_DRIVER=$PIO_HOME/lib/postgresql-42.0.0.jar > > MYSQL_JDBC_DRIVER=$PIO_HOME/lib/mysql-connector-java-5.1.41.jar > > > > # ES_CONF_DIR: You must configure this if you have advanced configuration > > for > > # your Elasticsearch setup. > > ES_CONF_DIR=$PIO_HOME/vendors/elasticsearch-5.5.2 > > # HADOOP_CONF_DIR=/opt/hadoop > > > > # HBASE_CONF_DIR: You must configure this if you intend to run > PredictionIO > > # with HBase on a remote cluster. > > HBASE_CONF_DIR=$PIO_HOME/hbase-1.3.1/conf > > > > # Filesystem paths where PredictionIO uses as block storage. > > PIO_FS_BASEDIR=$HOME/.pio_store > > PIO_FS_ENGINESDIR=$PIO_FS_BASEDIR/engines > > PIO_FS_TMPDIR=$PIO_FS_BASEDIR/tmp > > > > # PredictionIO Storage Configuration > > # > > # This section controls programs that make use of PredictionIO's built-in > > # storage facilities. Default values are shown below. > > # > > # For more information on storage configuration please refer to > > # http://predictionio.incubator.apache.org/system/anotherdatastore/ > > > > # Storage Repositories > > > > # Default is to use PostgreSQL > > PIO_STORAGE_REPOSITORIES_METADATA_NAME=pio_meta > > PIO_STORAGE_REPOSITORIES_METADATA_SOURCE=ELASTICSEARCH > > > > PIO_STORAGE_REPOSITORIES_EVENTDATA_NAME=pio_event > > PIO_STORAGE_REPOSITORIES_EVENTDATA_SOURCE=HBASE > > > > PIO_STORAGE_REPOSITORIES_MODELDATA_NAME=pio_model > > PIO_STORAGE_REPOSITORIES_MODELDATA_SOURCE=LOCALFS > > > > # Storage Data Sources > > > > # PostgreSQL Default Settings > > # Please change "pio" to your database name in > PIO_STORAGE_SOURCES_PGSQL_URL > > # Please change PIO_STORAGE_SOURCES_PGSQL_USERNAME and > > # PIO_STORAGE_SOURCES_PGSQL_PASSWORD accordingly > > # PIO_STORAGE_SOURCES_PGSQL_TYPE=jdbc > > # PIO_STORAGE_SOURCES_PGSQL_URL=jdbc:postgresql://localhost/pio > > # PIO_STORAGE_SOURCES_PGSQL_USERNAME=pio > > # PIO_STORAGE_SOURCES_PGSQL_PASSWORD=pio > > > > # MySQL Example > > # PIO_STORAGE_SOURCES_MYSQL_TYPE=jdbc > > # PIO_STORAGE_SOURCES_MYSQL_URL=jdbc:mysql://localhost/pio > > # PIO_STORAGE_SOURCES_MYSQL_USERNAME=pio > > # PIO_STORAGE_SOURCES_MYSQL_PASSWORD=pio > > > > # Elasticsearch Example > > # PIO_STORAGE_SOURCES_ELASTICSEARCH_TYPE=elasticsearch > > # PIO_STORAGE_SOURCES_ELASTICSEARCH_HOSTS=localhost > > # PIO_STORAGE_SOURCES_ELASTICSEARCH_PORTS=9200 > > # PIO_STORAGE_SOURCES_ELASTICSEARCH_SCHEMES=http > > # > > > PIO_STORAGE_SOURCES_ELASTICSEARCH_HOME=$PIO_HOME/vendors/elasticsearch-5.5.2 > > # Optional basic HTTP auth > > # PIO_STORAGE_SOURCES_ELASTICSEARCH_USERNAME=my-name > > # PIO_STORAGE_SOURCES_ELASTICSEARCH_PASSWORD=my-secret > > # Elasticsearch 1.x Example > > PIO_STORAGE_SOURCES_ELASTICSEARCH_TYPE=elasticsearch > > PIO_STORAGE_SOURCES_ELASTICSEARCH_CLUSTERNAME=firstCluster > > PIO_STORAGE_SOURCES_ELASTICSEARCH_HOSTS=localhost > > PIO_STORAGE_SOURCES_ELASTICSEARCH_PORTS=9300 > > > PIO_STORAGE_SOURCES_ELASTICSEARCH_HOME=$PIO_HOME/vendors/elasticsearch-5.5.2 > > > > # Local File System Example > > PIO_STORAGE_SOURCES_LOCALFS_TYPE=localfs > > PIO_STORAGE_SOURCES_LOCALFS_PATH=$PIO_FS_BASEDIR/models > > > > # HBase Example > > PIO_STORAGE_SOURCES_HBASE_TYPE=hbase > > PIO_STORAGE_SOURCES_HBASE_HOME=$PIO_HOME/vendors/hbase-1.3.1 > > > > # AWS S3 Example > > # PIO_STORAGE_SOURCES_S3_TYPE=s3 > > # PIO_STORAGE_SOURCES_S3_BUCKET_NAME=pio_bucket > > # PIO_STORAGE_SOURCES_S3_BASE_PATH=pio_model > > > > > > ELASTICSEARCH.YML > > > > #======================== Elasticsearch Configuration > > ========================= > > # > > # NOTE: Elasticsearch comes with reasonable defaults for most settings. > > # Before you set out to tweak and tune the configuration, make sure > > you > > # understand what are you trying to accomplish and the consequences. > > # > > # The primary way of configuring a node is via this file. This template > > lists > > # the most important settings you may want to configure for a production > > cluster. > > # > > # Please consult the documentation for further information on > configuration > > options: > > # https://www.elastic.co/guide/en/elasticsearch/reference/index.html > > # > > # ---------------------------------- Cluster > > ----------------------------------- > > # > > # Use a descriptive name for your cluster: > > # > > cluster.name: firstCluster > > # > > # ------------------------------------ Node > > ------------------------------------ > > # > > # Use a descriptive name for the node: > > # > > #node.name: node-1 > > # > > # Add custom attributes to the node: > > # > > #node.attr.rack: r1 > > # > > # ----------------------------------- Paths > > ------------------------------------ > > # > > # Path to directory where to store the data (separate multiple locations > by > > comma): > > # > > #path.data: /path/to/data > > # > > # Path to log files: > > # > > #path.logs: /path/to/logs > > # > > # ----------------------------------- Memory > > ----------------------------------- > > # > > # Lock the memory on startup: > > # > > #bootstrap.memory_lock: true > > # > > # Make sure that the heap size is set to about half the memory available > > # on the system and that the owner of the process is allowed to use this > > # limit. > > # > > # Elasticsearch performs poorly when the system is swapping the memory. > > # > > # ---------------------------------- Network > > ----------------------------------- > > # > > # Set the bind address to a specific IP (IPv4 or IPv6): > > # > > #network.host: 192.168.0.1 > > # > > # Set a custom port for HTTP: > > # > > #http.port: 9200 > > # > > # For more information, consult the network module documentation. > > # > > # --------------------------------- Discovery > > ---------------------------------- > > # > > # Pass an initial list of hosts to perform discovery when new node is > > started: > > # The default list of hosts is ["127.0.0.1", "[::1]"] > > # > > #discovery.zen.ping.unicast.hosts: ["host1", "host2"] > > # > > # Prevent the "split brain" by configuring the majority of nodes (total > > number of master-eligible nodes / 2 + 1): > > # > > #discovery.zen.minimum_master_nodes: 3 > > # > > # For more information, consult the zen discovery module documentation. > > # > > # ---------------------------------- Gateway > > ----------------------------------- > > # > > # Block initial recovery after a full cluster restart until N nodes are > > started: > > # > > #gateway.recover_after_nodes: 3 > > # > > # For more information, consult the gateway module documentation. > > # > > # ---------------------------------- Various > > ----------------------------------- > > # > > # Require explicit names when deleting indices: > > # > > #action.destructive_requires_name: true > > > > > > Thanks for all of your help! > > > > Jim > > -- > > Jim Miller > > > > On September 20, 2017 at 9:14:37 PM, Jim Miller (jemiller1...@gmail.com) > > wrote: > > > > Hi Donald, > > > > I did not. I will read the release notes and update accordingly. > > > > Thanks! > > > > Jim > > > > -- > > Jim Miller > > > > On September 20, 2017 at 1:01:53 PM, Donald Szeto (don...@apache.org) > wrote: > > > > Hey Jim, > > > > Did you build PIO 0.12 with ES 1.4 support? ES 1.x is being deprecated in > > 0.12 so the default build will use ES 5.x support. > > > > See the upcoming release notes: > > > https://github.com/apache/incubator-predictionio/blob/release/0.12.0/RELEASE.md#behavior-changes > > > > Regards, > > Donald > > > > On Wed, Sep 20, 2017 at 8:14 AM, Jim Miller <jemiller1...@gmail.com> > wrote: > >> > >> Yes. I’m following this tutorial but using 0.12.0 instead of 0.10.0: > >> > >> > https://medium.freecodecamp.org/building-an-recommendation-engine-with-apache-prediction-io-ml-server-aed0319e0d8 > >> > >> -- > >> Jim Miller > >> > >> On September 20, 2017 at 10:51:39 AM, Pat Ferrel (p...@occamsmachete.com > ) > >> wrote: > >> > >> meaning is “firstcluster” the cluster name in your Elasticsearch > >> configuration? > >> > >> > >> On Sep 19, 2017, at 8:54 PM, Vaghawan Ojha <vaghawan...@gmail.com> > wrote: > >> > >> I think the problem is with Elasticsearch, are you sure the cluster > exists > >> in elasticsearch configuration? > >> > >> On Wed, Sep 20, 2017 at 8:17 AM, Jim Miller <jemiller1...@gmail.com> > >> wrote: > >>> > >>> Hi, > >>> > >>> I’m using PredictionIO 0.12.0-incubating with ElasticSearch and Hbase: > >>> > >>> PredictionIO-0.12.0-incubating/vendors/elasticsearch-1.4.4 > >>> PredictionIO-0.12.0-incubating/vendors/hbase-1.0.0 > >>> PredictionIO-0.12.0-incubating/vendors/spark-1.5.1-bin-hadoop2.6 > >>> > >>> > >>> All starts with no errors but with pio status I get: > >>> > >>> [INFO] [Management$] Inspecting PredictionIO... > >>> [INFO] [Management$] PredictionIO 0.12.0-incubating is installed at > >>> /home/vagrant/pio/PredictionIO-0.12.0-incubating > >>> [INFO] [Management$] Inspecting Apache Spark... > >>> [INFO] [Management$] Apache Spark is installed at > >>> > /home/vagrant/pio/PredictionIO-0.12.0-incubating/vendors/spark-1.5.1-bin-hadoop2.6 > >>> [INFO] [Management$] Apache Spark 1.5.1 detected (meets minimum > >>> requirement of 1.3.0) > >>> [INFO] [Management$] Inspecting storage backend connections... > >>> [INFO] [Storage$] Verifying Meta Data Backend (Source: > ELASTICSEARCH)... > >>> [ERROR] [Management$] Unable to connect to all storage backends > >>> successfully. > >>> The following shows the error message from the storage backend. > >>> > >>> Connection closed > >>> > (org.apache.predictionio.shaded.org.apache.http.ConnectionClosedException) > >>> > >>> Dumping configuration of initialized storage backend sources. > >>> Please make sure they are correct. > >>> > >>> Source Name: ELASTICSEARCH; Type: elasticsearch; Configuration: HOME -> > >>> > /home/vagrant/pio/PredictionIO-0.12.0-incubating/vendors/elasticsearch-1.4.4, > >>> HOSTS -> localhost, PORTS -> 9300, CLUSTERNAME -> firstcluster, TYPE -> > >>> elasticsearch > >>> > >>> > >>> Can anyone give me an idea of what I need to fix this issue? Here is > >>> > >>> > >>> # PredictionIO Main Configuration > >>> # > >>> # This section controls core behavior of PredictionIO. It is very > likely > >>> that > >>> # you need to change these to fit your site. > >>> > >>> # SPARK_HOME: Apache Spark is a hard dependency and must be configured. > >>> # SPARK_HOME=$PIO_HOME/vendors/spark-2.0.2-bin-hadoop2.7 > >>> SPARK_HOME=$PIO_HOME/vendors/spark-1.5.1-bin-hadoop2.6 > >>> > >>> POSTGRES_JDBC_DRIVER=$PIO_HOME/lib/postgresql-42.0.0.jar > >>> MYSQL_JDBC_DRIVER=$PIO_HOME/lib/mysql-connector-java-5.1.41.jar > >>> > >>> # ES_CONF_DIR: You must configure this if you have advanced > configuration > >>> for > >>> # your Elasticsearch setup. > >>> ES_CONF_DIR=$PIO_HOME/vendors/elasticsearch-1.4.4/conf > >>> > >>> # HADOOP_CONF_DIR: You must configure this if you intend to run > >>> PredictionIO > >>> # with Hadoop 2. > >>> HADOOP_CONF_DIR=$PIO_HOME/vendors/spark-1.5.1-bin-hadoop2.6/conf > >>> > >>> # HBASE_CONF_DIR: You must configure this if you intend to run > >>> PredictionIO > >>> # with HBase on a remote cluster. > >>> HBASE_CONF_DIR=$PIO_HOME/vendors/hbase-1.0.0/conf > >>> > >>> # Filesystem paths where PredictionIO uses as block storage. > >>> PIO_FS_BASEDIR=$HOME/.pio_store > >>> PIO_FS_ENGINESDIR=$PIO_FS_BASEDIR/engines > >>> PIO_FS_TMPDIR=$PIO_FS_BASEDIR/tmp > >>> > >>> # PredictionIO Storage Configuration > >>> # > >>> # This section controls programs that make use of PredictionIO's > built-in > >>> # storage facilities. Default values are shown below. > >>> # > >>> # For more information on storage configuration please refer to > >>> # http://predictionio.incubator.apache.org/system/anotherdatastore/ > >>> > >>> # Storage Repositories > >>> > >>> # Default is to use PostgreSQL > >>> PIO_STORAGE_REPOSITORIES_METADATA_NAME=pio_meta > >>> PIO_STORAGE_REPOSITORIES_METADATA_SOURCE=ELASTICSEARCH > >>> > >>> PIO_STORAGE_REPOSITORIES_EVENTDATA_NAME=pio_event > >>> PIO_STORAGE_REPOSITORIES_EVENTDATA_SOURCE=HBASE > >>> > >>> PIO_STORAGE_REPOSITORIES_MODELDATA_NAME=pio_model > >>> PIO_STORAGE_REPOSITORIES_MODELDATA_SOURCE=LOCALFS > >>> > >>> # Storage Data Sources > >>> > >>> # PostgreSQL Default Settings > >>> # Please change "pio" to your database name in > >>> PIO_STORAGE_SOURCES_PGSQL_URL > >>> # Please change PIO_STORAGE_SOURCES_PGSQL_USERNAME and > >>> # PIO_STORAGE_SOURCES_PGSQL_PASSWORD accordingly > >>> # PIO_STORAGE_SOURCES_PGSQL_TYPE=jdbc > >>> # PIO_STORAGE_SOURCES_PGSQL_URL=jdbc:postgresql://localhost/pio > >>> # PIO_STORAGE_SOURCES_PGSQL_USERNAME=pio > >>> # PIO_STORAGE_SOURCES_PGSQL_PASSWORD=pio > >>> > >>> # MySQL Example > >>> # PIO_STORAGE_SOURCES_MYSQL_TYPE=jdbc > >>> # PIO_STORAGE_SOURCES_MYSQL_URL=jdbc:mysql://localhost/pio > >>> # PIO_STORAGE_SOURCES_MYSQL_USERNAME=pio > >>> # PIO_STORAGE_SOURCES_MYSQL_PASSWORD=pio > >>> > >>> # Elasticsearch Example > >>> # PIO_STORAGE_SOURCES_ELASTICSEARCH_TYPE=elasticsearch > >>> # PIO_STORAGE_SOURCES_ELASTICSEARCH_HOSTS=localhost > >>> # PIO_STORAGE_SOURCES_ELASTICSEARCH_PORTS=9200 > >>> # PIO_STORAGE_SOURCES_ELASTICSEARCH_SCHEMES=http > >>> # > >>> > PIO_STORAGE_SOURCES_ELASTICSEARCH_HOME=$PIO_HOME/vendors/elasticsearch-5.5.2 > >>> # Optional basic HTTP auth > >>> # PIO_STORAGE_SOURCES_ELASTICSEARCH_USERNAME=my-name > >>> # PIO_STORAGE_SOURCES_ELASTICSEARCH_PASSWORD=my-secret > >>> # Elasticsearch 1.x Example > >>> PIO_STORAGE_SOURCES_ELASTICSEARCH_TYPE=elasticsearch > >>> PIO_STORAGE_SOURCES_ELASTICSEARCH_CLUSTERNAME=firstcluster > >>> PIO_STORAGE_SOURCES_ELASTICSEARCH_HOSTS=localhost > >>> PIO_STORAGE_SOURCES_ELASTICSEARCH_PORTS=9300 > >>> > >>> > PIO_STORAGE_SOURCES_ELASTICSEARCH_HOME=$PIO_HOME/vendors/elasticsearch-1.4.4 > >>> > >>> # Local File System Example > >>> PIO_STORAGE_SOURCES_LOCALFS_TYPE=localfs > >>> PIO_STORAGE_SOURCES_LOCALFS_PATH=$PIO_FS_BASEDIR/models > >>> > >>> # HBase Example > >>> PIO_STORAGE_SOURCES_HBASE_TYPE=hbase > >>> PIO_STORAGE_SOURCES_HBASE_HOME=$PIO_HOME/vendors/hbase-1.0.0 > >>> > >>> # AWS S3 Example > >>> # PIO_STORAGE_SOURCES_S3_TYPE=s3 > >>> # PIO_STORAGE_SOURCES_S3_BUCKET_NAME=pio_bucket > >>> # PIO_STORAGE_SOURCES_S3_BASE_PATH=pio_model > >>> > >>> > >>> Thanks, > >>> > >>> Jim > >>> > >>> > >>> -- > >>> Jim Miller > >> > >> > >> > > > >