2017-01-27 6 views
1

Systeminformationenkonnte nicht starten Aufgabe auf Frühling Wolke Datenfluss Pivotal Cloud Foundry

Frühling Wolke Datenfluss Cloud Foundry: v1.1.0.RELEASE Pivotal Cloud Foundry: v1.7.12 CF Client (Windows): vgl exe Version 6.23.1 + a70deb3.2017-01-13 cf-v3-plugin: 0.6.7

Das Starten der Timestamp-Task-App ohne Parameter schlägt fehl. Protokolle von Spring Cloud Data Flow Server zeigen die folgende Stapelüberwachung bei https://gist.github.com/anonymous/420f3928b7831a11b378fc6792be1ffc.

Lauf cf v3-apps Ausgänge

name   total_desired_instances 
ticktock-ts 0 

Dann cf v3-rt ticktock-ts start now produziert

OK 

Running task start on app ticktock-ts... 

Tailing logs for app ticktock-ts... 

Failed to run task start: 
{ "code": 330002, "description": "Feature Disabled: task_creation", "error_code": "CF-FeatureDisabled"} 

Diese task_creation Funktion ist deaktiviert und mein PCF Admin sagt, es kann nicht auf der PCF Version aktiviert sein, die wir haben.

Vielen Dank.

Antwort

0

Die Aufgaben wurden vor PCF 1.9.x als "experimentell" betrachtet. Ich sehe, dass du das vci-cli-Plugin ausführst, also musst du das wissen. Versuchen Sie, die SCDF mit der variablen Einrichtung, die experimentellen Arbeiten ermöglicht in den älteren Versionen von PCF auszuführen:

cf set-env Gießerei-Server SPRING_CLOUD_DATAFLOW_FEATURES_EXPERIMENTAL_TASKSENABLED wahr

Auch habe ich die gleichen Fehler, den Sie beide mit den empfangenen SCDF-Version von 1.1.0-Release sowie 1.2.0-Build-Snapshot (das Neueste, das ich finden kann). Ich bemerkte, dass der Fehler erst nach wiederholten Startversuchen auftrat. Wenn ich die Aufgabe nicht registriere und zerstöre und die Aufgabe neu beginne, würde ich diesen Fehler erst nach mehreren Versuchen erhalten.

+0

Kein Glück, das diese env-Variable ermöglicht. Immer noch das gleiche Problem wie oben. Unser PCF-Administrator sagt mir, dass er in einigen Wochen auf PCF 1.9 upgraden wird, also kann ich bis dahin warten, um es noch einmal zu versuchen. –

0

Wir haben es auch für unsere PCF-Installation der Version 1.7 getan.

Unten ist von unseren Notizen und lernen, dass wir während der Spitze gemacht, um es auszuprobieren. Ich hoffe, es hilft.

Mit der Spring Cloud-Aufgabe kann ein Benutzer kurzlebige Microservices mit der Spring Cloud entwickeln und ausführen und sie lokal in der Cloud ausführen, sogar im Spring Cloud-Datenfluss. Wir haben die Beispielanwendung Spring Cloud verwendet: thumbnail-generator als kurzlebigen Microservice für unseren Anwendungsfall.

Detaillierte Referenzhandbuch über Spring Cloud Task ist um spring docs.

Bitte beachten Sie, dass wir Rabbit Binder verwendet haben und damit eine RabbitMq-Instanz im PCF-Space erstellt und mithilfe der unten beschriebenen Variablen an die App gebunden wird.

Schritte und Befehle

  • Entwickeln und Installieren Sie den Task-App in lokalen Maven - mvn clean install

  • Set Maven Remote-Repo, wenn Sie möchten, privates für andere Abhängigkeiten Downloads verwenden: export MAVEN_REMOTE_REPOSITORIES_REPO1_URL=YOUR_NEXUS_URL

  • Einrichtung Cloud Foundry desti Nation: export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_URL=PCF API Endpoint export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_ORG=Org Name export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_SPACE=Space Name export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_DOMAIN=Site domain export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_USERNAME=user name export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_PASSWORD=password export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_SKIP_SSL_VALIDATION=true export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_STREAM_STAGING_TIMEOUT=300s export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_STREAM_STARTUP_TIMEOUT=300s export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_STREAM_BUILDPACK=java_buildpack_offline export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_STREAM_MEMORY=512 export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_TASK_MEMORY=512 export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_STREAM_ENABLE_RANDOM_APP_NAME_PREFIX=false export SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_STREAM_SERVICES=myMessageStream_rabbitmq_server

    SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_STREAM_SERVICES getrennt ein Komma sein kann Liste der Service-Instanzen mit unserem Stream App binden möchten.

    • Wenn laufen Stream-App lokal - SPRING_CLOUD_DEPLOYER_CLOUDFOUNDRY_TASK_SERVICES für die gewünschten Dienste Listing zu der Aufgabe App

  • starten Datenfluß-Server gebunden werden:

    1. Bauen Dataflow Server Local
      • mvn clean package
    2. starten DF Server Local - mvn spring-boot:run
  • Wenn laufen Stream-App auf PCF:

    1. Bauen Dataflow Server CF
      • mvn clean package
    2. starten DF Server CF (überspringen die Java entscheidet sich, wenn nicht erforderlich) - java -Djavax.net.ssl.trustStore=./keystore.jks -Djavax.net.ssl.trustStorePassword=password -jar target/spring-cloud-dataflow-server-cloudfoundry-1.1.0.BUILD-SNAPSHOT.jar
  • Bauen Datenfluß-Shell - mvn clean package

  • starten DF Shell - mvn spring-boot:run

  • Import Apps, die nicht im Lieferumfang enthalten sind - app import --uri use_the_bitly_url_for_stream-applications-rabbit-maven

    Für die benutzerdefinierte Liste aus dem lokalen Dateisystem importieren verwenden Uri für eine Datei System: --uri=file://<full path to the jar file on local system>

  • Register apps -

    1. app register --name task-processor --type processor --uri maven://org.springframework.cloud.stream.app:tasklaunchrequest-transform-processor-rabbit:jar:1.1.0.BUILD-SNAPSHOT
    2. app register --name task-launcher-local --type sink --uri maven://org.springframework.cloud.stream.app:task-launcher-local-sink-rabbit:jar:1.0.4.RELEASE
  • erstellen & Bereitstellen von Stream -

    1. Auf Local: stream create myMessageStream --definition "rabbit --rabbit.queues=cloud-stream-source --rabbit.requeue=true --spring.rabbitmq.host=localhost --spring.rabbitmq.port=5672 --spring.cloud.stream.bindings.output.contentType='text/plain' | task-processor --uri=maven://com.example:thumbnail-generator:0.0.1-SNAPSHOT | task-launcher-local" --deploy

    2. Auf PCF: stream create myMessageStream --definition "rabbit --rabbit.queues=cloud-stream-source --rabbit.requeue=true --spring.rabbitmq.host=${vcap.services.p-rabbitmq.credentials.protocols.amqp.host} --spring.rabbitmq.port=${vcap.services.p-rabbitmq.credentials.protocols.amqp.port} --spring.cloud.stream.bindings.output.contentType='text/plain' | task-processor --uri=maven://com.example:thumbnail-generator:0.0.1-SNAPSHOT | task-launcher-local" --deploy

  • Als Ergebnis im Falle eines erfolgreichen Einsatz finden Sie können PCF 3 laufenden Anwendungen viz . Rabbit-Listener, Task-Prozessor und Task-Launcher auf CF, um die ereignisgesteuerten Architektur-Microservices zu ermöglichen.

    Für IBM MQ die Quelle zu sein, würde der Stromdefinition

    sein
    ... --definition "jms --jms.destination=<value> 
    --spring.jms.jndi-name=<value> --spring.cloud.stream.bindings.output.contentType='text/plain' ... 
    

    Wie zu erwähnen, alle oben genannten Operationen auch den Datenfluß-Server Dashboard abgeschlossen werden kann.

    Ich hoffe es hilft.

    Verwandte Themen