Ich verwende cloudformation für die Installation von elasticsearch. Ich lade und entpacke tar.gz. Hier finden Sie meinen EC2-Instanz Abschnitt:AWSCloudFormation - cfn-init konnte den Befehl nicht ausführen
"masterinstance": {
"Type": "AWS: : EC2: : Instance",
"Metadata": {
"AWS: : CloudFormation: : Init": {
"configSets" : {
"ascending" : [ "config1" , "config2" ]
},
"config1": {
"sources": {
"/home/ubuntu/": "https: //s3.amazonaws.com/xxxxxxxx/elasticsearch.tar.gz"
},
"files": {
"/home/ubuntu/elasticsearch/config/elasticsearch.yml": {
"content": {
"Fn: : Join": [
"",
[
xxxxxxxx
]
]
}
}
}
},
"config2" : {
"commands": {
"runservice": {
"command": "~/elasticsearch/bin/elasticsearch",
"cwd" : "~",
"test" : "~/elasticsearch/bin/elasticsearch > test.txt",
"ignoreErrors" : "false"
}
}
}
}
},
"Properties": {
"ImageId": "ami-xxxxxxxxxx",
"InstanceType": {
"Ref": "InstanceTypeParameter"
},
"Tags": [
xxxxxxxx
],
"KeyName": "everybody",
"NetworkInterfaces": [
{
"GroupSet": [
{
"Ref": "newSecurity"
}
],
"AssociatePublicIpAddress": "true",
"DeviceIndex": "0",
"SubnetId": {
"Ref": "oneSubnet"
}
}
],
"UserData": {
"Fn: : Base64": {
"Fn: : Join": [
"",
[
"#!/bin/bash\n",
"sudo add-apt-repository-yppa: webupd8team/java\n",
"sudo apt-get update\n",
"echo'oracle-java8-installershared/accepted-oracle-license-v1-1selecttrue'|sudo debconf-set-selections\n",
"sudo apt-getinstall-yoracle-java8-installer\n",
"apt-get update\n",
"apt-get-y installpython-setuptools\n",
"easy_installhttps: //s3.amazonaws.com/cloudformation-examples/aws-cfn-bootstrap-latest.tar.gz\n",
"/usr/local/bin/cfn-init",
"--stack Elasticsearch",
"--resource masterinstance",
"--configsets ascending",
"-v\n"
]
]
}
}
} }
I AWS::CloudFormation::Init
für die Konfiguration und andere Einstellungen verwenden. Nach dem Extrahieren der Teer, ich möchte elasticsearch starten, die ich durch die command
Abschnitt in AWS::CloudFormation::Init
bin aber, nach der vollständigen Erstellung von Stapel, wenn ich ssh in meine Instanzen, ich bin nicht in der Lage zu sehen, meine elasticsearch Service ausgeführt wird. Alle anderen Dinge wie das Extrahieren von tar und das Erstellen von Dateien funktionieren einwandfrei.
ich durch die CFN-init.log gegangen sind, gibt es mir die folgenden Informationen:
2016-07-19 05:53:15,776 P2745 [INFO] Test for Command runservice
2016-07-19 05:53:15,778 P2745 [INFO] -----------------------Command Output-----------------------
2016-07-19 05:53:15,778 P2745 [INFO] /bin/sh: 1: ~/elasticsearch/bin/elasticsearch: not found
2016-07-19 05:53:15,778 P2745 [INFO] ------------------------------------------------------------
2016-07-19 05:53:15,779 P2745 [ERROR] Exited with error code 127
~
Wenn ich den obigen Befehl feuern ~/elasticsearch/bin/elasticsearch
direkt auf mein Beispiel dann ist es perfekt funktioniert.
Was ich hier falsch mache.
Vielen Dank.
Gibt es irgendwelche Informationen in den Protokollen? – Daniel777
Wenn eine Antwort unten Ihre Frage löste, vergessen Sie nicht, [Akzeptiert] zu markieren (http://meta.stackexchange.com/a/5235/327137). – wjordan