運が悪いので、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
また、アスタリスクなしの場合もあります。