Member since
03-24-2016
184
Posts
239
Kudos Received
39
Solutions
My Accepted Solutions
Title | Views | Posted |
---|---|---|
2683 | 10-21-2017 08:24 PM | |
1643 | 09-24-2017 04:06 AM | |
5794 | 05-15-2017 08:44 PM | |
1780 | 01-25-2017 09:20 PM | |
5884 | 01-22-2017 11:51 PM |
10-20-2016
05:00 PM
@khorvath Just took another pass at it. The /var/log/recipes folder on the Ambari node of that cluster is empty. However, I noticed the /var/log/salt directory and took a look at /var/log/salt/master. Here is the output: 2016-10-20 16:46:51,190 [salt.utils.process ][DEBUG ][3610] Started 'salt.loaded.int.netapi.rest_cherrypy.start' with pid 2406
2016-10-20 16:46:51,193 [salt.utils.event ][DEBUG ][2406] MasterEvent PUB socket URI: ipc:///var/run/salt/master/master_event_pub.ipc
2016-10-20 16:46:51,193 [salt.utils.event ][DEBUG ][2406] MasterEvent PULL socket URI: ipc:///var/run/salt/master/master_event_pull.ipc
2016-10-20 16:46:51,194 [salt.utils.event ][DEBUG ][2406] Sending event - data = {'_stamp': '2016-10-20T16:46:51.194082'}
2016-10-20 16:46:51,208 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:51] ENGINE Listening for SIGHUP.
2016-10-20 16:46:51,208 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:51] ENGINE Listening for SIGTERM.
2016-10-20 16:46:51,208 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:51] ENGINE Listening for SIGUSR1.
2016-10-20 16:46:51,208 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:51] ENGINE Bus STARTING
2016-10-20 16:46:51,209 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:51] ENGINE Started monitor thread '_TimeoutMonitor'.
2016-10-20 16:46:51,210 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:51] ENGINE Started monitor thread 'Autoreloader'.
2016-10-20 16:46:56,251 [cherrypy.error ][ERROR ][2406] [20/Oct/2016:16:46:56] ENGINE Error in 'start' listener <bound method Server.start of <cherrypy._cpserver.Server object at 0x2ee7890>>
Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/cherrypy/process/wspbus.py", line 197, in publish
output.append(listener(*args, **kwargs))
File "/usr/lib/python2.6/site-packages/cherrypy/_cpserver.py", line 151, in start
ServerAdapter.start(self)
File "/usr/lib/python2.6/site-packages/cherrypy/process/servers.py", line 167, in start
wait_for_free_port(*self.bind_addr)
File "/usr/lib/python2.6/site-packages/cherrypy/process/servers.py", line 410, in wait_for_free_port
raise IOError("Port %r not free on %r" % (port, host))
IOError: Port 3080 not free on '0.0.0.0'
2016-10-20 16:46:56,251 [cherrypy.error ][ERROR ][2406] [20/Oct/2016:16:46:56] ENGINE Shutting down due to error in start listener:
Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/cherrypy/process/wspbus.py", line 235, in start
self.publish('start')
File "/usr/lib/python2.6/site-packages/cherrypy/process/wspbus.py", line 215, in publish
raise exc
ChannelFailures: IOError("Port 3080 not free on '0.0.0.0'",)
2016-10-20 16:46:56,252 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:56] ENGINE Bus STOPPING
2016-10-20 16:46:56,252 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:56] ENGINE HTTP Server cherrypy._cpwsgi_server.CPWSGIServer(('0.0.0.0', 3080)) already shut down
2016-10-20 16:46:56,253 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:56] ENGINE Stopped thread '_TimeoutMonitor'.
2016-10-20 16:46:56,253 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:56] ENGINE Stopped thread 'Autoreloader'.
2016-10-20 16:46:56,254 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:56] ENGINE Bus STOPPED
2016-10-20 16:46:56,254 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:56] ENGINE Bus EXITING
2016-10-20 16:46:56,255 [cherrypy.error ][INFO ][2406] [20/Oct/2016:16:46:56] ENGINE Bus EXITED
2016-10-20 16:46:56,257 [salt.utils.process ][INFO ][3610] Process <function start at 0x2d54410> (2406) died with exit status None, restarting...
This is the process listening on 3080 root 9513 3610 0 16:52 ? 00:00:02 /usr/bin/python2.6 /usr/bin/salt-api -d
I tried killing this process but it just get recreated. I think this is the problem, just not sure how to address it. 2016-10-20 16:46:56,251 [cherrypy.error ][ERROR ][2406] [20/Oct/2016:16:46:56] ENGINE Error in 'start' listener <bound method Server.start of <cherrypy._cpserver.Server object at 0x2ee7890>>
Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/cherrypy/process/wspbus.py", line 197, in publish
output.append(listener(*args, **kwargs))
File "/usr/lib/python2.6/site-packages/cherrypy/_cpserver.py", line 151, in start
ServerAdapter.start(self)
File "/usr/lib/python2.6/site-packages/cherrypy/process/servers.py", line 167, in start
wait_for_free_port(*self.bind_addr)
File "/usr/lib/python2.6/site-packages/cherrypy/process/servers.py", line 410, in wait_for_free_port
raise IOError("Port %r not free on %r" % (port, host))
IOError: Port 3080 not free on '0.0.0.0'
2016-10-20 16:46:56,251 [cherrypy.error ][ERROR ][2406] [20/Oct/2016:16:46:56] ENGINE Shutting down due to error in start listener:
Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/cherrypy/process/wspbus.py", line 235, in start
self.publish('start')
File "/usr/lib/python2.6/site-packages/cherrypy/process/wspbus.py", line 215, in publish
raise exc
ChannelFailures: IOError("Port 3080 not free on '0.0.0.0'",)
... View more
10-20-2016
02:19 PM
@khorvath I just tried a fresh deployment. I am defining a recipe but I don't see anything that references it in the logs. I also don't see a /var/log/recipes directory. Here is the doctor output: [root@vvaks-cb cloudbreak-deployment]# DEBUG=1 cbd doctor
[DEBUG] Use profile: Profile
[DEBUG] Creating '.tmp' directory if not exist
[DEBUG] Cloudbreak Deployer 1.6.0
===> Deployer doctor: Checks your environment, and reports a diagnose.
uname: Linux vvaks-cb 3.10.0-327.18.2.el7.x86_64 #1 SMP Thu May 12 11:03:55 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
local version:1.6.0
latest release:1.6.0
docker images:
hortonworks/haveged:1.1.0
hortonworks/socat:1.0.0
hortonworks/cloudbreak-uaa-db:v3.6.0
hortonworks/cloudbreak-uaa:3.6.0
hortonworks/cloudbreak-server-db:1.2.0
hortonworks/cloudbreak:1.6.0
hortonworks/cloudbreak-auth:1.6.0
hortonworks/cloudbreak-web:1.6.0
hortonworks/cloudbreak-autoscale-db:1.2.0
hortonworks/cloudbreak-autoscale:1.6.0
docker command exists: OK
[DEBUG] versionstr=Docker version 1.9.1, build a34a1d5
[DEBUG] fullver=1.9.1
[DEBUG] numver=191
docker client version: 1.9.1
[DEBUG] serverVer=1.9.1
docker client version: 1.9.1
ping 8.8.8.8 on host: OK
ping github.com on host: OK
ping 8.8.8.8 in container: OK
ping github.com in container: OK
[DEBUG] nameservers on host:
10.42.1.20
10.42.1.21
[DEBUG] bridge=172.17.0.1
[DEBUG] DOCKER_CONSUL_OPTIONS= -recursor 10.42.1.20 -recursor 10.42.1.21
[DEBUG] Generating docker-compose yaml: /root/cloudbreak-deployment/.deps/tmp/docker-compose-delme.yml ...
[DEBUG] docker-compose.yml already exist, and generate wouldn't change it.
[DEBUG] Generating Identity server config: /root/cloudbreak-deployment/.deps/tmp/uaa-delme.yml ...
[DEBUG] uaa.yml exists and generate wouldn't change it
[DEBUG] kill all exited container labeled as: cbreak.sidekick
Listing of /var/log directory: [root@vvaks-cb cloudbreak-deployment]# ls /var/log/
anaconda boot.log chrony cloud-init-output.log dmesg grubby maillog ntpstats secure tallylog wtmp
audit btmp cloud-init.log cron dmesg.old lastlog messages ppp spooler tuned yum.log
... View more
10-19-2016
08:58 PM
3 Kudos
This is a single node "cluster" with most of the HDP stack installed on a single 32GB node. I am able to log into the node via SSH and into Ambari UI. I can see that all of the service are up and running and I am able to use service like Hive, Hbase, Atlas, ect. The deployment seems to be successfull but Cloudbreak eventually shows the cluster creation attempt as failed. In the logs it trie sthe following 90 times: 2016-10-19 20:39:53,954 [containerBootstrapBuilderExecutor-9] call:68 WARN c.s.c.o.OrchestratorBootstrapRunner - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Orchestrator component SaltJobIdTracker failed to start, retrying [89/90] Elapsed time: 752 ms; Reason: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt, additional info: SaltJobIdTracker{saltJobRunner=HighStateChecker{BaseSaltJobRunner{target=[10.0.41.157], jid=JobId{jobId='20161019202401136474'}, jobState=IN_PROGRESS}}}
cloudbreak_1 | 2016-10-19 20:40:03,954 [containerBootstrapBuilderExecutor-9] isExitNeeded:87 DEBUG c.s.c.o.OrchestratorBootstrapRunner - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] exitCriteriaModel: ClusterDeletionBasedExitCriteriaModel{stackId=6, clusterId=6}, exitCriteria: com.sequenceiq.cloudbreak.core.bootstrap.service.ClusterDeletionBasedExitCriteria@25e33b4f
cloudbreak_1 | 2016-10-19 20:40:03,954 [containerBootstrapBuilderExecutor-9] isExitNeeded:19 DEBUG c.s.c.c.b.s.ClusterDeletionBasedExitCriteria - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Check isExitNeeded for model: ClusterDeletionBasedExitCriteriaModel{stackId=6, clusterId=6}
cloudbreak_1 | 2016-10-19 20:40:03,954 [containerBootstrapBuilderExecutor-9] isExitNeeded:90 DEBUG c.s.c.o.OrchestratorBootstrapRunner - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] isExitNeeded: false
cloudbreak_1 | 2016-10-19 20:40:03,955 [containerBootstrapBuilderExecutor-9] call:59 INFO c.s.c.o.OrchestratorBootstrapRunner - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Calling orchestrator bootstrap: SaltJobIdTracker, additional info: SaltJobIdTracker{saltJobRunner=HighStateChecker{BaseSaltJobRunner{target=[10.0.41.157], jid=JobId{jobId='20161019202401136474'}, jobState=IN_PROGRESS}}}
cloudbreak_1 | 2016-10-19 20:40:03,955 [containerBootstrapBuilderExecutor-9] call:43 INFO c.s.c.o.s.p.SaltJobIdTracker - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Job: 20161019202401136474 is running currently checking the current state.
cloudbreak_1 | 2016-10-19 20:40:04,830 [containerBootstrapBuilderExecutor-9] run:99 INFO c.s.c.o.s.c.SaltConnector - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Salt run response: RunningJobsResponse{result=[{20161019202401136474={Function=state.highstate, Returned=[], Target-type=glob, Running=[{ip-10-0-41-157.ec2.internal=27848}], User=saltuser, Arguments=[], Target=*}}]}
cloudbreak_1 | 2016-10-19 20:40:04,831 [containerBootstrapBuilderExecutor-9] jobIsRunning:124 INFO c.s.c.o.s.s.SaltStates - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Active salt jobs: RunningJobsResponse{result=[{20161019202401136474={Function=state.highstate, Returned=[], Target-type=glob, Running=[{ip-10-0-41-157.ec2.internal=27848}], User=saltuser, Arguments=[], Target=*}}]}
cloudbreak_1 | 2016-10-19 20:40:04,831 [containerBootstrapBuilderExecutor-9] checkIsFinished:66 INFO c.s.c.o.s.p.SaltJobIdTracker - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Job: 20161019202401136474 is running currently, waiting for next polling attempt.
cloudbreak_1 | 2016-10-19 20:40:04,831 [containerBootstrapBuilderExecutor-9] call:68 WARN c.s.c.o.OrchestratorBootstrapRunner - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Orchestrator component SaltJobIdTracker failed to start, retrying [90/90] Elapsed time: 876 ms; Reason: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt, additional info: SaltJobIdTracker{saltJobRunner=HighStateChecker{BaseSaltJobRunner{target=[10.0.41.157], jid=JobId{jobId='20161019202401136474'}, jobState=IN_PROGRESS}}}
After the 90th attempt: cloudbreak_1 | 2016-10-19 20:40:04,831 [containerBootstrapBuilderExecutor-9] call:78 ERROR c.s.c.o.OrchestratorBootstrapRunner - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Orchestrator component failed to start in 90 attempts: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt
cloudbreak_1 | 2016-10-19 20:40:04,846 [reactorDispatcher-89] executeRecipes:300 ERROR c.s.c.o.s.SaltOrchestrator - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Error occurred during recipe execution
cloudbreak_1 | java.util.concurrent.ExecutionException: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt
cloudbreak_1 | at java.util.concurrent.FutureTask.report(FutureTask.java:122)
cloudbreak_1 | at java.util.concurrent.FutureTask.get(FutureTask.java:192)
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.salt.SaltOrchestrator.runNewService(SaltOrchestrator.java:274)
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.salt.SaltOrchestrator.executeRecipes(SaltOrchestrator.java:294)
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.salt.SaltOrchestrator.postInstallRecipes(SaltOrchestrator.java:233)
cloudbreak_1 | at com.sequenceiq.cloudbreak.service.cluster.flow.OrchestratorRecipeExecutor.postInstall(OrchestratorRecipeExecutor.java:77)
cloudbreak_1 | at com.sequenceiq.cloudbreak.service.cluster.flow.RecipeEngine.executePostInstall(RecipeEngine.java:94)
cloudbreak_1 | at com.sequenceiq.cloudbreak.service.cluster.flow.AmbariClusterConnector.buildAmbariCluster(AmbariClusterConnector.java:223)
cloudbreak_1 | at com.sequenceiq.cloudbreak.core.cluster.AmbariClusterCreationService.buildAmbariCluster(AmbariClusterCreationService.java:27)
cloudbreak_1 | at com.sequenceiq.cloudbreak.reactor.handler.cluster.InstallClusterHandler.accept(InstallClusterHandler.java:35)
cloudbreak_1 | at com.sequenceiq.cloudbreak.reactor.handler.cluster.InstallClusterHandler.accept(InstallClusterHandler.java:18)
cloudbreak_1 | at reactor.bus.EventBus$3.accept(EventBus.java:317)
cloudbreak_1 | at reactor.bus.EventBus$3.accept(EventBus.java:310)
cloudbreak_1 | at reactor.bus.routing.ConsumerFilteringRouter.route(ConsumerFilteringRouter.java:72)
cloudbreak_1 | at reactor.bus.routing.TraceableDelegatingRouter.route(TraceableDelegatingRouter.java:51)
cloudbreak_1 | at reactor.bus.EventBus.accept(EventBus.java:591)
cloudbreak_1 | at reactor.bus.EventBus.accept(EventBus.java:63)
cloudbreak_1 | at reactor.core.dispatch.AbstractLifecycleDispatcher.route(AbstractLifecycleDispatcher.java:160)
cloudbreak_1 | at reactor.core.dispatch.MultiThreadDispatcher$MultiThreadTask.run(MultiThreadDispatcher.java:74)
cloudbreak_1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
cloudbreak_1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
cloudbreak_1 | at java.lang.Thread.run(Thread.java:745)
cloudbreak_1 | Caused by: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.salt.poller.SaltJobIdTracker.call(SaltJobIdTracker.java:54)
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.OrchestratorBootstrapRunner.call(OrchestratorBootstrapRunner.java:60)
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.OrchestratorBootstrapRunner.call(OrchestratorBootstrapRunner.java:14)
cloudbreak_1 | at java.util.concurrent.FutureTask.run(FutureTask.java:266)
cloudbreak_1 | ... 3 common frames omitted
cloudbreak_1 | 2016-10-19 20:40:04,847 [reactorDispatcher-89] buildAmbariCluster:238 ERROR c.s.c.s.c.f.AmbariClusterConnector - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] Error while building the Ambari cluster. Message com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: java.util.concurrent.ExecutionException: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt, throwable: {}
cloudbreak_1 | com.sequenceiq.cloudbreak.core.CloudbreakException: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: java.util.concurrent.ExecutionException: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt
cloudbreak_1 | at com.sequenceiq.cloudbreak.service.cluster.flow.OrchestratorRecipeExecutor.postInstall(OrchestratorRecipeExecutor.java:80)
cloudbreak_1 | at com.sequenceiq.cloudbreak.service.cluster.flow.RecipeEngine.executePostInstall(RecipeEngine.java:94)
cloudbreak_1 | at com.sequenceiq.cloudbreak.service.cluster.flow.AmbariClusterConnector.buildAmbariCluster(AmbariClusterConnector.java:223)
cloudbreak_1 | at com.sequenceiq.cloudbreak.core.cluster.AmbariClusterCreationService.buildAmbariCluster(AmbariClusterCreationService.java:27)
cloudbreak_1 | at com.sequenceiq.cloudbreak.reactor.handler.cluster.InstallClusterHandler.accept(InstallClusterHandler.java:35)
cloudbreak_1 | at com.sequenceiq.cloudbreak.reactor.handler.cluster.InstallClusterHandler.accept(InstallClusterHandler.java:18)
cloudbreak_1 | at reactor.bus.EventBus$3.accept(EventBus.java:317)
cloudbreak_1 | at reactor.bus.EventBus$3.accept(EventBus.java:310)
cloudbreak_1 | at reactor.bus.routing.ConsumerFilteringRouter.route(ConsumerFilteringRouter.java:72)
cloudbreak_1 | at reactor.bus.routing.TraceableDelegatingRouter.route(TraceableDelegatingRouter.java:51)
cloudbreak_1 | at reactor.bus.EventBus.accept(EventBus.java:591)
cloudbreak_1 | at reactor.bus.EventBus.accept(EventBus.java:63)
cloudbreak_1 | at reactor.core.dispatch.AbstractLifecycleDispatcher.route(AbstractLifecycleDispatcher.java:160)
cloudbreak_1 | at reactor.core.dispatch.MultiThreadDispatcher$MultiThreadTask.run(MultiThreadDispatcher.java:74)
cloudbreak_1 | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
cloudbreak_1 | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
cloudbreak_1 | at java.lang.Thread.run(Thread.java:745)
cloudbreak_1 | Caused by: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: java.util.concurrent.ExecutionException: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.salt.SaltOrchestrator.executeRecipes(SaltOrchestrator.java:301)
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.salt.SaltOrchestrator.postInstallRecipes(SaltOrchestrator.java:233)
cloudbreak_1 | at com.sequenceiq.cloudbreak.service.cluster.flow.OrchestratorRecipeExecutor.postInstall(OrchestratorRecipeExecutor.java:77)
cloudbreak_1 | ... 16 common frames omitted
cloudbreak_1 | Caused by: java.util.concurrent.ExecutionException: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt
cloudbreak_1 | at java.util.concurrent.FutureTask.report(FutureTask.java:122)
cloudbreak_1 | at java.util.concurrent.FutureTask.get(FutureTask.java:192)
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.salt.SaltOrchestrator.runNewService(SaltOrchestrator.java:274)
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.salt.SaltOrchestrator.executeRecipes(SaltOrchestrator.java:294)
cloudbreak_1 | ... 18 common frames omitted
cloudbreak_1 | Caused by: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.salt.poller.SaltJobIdTracker.call(SaltJobIdTracker.java:54)
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.OrchestratorBootstrapRunner.call(OrchestratorBootstrapRunner.java:60)
cloudbreak_1 | at com.sequenceiq.cloudbreak.orchestrator.OrchestratorBootstrapRunner.call(OrchestratorBootstrapRunner.java:14)
cloudbreak_1 | at java.util.concurrent.FutureTask.run(FutureTask.java:266)
cloudbreak_1 | ... 3 common frames omitted
cloudbreak_1 | 2016-10-19 20:40:04,847 [reactorDispatcher-89] accept:70 DEBUG c.s.c.c.f.Flow2Handler - [owner:46c1f915-0f53-4567-b233-de54ed271274] [type:STACK] [id:6] [name:credit-fraud-demo] flow control event arrived: key: INSTALLCLUSTERFAILED, flowid: ae4d5d90-b13d-4b82-a0d4-0b0a9c75f0ac, payload: com.sequenceiq.cloudbreak.reactor.api.event.cluster.InstallClusterFailed@3af981e
In Cloudbreak UI: Ambari cluster could not be created. Reason: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: java.util.concurrent.ExecutionException: com.sequenceiq.cloudbreak.orchestrator.exception.CloudbreakOrchestratorFailedException: Job: JobId{jobId='20161019202401136474'} is running currently, waiting for next polling attempt I am using the default fully open network config for aws.
... View more
Labels:
- Labels:
-
Hortonworks Cloudbreak
10-02-2016
04:37 PM
1 Kudo
Money management and retirement planning are extremely important issues. The conventional wisdom says to get a Financial Advisor who will invest your money and allow you to reach your financial goals. However, as of late, financial institutions have began to offer services generally referred to as Digital Advisors or "Robo Advisors". These services aim to offer a very low cost, broad spectrum, long term investment advice across a limited set of financial products. The advice is personalized based on basic input from the customer such as level of risk tolerance, initial investment, years to invest, ect. The basic premise behind the offering is diversification. Statistics have shown that few money managers are able to beat the S&P 500 over the long term, especially after fees. The Digital Advisor aims to spread the initial investment across a broad spectrum of securities at a much lower cost. The Digital Advisor provides another major advantage over the Human Financial Advisor. Using the power of distributed processing and Monte Carlo simulation methodology, the Digital Advisor is able to project the returns of the recommended portfolio. This capability allows the Digital Advisor to show a confidence range of likelihoods for future portfolio value. Depending on the level of sophistication, the Digital Avisor could use similar methodology to periodically re-run the projections to determine if the portfolio is on track. If not, the portfolio can be adjusted to address unforeseen market conditions. The financial industry has been using the Month Carol method to project investment returns and evaluate risk for some time. The basic principle behind the Monte Carlo method is to establish a model(mathematical equation) that represents the target scenario. The model should include a representation of a range of possible outcomes. This is typically done using historical performance and current market data. The next step is to develop a pseudo-random number generator to create data that can be plugged into the model. The generator is pseudo-random because it must only generate numbers that would fit into the range of outcomes represented in the model. The last step is to generate and plug pseudo-random numbers into the model over and over again. This idea is that the outcomes that are most likely based on the model, will occur most frequently. Thus, the Monte Carlo simulation can project the likely outcome for an investment strategy. Let's take a look at an example of a simplified Digital Advisor implementation. https://community.hortonworks.com/repos/54060/spark-and-zeppelin-digital-advisor-demo.html https://www.zeppelinhub.com/viewer/notebooks/aHR0cHM6Ly9yYXcuZ2l0aHVidXNlcmNvbnRlbnQuY29tL3Zha3Nob3J0b24vRGlnaXRhbEFkdmlzb3IvbWFzdGVyL3plcHBlbGluL25vdGVib29rL0RpZ2l0YWxGaW5hbmNpYWxBZHZpc29yRGVtby5qc29u
This demonstration is implemented as an Apache Zeppelin notebook using Apache Spark on the Hortonworks Data Platform. Apache Spark is the ideal engine for Monte Carlo simulation. Spark has a very user friendly API, it can spread complex computations across many host's processors, and it can reduce completion time by caching intermediate result sets in memory. Apache Zeppelin is a great compliment to Spark. Zeppelin provides a clean and simple interface that can leverage SparkSQL to visualize complex result sets.
The first two sections create a form for user input and gather historical data from Yahoo. This data is required in order to create the model that the simulation is based on. Next, the Digital Advisor generates a portfolio based on the user's indicated risk tolerance. Real world portfolio selection can be extremely involved. For the purposes of this demonstration, the implementation only ensures that the user's risk tolerance is honored. Finally, the actual model that underpins the simulation is created. The time scale is adjusted to take into account annual as opposed to daily returns. Each instrument in the portfolio is a assigned a likely range of return based on historical standard deviation. When the simulation starts, the algoritm calculates the annual rate of return for each portfolio instrument by plugging in a pseudo-random value within the standard deviation. Using the rate of return, the actual value of each instrument is derived. This step is repeated for the number of years requested by the user, keeping track of total value year over year. The result of this entire process represents a single final possible outcome for the portfolio. In order to have any confidence in the prediction it is necessary to repeat the entire process many times. Each repeated simulation provides an new possible outcome. When the requested number of simulations are completed, Zeppelin leverages SparkSQL to create visualizations of each simulated portfolio path, possible range and confidence of final portfolio value.
... View more
Labels:
09-20-2016
06:16 PM
@Pranav Vashisht You can achieve this using the DSL search feature. DSL is a SQL like syntax. Here are some examples from the Atlas website: DSL Examples For the model, Asset - attributes name, owner, description DB - supertype Asset - attributes clusterName, parameters, comment Column - extends Asset - attributes type, comment Table - supertype Asset - db, columns, parameters, comment Traits - PII, Log Data DSL queries: * from DB DB where name="Reporting" select name, owner DB where name="Reporting" select name, owner orderby name DB where name="Reporting" select name limit 10 DB where name="Reporting" select name, owner limit 10 offset 0 DB where name="Reporting" select name, owner orderby name limit 10 offset 5 DB where name="Reporting" select name, owner orderby name desc limit 10 offset 5 DB has name DB is JdbcAccess Column where Column isa PII Table where name="sales_fact", columns Table where name="sales_fact", columns as column select column.name, column.dataType, column.comment `Log Data`
... View more
09-06-2016
08:23 PM
@Sumit Chakraborty This like some sort of issue with the REST client. Try the same thing using CURL as the rest client. Copy and past: { "enumTypes": [], "structTypes": [], "traitTypes": [ { "superTypes": [], "hierarchicalMetaTypeName": "org.apache.atlas.typesystem.types.TraitType", "typeName": "TagColumn_56_Api", "attributeDefinitions": [ { "testAttrKey": "TestAttrValue" } ] } ], "classTypes": [] } into a file called payload.json. curl -u admin:admin -d @payload.json -H "Content-Type: application/json" -X POST http://192.168.1.56:21000/api/atlas/types
Let me know if that works.
... View more
09-02-2016
04:29 PM
1 Kudo
@Tariq I am repeating my answer from the other thread. If you need implementation details, let me know. First you create the new types in Atlas. For example, in the case of Oracle, and Oracle table type, column type, ect. You would then create a script or process that pulls the meta data from the source meta data store. Once you have the meta data you want to store in Atlas, your process would create the associated Atlas entities, based on the new types, using the Java API or JSON representations through the REST API directly. If you wanted to, you could add lineage to that as you store the new entities. That's it... now the meta data from the external meta data store is in Atlas.
... View more
09-02-2016
12:47 PM
1 Kudo
@Manoj Dhake Try this: curl -u admin:admin -d @{location of file}/data.json -X POST https://sandbox.hortonworks.com:21000/api/atlas/entities/{guid}
The payload (contents of the data.json file) should look something like this {
"jsonClass": "org.apache.atlas.typesystem.json.InstanceSerialization$_Reference",
"id": {
"jsonClass": "org.apache.atlas.typesystem.json.InstanceSerialization$_Id",
"id": "f118e893-ccca-4d37-9791-b33fb265d053",
"version": 0,
"typeName": "hive_process",
"state": "ACTIVE"
},
"typeName": "hive_process",
"values": {
"outputs": [
],
"inputs": [
],
},
"traitNames": [
],
"traits": {
}
}
Basically, you just send the ID block of the target entity and then the values that you want to change. In this case, you only send the input and output values as blank arrays. That should clear those those fields and remove the lineage graph. If you only want to remove some of the lineage, then remove only the entity references that you don't want to see in the lineage graph. Let me know how that works out.
... View more
08-31-2016
10:05 PM
2 Kudos
@mark doutre Check out this article https://community.hortonworks.com/content/kbentry/51379/avro-schema-registry-with-apache-atlas-for-streami.html and this tutorial https://community.hortonworks.com/articles/51432/apache-atlas-as-an-avro-schema-registry-test-drive.html Hortonworks is looking into providing an official Avro Schema Registry with Integration to Atlas but this is an example of how you can implement it yourself and the benefits it would bring.
... View more
08-30-2016
04:31 PM
2 Kudos
@Manoj Dhake
There are several super types in Atlas that most of the existing types inherit from. Two key super types are Process and DataSet. The Process type has two fields that play a key role in Lineage tracking, Inputs and Outputs.
{"typeName":"Process","definition":{"enumTypes":[],"structTypes":[],"traitTypes":[],"classTypes":[{"superTypes":["Referenceable","Asset"],"hierarchicalMetaTypeName":"org.apache.atlas.typesystem.types.ClassType","typeName":"Process","typeDescription":null,"attributeDefinitions":[{"name":"inputs","dataTypeName":"array<DataSet>","multiplicity":"optional","isComposite":false,"isUnique":false,"isIndexable":true,"reverseAttributeName":null},{"name":"outputs","dataTypeName":"array<DataSet>","multiplicity":"optional","isComposite":false,"isUnique":false,"isIndexable":true,"reverseAttributeName":null}]}]},"requestId":"qtp1853177759-436 - 00d1cf83-1bc6-4b49-820f-d907e42c4c27"}
In your case, the "create table if" entities are Process types and posses the Input and Output attributes. The reasons Atlas knows to connect EMR.PATIENT... and EMR.CONDITION... entities to the first "create table if" entity is that EMR.PATIENT and EMR.CONDITION are both entities based on DataSet types that are referenced in the Input field of "create table if" entity. Similarly the PATIENT360 entity is also of DataSet type that is referenced in the Output field of that same "create table if" entity. Here is a generic example with a Hive Table: {"requestId":"qtp1853177759-388 - a98ad750-6fd7-41e9-8fbd-4117c844f8d1","definition":{"jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Reference","id":{"jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Id","id":"f118e893-ccca-4d37-9791-b33fb265d053","version":0,"typeName":"hive_process","state":"ACTIVE"},"typeName":"hive_process","values":{"queryId":"hive_20160816002633_af9920a4-3cca-461a-ab00-87c9454e5cba","name":"create table sample_11 as select * from sample_10 where salary > 60000","startTime":"2016-08-16T00:26:33.732Z","queryPlan":"{}","description":null,"operationType":"CREATETABLE_AS_SELECT","outputs":[{"jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Id","id":"e7d3a765-662e-4303-ab32-251f22234382","version":0,"typeName":"DataSet","state":"ACTIVE"}],"endTime":"2016-08-16T00:26:39.424Z","recentQueries":["create table sample_11 as select * from sample_10 where salary > 60000"],"inputs":[{"jsonClass":"org.apache.atlas.typesystem.json.InstanceSerialization$_Id","id":"d24ee236-417e-4c12-ab0e-44bab7abb567","version":0,"typeName":"DataSet","state":"ACTIVE"}],"qualifiedName":"CREATETABLE_AS_SELECT:default.sample_10@sandbox->:default.sample_11@sandbox","queryText":"create table sample_11 as select * from sample_10 where salary > 60000","owner":null,"clusterName":"Sandbox","queryGraph":null,"userName":"admin"},"traitNames":[],"traits":{}}} This is and entity based on the hive_process type (resulting from a create table statement). Notice that the Input and Output fields contain entity references. If those fields were to be cleared or modified to contain fewer referenced, the resulting Lineage graph should change. Give it a try and respond with a comment if you have any follow-ups.
... View more