1

運が悪いので、joyent smartOs インスタンスで Elasticsearch をサービスとして開始しようとしています。私が使用しているインスタンスは、標準の 64 ビット Java インスタンスです。これは、私が使用しているサービス マニフェスト ファイルです。

<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">

<service_bundle type="manifest" name="es">

<service name="database/es" type="service" version="1">

    <create_default_instance enabled="true"/>

    <single_instance/>

    <dependency name="network" grouping="require_all" restart_on="error" type="service">
        <service_fmri value="svc:/milestone/network:default"/>
    </dependency>

    <dependency name="filesystem" grouping="require_all" restart_on="error" type="service">
        <service_fmri value="svc:/system/filesystem/local"/>
    </dependency>

    <method_context>
              <method_credential user='admin' />
    </method_context>

    <exec_method type="method" name="start" exec="/home/admin/elasticsearch/bin/elasticsearch"
                 timeout_seconds="60"/>

    <exec_method type="method" name="stop" exec=":kill" timeout_seconds="60"/>

    <property_group name="startd" type="framework">
        <propval name="duration" type="astring" value="child"/>


        <propval name="ignore_error" type="astring" value="core,signal"/>
    </property_group>

    <property_group name="application" type="application">

    </property_group>


    <stability value="Evolving"/>

    <template>
        <common_name>
            <loctext xml:lang="C">
                es
            </loctext>
        </common_name>
    </template>

</service>

</service_bundle>

マニフェストファイルをインポートして有効にします

svccfg import es.xml
svcadm enable es

次に、サービスが実行されることを期待していますが、elasticsearch サーバーが応答していません。そして、svcs を使用してサービスを調べると、

offline*       16:21:53 svc:/database/es:default

そして時折:

online*        16:22:24 svc:/database/es:default

また、アスタリスクなしの場合もあります。

4

1 に答える 1

0

見る:

/var/svc/log/database-es:default.log

JAVA_HOMEPATH変数を確認してください。

于 2015-07-14T10:44:09.323 に答える