Giter Site home page Giter Site logo

kubeflix's Introduction

This repository has been archived and resetted, you can still look at the git history for the old reference.

kubeflix's People

Contributors

chmouel avatar christian-posta avatar furkanzumrut avatar fusesource-ci avatar iocanel avatar irbis avatar jimmidyson avatar jstrachan avatar mootezbessifi avatar oscerd avatar raffaelespazzoli avatar rawlingsj avatar rhuss avatar siamaksade avatar stefaneg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kubeflix's Issues

Permission denied deploying Hystrix Dashboard 1.0.26 image on OpenShift

Not sure what version of the Jetty 9 base image fabric8/hystrix-dashboard:1.0.26 is using, but I hit permissions issues on OpenShift. Seems ok if I build & deploy using fabric8/jetty-9:1.1.10 as the base image.

Pod logs:

Checking *.war in /maven
Linking /maven/ROOT.war --> /opt/jetty/webapps/ROOT.war
ln: failed to create symbolic link '/opt/jetty/webapps/ROOT.war': Permission denied
Running Jetty: 
I> No access restrictor found, access to all MBean is allowed
Jolokia: Agent started with URL http://172.17.0.3:8778/jolokia/
2016-10-31 19:14:07.856:INFO:ifasjoejs.Server:jetty-8.y.z-SNAPSHOT
2016-10-31 19:14:07.893:INFO:ifasjoejs.AbstractConnector:Started [email protected]:9779
2016-10-31 19:14:08.162:INFO::main: Logging initialized @503ms
2016-10-31 19:14:08.218:WARN:oejs.HomeBaseWarning:main: This instance of Jetty is not running from a separate {jetty.base} directory, this is not recommended.  See documentation at http://www.eclipse.org/jetty/documentation/current/startup.html
2016-10-31 19:14:08.371:WARN:oejuc.FileNoticeLifeCycleListener:main: 
java.io.FileNotFoundException: /opt/jetty/jetty.state (Permission denied)
	at java.io.FileOutputStream.open0(Native Method)
	at java.io.FileOutputStream.open(FileOutputStream.java:270)
	at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
	at java.io.FileOutputStream.<init>(FileOutputStream.java:133)
	at java.io.FileWriter.<init>(FileWriter.java:78)
	at org.eclipse.jetty.util.component.FileNoticeLifeCycleListener.writeState(FileNoticeLifeCycleListener.java:45)
	at org.eclipse.jetty.util.component.FileNoticeLifeCycleListener.lifeCycleStarting(FileNoticeLifeCycleListener.java:57)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.setStarting(AbstractLifeCycle.java:188)
	at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:67)
	at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1510)
	at java.security.AccessController.doPrivileged(Native Method)
	at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1435)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:497)
	at org.eclipse.jetty.start.Main.invokeMain(Main.java:214)
	at org.eclipse.jetty.start.Main.start(Main.java:457)
	at org.eclipse.jetty.start.Main.main(Main.java:75)

failure to find turbine-discovery:jar

maven can't find the needed snapshot, which repo should I use? can someone share the url?

[ERROR] Failed to execute goal on project turbine-server: Could not resolve dependencies for project io.fabric8.kubeflix:turbine-server:war:1.0.12-SNAPSHOT: Failure to find io.fabric8.kubeflix:turbine-discovery:jar:1.0.12-SNAPSHOT in https://oss.sonatype.org/content/repositories/snapshots was cached in the local repository, resolution will not be reattempted until the update interval of sonatype-nexus-snapshots has elapsed or updates are forced -> [Help 1]

support kubernetes service discovery inside Zuul?

Folks might want to use Zuul to implement load balancing across multiple services using %age weightings etc. So it might be nice to support a Zuul plugin to do endpoint discovery for services Zuul talks to.

Ideally ingress in kubernetes will hopefully be a more natively supported option; but having Zuul support in kubeflix will let folks familiar with Zuul feel right at home

Unable to connect to Command Metric Stream. (with Kubeflix 1.0.16 and 1.0.17)

When I deployed Kubeflix 1.0.16 that uses openzipkin/zipkin-query:1.39.3 image I just see the following messages when I open the hystrix-dashboard:

  • Unable to connect to Command Metric Stream.
  • Unable to connect to Thread Pool Metric Stream.

In the Turbine Pod log I see a lot of exceptions:

016-05-10 15:41:33.481 ERROR [turbine-server,,,] 1 --- [InstanceMonitor] c.n.t.monitor.instance.InstanceMonitor   : Could not initiate connection to host, giving up: [Cannot GET /hystrix.stream]
480 2016-05-10 15:41:33.482  WARN [turbine-server,,,] 1 --- [InstanceMonitor] c.n.t.monitor.instance.InstanceMonitor   : Stopping InstanceMonitor for: 172.17.0.5 helloworld-msa
481 
482 com.netflix.turbine.monitor.instance.InstanceMonitor$MisconfiguredHostException: [Cannot GET /hystrix.stream]
483     at com.netflix.turbine.monitor.instance.InstanceMonitor.init(InstanceMonitor.java:318) ~[turbine-core-1.0.0.jar!/:na]
484     at com.netflix.turbine.monitor.instance.InstanceMonitor.access$100(InstanceMonitor.java:103) ~[turbine-core-1.0.0.jar!/:na]
485     at com.netflix.turbine.monitor.instance.InstanceMonitor$2.call(InstanceMonitor.java:235) [turbine-core-1.0.0.jar!/:na]
486     at com.netflix.turbine.monitor.instance.InstanceMonitor$2.call(InstanceMonitor.java:229) [turbine-core-1.0.0.jar!/:na]
487     at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_51]
488     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_51]
489     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_51]
490     at java.lang.Thread.run(Thread.java:745) [na:1.8.0_51]

improvement to the pod selection logic

Hi, currently it is assumed that the pods that are hystrix stream sources will have the hystrix.enabled label.
This may impose unnecessary constraints on the source pods. There could also be situations where multiple turbine serves need to be run in the same kubernetes cluster and there would be no way to specify which pods each turbine server should connect to.
I'd like to propose the following improvements:

  1. ability to specify a selector (as in Kubernetes' pod selector) to select the hystrix source pods. We can still default to hystrix.enabled if no selector is specified. A selector can match on multiple labels.
  2. ability to specify an hystrix cluster for the defined selector. If no cluster is specified that the cluster name could be the pod name (probably more discussion needed here).
  3. ability to specify multiple selectors. With this multiple groups of pods would be selected and would report to the same turbine server.
  4. ability to specify a different URL suffix for each selector.

I should be able to provide 1 and 2 based on my previous project.
3 is not urgent for me and my current endeavor but I think it would be useful in the long term
4 goes together with 3 but I'm afraid there is no easy way to do it unless upgrading to turbine 2.x, which wasn't very mature last time I looked at it.

Build failure

Just tried to build this following the readme

INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Kubeflix :: Examples :: LoanBroker :: Broker 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[WARNING] The POM for io.fabric8.kubeflix:ribbon-discovery:jar:1.0-SNAPSHOT is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Kubeflix :: Examples :: Loan Broker ................ SUCCESS [ 1.243 s]
[INFO] Kubeflix :: Examples :: LoanBroker :: Credit Bureau SUCCESS [ 25.254 s]
[INFO] Kubeflix :: Examples :: LoanBroker :: Bank ......... SUCCESS [ 13.897 s]
[INFO] Kubeflix :: Examples :: LoanBroker :: Broker ....... FAILURE [ 0.033 s]
[INFO] Kubeflix :: Examples :: LoanBroker :: Genearator ... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 44.511 s
[INFO] Finished at: 2016-10-24T17:04:50+01:00
[INFO] Final Memory: 71M/1104M
[ERROR] Failed to execute goal on project loanbroker-broker: Could not resolve dependencies for project io.fabric8.kubeflix.examples:loanbroker-broker:jar:1.0-SNAPSHOT: Failure to find io.fabric8.kubeflix:ribbon-discovery:jar:1.0-SNAPSHOT in https://repo.spring.io/libs-release was cached in the local repository, resolution will not be reattempted until the update interval of spring-releases has elapsed or updates are forced -> [Help 1]

turbine: how to make clusters work

I've tried to make the ?cluster=blah work, but it won't. I'm pretty sure I'm missing something, but I'm not really sure what.

So far, I'm creating everything with this yaml:

---
apiVersion: "v1"
kind: "ServiceAccount"
metadata:
  name: "turbine"
---
apiVersion: "extensions/v1beta1"
kind: "Deployment"
metadata:
  labels:
    project: "turbine-server"
    provider: "fabric8"
    version: "1.0.28"
    group: "io.fabric8.kubeflix"
  name: "turbine-server"
spec:
  replicas: 1
  selector:
    matchLabels:
      project: "turbine-server"
      provider: "fabric8"
      group: "io.fabric8.kubeflix"
  template:
    metadata:
      labels:
        project: "turbine-server"
        provider: "fabric8"
        version: "1.0.28"
        group: "io.fabric8.kubeflix"
    spec:
      containers:
      - env:
        - name: "KUBERNETES_NAMESPACE"
          valueFrom:
            fieldRef:
              fieldPath: "metadata.namespace"
        image: "fabric8/turbine-server:1.0.28"
        name: "turbine-server"
        ports:
        - containerPort: 8080
          name: "http"
        - containerPort: 8778
          name: "jolokia"
      serviceAccountName: "turbine"
---
apiVersion: "v1"
kind: "Service"
metadata:
  annotations:
    servicepath: "/turbine.stream"
  labels:
    project: "turbine-server"
    provider: "fabric8"
    version: "1.0.28"
    group: "io.fabric8.kubeflix"
  name: "turbine-server"
spec:
  ports:
  - port: 80
    protocol: "TCP"
    targetPort: 8080
  selector:
    project: "turbine-server"
    provider: "fabric8"
    group: "io.fabric8.kubeflix"
  type: "LoadBalancer"

I also enabled some services by annotating them:

apiVersion: v1
kind: Service
metadata:
  labels:
    hystrix.enabled: "true"
    hystrix.cluster: "svc1"

I'm not sure where I should put them, though. Should it be in the service or in the deployment?

Anyways, by doing this, I can access the turbine-server ELB addr + /turbine.stream, but, if a append a ?cluster=svc1 in the URL, I get a 404.

Seems like I'm missing some turbine configs, but I'm not sure how to do it and there is no example in the docs...

Thanks!

Fixed version build without examples

I'm wrapping my head around how to get this tool into our configuration management. What I'm looking for:

a. Have a defined and fixed version of all libraries deployed (no snapshots).
b. Use defined and fixed version of all maven plugins (or skip them all together and use dockerfiles directly if possible)
b. Skip all examples. Only deploy turbine, appropriate discovery modules and hystrix dashboard.
c. Use internal docker repo.
d. Rely on published builds through maven central (no local build/test).

Any thoughts?

Unable to build the loan broker example

I was getting the following error when trying to build the broker application under the loan broker example:

[ERROR] Failed to execute goal on project loanbroker-broker: Could not resolve dependencies for project io.fabric8.kubeflix.examples:loanbroker-broker:jar:1.0-SNAPSHOT: Failure to find io.fabric8.kubeflix:ribbon-discovery:jar:1.0-SNAPSHOT in https://repo.spring.io/libs-release was cached in the local repository, resolution will not be reattempted until the update interval of spring-releases has elapsed or updates are forced -> [Help 1]

I changed the pom to include the current version for the ribbon-discovery dependency which allowed the build to go through.

    <dependency>
      <groupId>io.fabric8.kubeflix</groupId>
      <artifactId>ribbon-discovery</artifactId>
      <version>1.0.26</version>
    </dependency>

Unable to run the loan broker example on a K8 cluster

I am trying to run the loanbroker sample but the services are failing to start. An example from the credit bureau is below. Please help been trying to stand this up as an example on using kubeflix over the naive Spring cloud approach but cannot get past this one.

Thanks,
Andrew

[INFO] F8:[NEW] loanbroker-credit-bureau-945504598-xd7wj status: Running 
[INFO] F8:[NEW] Tailing log of pod: loanbroker-credit-bureau-945504598-xd7wj
[INFO] F8:[NEW] Press Ctrl-C to scale down the app and stop tailing the log
[INFO] F8:[NEW] 
[INFO] F8: 16:14:56.414 [main] DEBUG io.fabric8.kubernetes.client.Config - Trying to configure client from Kubernetes config...
[INFO] F8: 16:14:56.448 [main] DEBUG io.fabric8.kubernetes.client.Config - Did not find Kubernetes config at: [/root/.kube/config]. Ignoring.
[INFO] F8: 16:14:56.449 [main] DEBUG io.fabric8.kubernetes.client.Config - Trying to configure client from service account...
[INFO] F8: 16:14:56.449 [main] DEBUG io.fabric8.kubernetes.client.Config - Found service account ca cert at: [/var/run/secrets/kubernetes.io/serviceaccount/ca.crt].
[INFO] F8: 16:14:56.466 [main] DEBUG io.fabric8.kubernetes.client.Config - Found service account token at: [/var/run/secrets/kubernetes.io/serviceaccount/token].
[INFO] F8: 16:14:56.466 [main] DEBUG io.fabric8.kubernetes.client.Config - Trying to configure client namespace from Kubernetes service account namespace path...
[INFO] F8: 16:14:56.467 [main] DEBUG io.fabric8.kubernetes.client.Config - Found service account namespace at: [/var/run/secrets/kubernetes.io/serviceaccount/namespace].
[INFO] F8: 2016-12-23 16:14:59.116  WARN [bootstrap,,,] 1 --- [           main] i.f.s.cloud.kubernetes.StandardPodUtils  : Failed to get pod with name:[loanbroker-credit-bureau-945504598-xd7wj]. You should look into this if things aren't working as you expect. Are you missing serviceaccount permissions?
[INFO] F8: 
[INFO] F8: io.fabric8.kubernetes.client.KubernetesClientException: An error has occurred.
[INFO] F8:      at io.fabric8.kubernetes.client.KubernetesClientException.launderThrowable(KubernetesClientException.java:57) ~[kubernetes-client-1.4.14.jar!/:na]
[INFO] F8:      at io.fabric8.kubernetes.client.dsl.base.BaseOperation.get(BaseOperation.java:172) ~[kubernetes-client-1.4.14.jar!/:na]
[INFO] F8:      at io.fabric8.spring.cloud.kubernetes.StandardPodUtils.internalGetPod(StandardPodUtils.java:56) [spring-cloud-kubernetes-core-0.1.3.jar!/:na]
[INFO] F8:      at io.fabric8.spring.cloud.kubernetes.StandardPodUtils.lambda$new$0(StandardPodUtils.java:40) [spring-cloud-kubernetes-core-0.1.3.jar!/:na]
[INFO] F8:      at io.fabric8.spring.cloud.kubernetes.StandardPodUtils$$Lambda$1/186276003.get(Unknown Source) [spring-cloud-kubernetes-core-0.1.3.jar!/:na]
[INFO] F8:      at io.fabric8.spring.cloud.kubernetes.LazilyInstantiate.swapper(LazilyInstantiate.java:41) [spring-cloud-kubernetes-core-0.1.3.jar!/:na]
[INFO] F8:      at io.fabric8.spring.cloud.kubernetes.LazilyInstantiate.lambda$new$0(LazilyInstantiate.java:34) [spring-cloud-kubernetes-core-0.1.3.jar!/:na]
[INFO] F8:      at io.fabric8.spring.cloud.kubernetes.LazilyInstantiate$$Lambda$2/1685538367.get(Unknown Source) [spring-cloud-kubernetes-core-0.1.3.jar!/:na]
[INFO] F8:      at io.fabric8.spring.cloud.kubernetes.LazilyInstantiate.get(LazilyInstantiate.java:29) [spring-cloud-kubernetes-core-0.1.3.jar!/:na]
[INFO] F8:      at io.fabric8.spring.cloud.kubernetes.profile.KubernetesProfileApplicationListener.addKubernetesProfile(KubernetesProfileApplicationListener.java:49) [spring-cloud-kubernetes-core-0.1.3.jar!/:na]
[INFO] F8:      at io.fabric8.spring.cloud.kubernetes.profile.KubernetesApplicationContextInitializer.initialize(KubernetesApplicationContextInitializer.java:53) [spring-cloud-kubernetes-core-0.1.3.jar!/:na]
[INFO] F8:      at org.springframework.boot.SpringApplication.applyInitializers(SpringApplication.java:635) [spring-boot-1.4.1.RELEASE.jar!/:1.4.1.RELEASE]
[INFO] F8:      at org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:349) [spring-boot-1.4.1.RELEASE.jar!/:1.4.1.RELEASE]
[INFO] F8:      at org.springframework.boot.SpringApplication.run(SpringApplication.java:313) [spring-boot-1.4.1.RELEASE.jar!/:1.4.1.RELEASE]
[INFO] F8:      at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:134) [spring-boot-1.4.1.RELEASE.jar!/:1.4.1.RELEASE]
[INFO] F8:      at org.springframework.cloud.bootstrap.BootstrapApplicationListener.bootstrapServiceContext(BootstrapApplicationListener.java:140) [spring-cloud-context-1.1.1.RELEASE.jar!/:1.1.1.RELEASE]
[INFO] F8:      at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:84) [spring-cloud-context-1.1.1.RELEASE.jar!/:1.1.1.RELEASE]
[INFO] F8:      at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:62) [spring-cloud-context-1.1.1.RELEASE.jar!/:1.1.1.RELEASE]
[INFO] F8:      at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166) [spring-context-4.3.3.RELEASE.jar!/:4.3.3.RELEASE]
[INFO] F8:      at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138) [spring-context-4.3.3.RELEASE.jar!/:4.3.3.RELEASE]
[INFO] F8:      at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:121) [spring-context-4.3.3.RELEASE.jar!/:4.3.3.RELEASE]
[INFO] F8:      at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:68) [spring-boot-1.4.1.RELEASE.jar!/:1.4.1.RELEASE]
[INFO] F8:      at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54) [spring-boot-1.4.1.RELEASE.jar!/:1.4.1.RELEASE]
[INFO] F8:      at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:337) [spring-boot-1.4.1.RELEASE.jar!/:1.4.1.RELEASE]
[INFO] F8:      at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) [spring-boot-1.4.1.RELEASE.jar!/:1.4.1.RELEASE]
[INFO] F8:      at org.springframework.boot.SpringApplication.run(SpringApplication.java:1186) [spring-boot-1.4.1.RELEASE.jar!/:1.4.1.RELEASE]
[INFO] F8:      at org.springframework.boot.SpringApplication.run(SpringApplication.java:1175) [spring-boot-1.4.1.RELEASE.jar!/:1.4.1.RELEASE]
[INFO] F8:      at io.fabric8.kubeflix.examples.loanbroker.creditbureau.Application.main(Application.java:30) [classes!/:na]
[INFO] F8:      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_40-internal]
[INFO] F8:      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_40-internal]
[INFO] F8:      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_40-internal]
[INFO] F8:      at java.lang.reflect.Method.invoke(Method.java:497) ~[na:1.8.0_40-internal]
[INFO] F8:      at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) [loanbroker-credit-bureau-1.0-SNAPSHOT.jar:na]
[INFO] F8:      at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) [loanbroker-credit-bureau-1.0-SNAPSHOT.jar:na]
[INFO] F8:      at org.springframework.boot.loader.Launcher.launch(Launcher.java:50) [loanbroker-credit-bureau-1.0-SNAPSHOT.jar:na]
[INFO] F8:      at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:58) [loanbroker-credit-bureau-1.0-SNAPSHOT.jar:na]
[INFO] F8: Caused by: java.net.UnknownHostException: kubernetes.default.svc: unknown error
[INFO] F8:      at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method) ~[na:1.8.0_40-internal]
[INFO] F8:      at java.net.InetAddress$2.lookupAllHostAddr(InetAddress.java:907) ~[na:1.8.0_40-internal]
[INFO] F8:      at java.net.InetAddress.getAddressesFromNameService(InetAddress.java:1302) ~[na:1.8.0_40-internal]
[INFO] F8:      at java.net.InetAddress.getAllByName0(InetAddress.java:1255) ~[na:1.8.0_40-internal]
[INFO] F8:      at java.net.InetAddress.getAllByName(InetAddress.java:1171) ~[na:1.8.0_40-internal]
[INFO] F8:      at java.net.InetAddress.getAllByName(InetAddress.java:1105) ~[na:1.8.0_40-internal]
[INFO] F8:      at okhttp3.Dns$1.lookup(Dns.java:39) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.connection.RouteSelector.resetNextInetSocketAddress(RouteSelector.java:172) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.connection.RouteSelector.nextProxy(RouteSelector.java:138) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.connection.RouteSelector.next(RouteSelector.java:80) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:178) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:129) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:98) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:109) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:124) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at io.fabric8.kubernetes.client.utils.HttpClientUtils$3.intercept(HttpClientUtils.java:102) ~[kubernetes-client-1.4.14.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:92) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:67) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:170) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at okhttp3.RealCall.execute(RealCall.java:60) ~[okhttp-3.4.1.jar!/:na]
[INFO] F8:      at io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse(OperationSupport.java:234) ~[kubernetes-client-1.4.14.jar!/:na]
[INFO] F8:      at io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse(OperationSupport.java:229) ~[kubernetes-client-1.4.14.jar!/:na]
[INFO] F8:      at io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleGet(OperationSupport.java:225) ~[kubernetes-client-1.4.14.jar!/:na]
[INFO] F8:      at io.fabric8.kubernetes.client.dsl.base.BaseOperation.handleGet(BaseOperation.java:590) ~[kubernetes-client-1.4.14.jar!/:na]
[INFO] F8:      at io.fabric8.kubernetes.client.dsl.base.BaseOperation.get(BaseOperation.java:165) ~[kubernetes-client-1.4.14.jar!/:na]
[INFO] F8:      ... 34 common frames omitted
[INFO] F8: 
[INFO] F8: 2016-12-23 16:14:59.409  INFO [bootstrap,,,] 1 --- [           main] s.c.a.AnnotationConfigApplicationContext : Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@2f410acf: startup date [Fri Dec 23 16:14:59 UTC 2016]; root of context hierarchy
[INFO] F8: 2016-12-23 16:15:00.503  INFO [bootstrap,,,] 1 --- [           main] trationDelegate$BeanPostProcessorChecker : Bean 'configurationPropertiesRebinderAutoConfiguration' of type [class org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$4813c385] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)

Exception while initializing NIWSDiscoveryLoadBalancer:hello-hystrix, niwsClientConfig:ClientConfig:ConnIdleEvictTimeMilliSeconds:30000, ProxyHost:null, VipAddress:null

Hello all,

I am try to run this sample but I got those error when access the ribbon service in kubernetes:

kubectl get services:
NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE
hello-hystrix 10.0.0.162 80:32210/TCP 6m
hello-ribbon 10.0.0.26 80:32199/TCP 6m
kubernetes 10.0.0.1 443/TCP 7m

Url: http://192.168.99.100:32199/hello

if I try access br hello-kystrix services its works fine.

I tryed google about those error, but I got no response.

Someone has any idea about what those error??

Thanks,

HTTP ERROR 503

Problem accessing /hello. Reason:

Service Unavailable

Caused by:

org.eclipse.jetty.servlet.ServletHolder$1: java.lang.RuntimeException: java.lang.RuntimeException: Exception while initializing NIWSDiscoveryLoadBalancer:hello-hystrix, niwsClientConfig:ClientConfig:ConnIdleEvictTimeMilliSeconds:30000, ProxyHost:null, VipAddress:null, PrimeConnectionsClassName:com.netflix.niws.client.http.HttpPrimeConnection, TrustStorePassword:null, IsClientAuthRequired:false, ClientClassName:com.netflix.niws.client.http.RestClient, EnableConnectionPool:true, EnableGZIPContentEncodingFilter:false, EnableZoneAffinity:false, SendBufferSize:null, KeyStore:null, ConnectionManagerTimeout:2000, RequestIdHeaderName:null, UseIPAddrForServer:false, MaxTotalHttpConnections:200, PoolMaxThreads:200, AppName:null, MaxAutoRetries:0, PoolKeepAliveTimeUnits:SECONDS, IsHostnameValidationRequired:null, NIWSServerListClassName:io.fabric8.kubeflix.ribbon.KubernetesServerList, PrimeConnectionsURI:/, NFLoadBalancerPingInterval:null, OkToRetryOnAllOperations:false, NFLoadBalancerMaxTotalPingTime:null, MaxRetriesPerServerPrimeConnection:9, RequestSpecificRetryOn:null, ReceiveBufferSize:null, StaleCheckingEnabled:null, NFLoadBalancerClassName:com.netflix.loadbalancer.ZoneAwareLoadBalancer, MaxConnectionsPerHost:50, KeyStorePassword:null, ConnectionCleanerRepeatInterval:30000, RulePredicateClasses:null, ProxyPort:null, ServerListRefreshInterval:null, ServerDownFailureLimit:null, VipAddressResolverClassName:com.netflix.client.SimpleVipAddressResolver, ForceClientPortConfiguration:null, DeploymentContextBasedVipAddresses:null, EnableMarkingServerDownOnReachingFailureLimit:null, ServerDownStatWindowInMillis:null, Linger:null, CustomSSLSocketFactoryClassName:null, EnableZoneExclusivity:false, Version:null, MaxHttpConnectionsPerHost:50, InitializeNFLoadBalancer:null, BackoffTimeout:null, GZipPayload:null, PrioritizeVipAddressBasedServers:true, PoolMinThreads:1, MaxAutoRetriesNextServer:1, PoolKeepAliveTime:900, NIWSServerListFilterClassName:null, MinPrimeConnectionsRatio:1.0, TrustStore:null, listOfServers:, SecurePort:null, ServerListUpdaterClassName:null, TargetRegion:null, ReadTimeout:5000, ConnectionPoolCleanerTaskEnabled:true, IsSecure:null, Port:7001, IgnoreUserTokenInConnectionPoolForSecureClient:null, FollowRedirects:false, MaxTotalConnections:200, ConnectTimeout:2000, NFLoadBalancerPingClassName:com.netflix.loadbalancer.DummyPing, MaxTotalTimeToPrimeConnections:30000, EnablePrimeConnections:false, NFLoadBalancerRuleClassName:com.netflix.loadbalancer.AvailabilityFilteringRule
at org.eclipse.jetty.servlet.ServletHolder.makeUnavailable(ServletHolder.java:575)
at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:632)
at org.eclipse.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:477)
at org.eclipse.jetty.servlet.ServletHolder.ensureInstance(ServletHolder.java:769)
at org.eclipse.jetty.servlet.ServletHolder.prepare(ServletHolder.java:754)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:578)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1114)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1048)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:119)
at org.eclipse.jetty.server.Server.handle(Server.java:517)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:302)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:242)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:245)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:75)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: java.lang.RuntimeException: Exception while initializing NIWSDiscoveryLoadBalancer:hello-hystrix, niwsClientConfig:ClientConfig:ConnIdleEvictTimeMilliSeconds:30000, ProxyHost:null, VipAddress:null, PrimeConnectionsClassName:com.netflix.niws.client.http.HttpPrimeConnection, TrustStorePassword:null, IsClientAuthRequired:false, ClientClassName:com.netflix.niws.client.http.RestClient, EnableConnectionPool:true, EnableGZIPContentEncodingFilter:false, EnableZoneAffinity:false, SendBufferSize:null, KeyStore:null, ConnectionManagerTimeout:2000, RequestIdHeaderName:null, UseIPAddrForServer:false, MaxTotalHttpConnections:200, PoolMaxThreads:200, AppName:null, MaxAutoRetries:0, PoolKeepAliveTimeUnits:SECONDS, IsHostnameValidationRequired:null, NIWSServerListClassName:io.fabric8.kubeflix.ribbon.KubernetesServerList, PrimeConnectionsURI:/, NFLoadBalancerPingInterval:null, OkToRetryOnAllOperations:false, NFLoadBalancerMaxTotalPingTime:null, MaxRetriesPerServerPrimeConnection:9, RequestSpecificRetryOn:null, ReceiveBufferSize:null, StaleCheckingEnabled:null, NFLoadBalancerClassName:com.netflix.loadbalancer.ZoneAwareLoadBalancer, MaxConnectionsPerHost:50, KeyStorePassword:null, ConnectionCleanerRepeatInterval:30000, RulePredicateClasses:null, ProxyPort:null, ServerListRefreshInterval:null, ServerDownFailureLimit:null, VipAddressResolverClassName:com.netflix.client.SimpleVipAddressResolver, ForceClientPortConfiguration:null, DeploymentContextBasedVipAddresses:null, EnableMarkingServerDownOnReachingFailureLimit:null, ServerDownStatWindowInMillis:null, Linger:null, CustomSSLSocketFactoryClassName:null, EnableZoneExclusivity:false, Version:null, MaxHttpConnectionsPerHost:50, InitializeNFLoadBalancer:null, BackoffTimeout:null, GZipPayload:null, PrioritizeVipAddressBasedServers:true, PoolMinThreads:1, MaxAutoRetriesNextServer:1, PoolKeepAliveTime:900, NIWSServerListFilterClassName:null, MinPrimeConnectionsRatio:1.0, TrustStore:null, listOfServers:, SecurePort:null, ServerListUpdaterClassName:null, TargetRegion:null, ReadTimeout:5000, ConnectionPoolCleanerTaskEnabled:true, IsSecure:null, Port:7001, IgnoreUserTokenInConnectionPoolForSecureClient:null, FollowRedirects:false, MaxTotalConnections:200, ConnectTimeout:2000, NFLoadBalancerPingClassName:com.netflix.loadbalancer.DummyPing, MaxTotalTimeToPrimeConnections:30000, EnablePrimeConnections:false, NFLoadBalancerRuleClassName:com.netflix.loadbalancer.AvailabilityFilteringRule
at com.netflix.loadbalancer.LoadBalancerBuilder.buildLoadBalancerFromConfigWithReflection(LoadBalancerBuilder.java:118)
at com.netflix.ribbon.transport.netty.http.LoadBalancingHttpClient$Builder.build(LoadBalancingHttpClient.java:180)
at com.netflix.ribbon.transport.netty.RibbonTransport.newHttpClient(RibbonTransport.java:151)
at com.netflix.ribbon.RibbonTransportFactory.newHttpClient(RibbonTransportFactory.java:51)
at com.netflix.ribbon.http.HttpResourceGroup.(HttpResourceGroup.java:73)
at com.netflix.ribbon.http.HttpResourceGroup$Builder.build(HttpResourceGroup.java:61)
at io.fabric8.kubeflix.examples.helloribbon.HelloRibbonServlet.(HelloRibbonServlet.java:49)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at java.lang.Class.newInstance(Class.java:442)
at org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2341)
at org.eclipse.jetty.servlet.ServletContextHandler$Context.createServlet(ServletContextHandler.java:1306)
at org.eclipse.jetty.servlet.ServletHolder.newInstance(ServletHolder.java:1193)
at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:593)
... 26 more
Caused by: java.lang.RuntimeException: Exception while initializing NIWSDiscoveryLoadBalancer:hello-hystrix, niwsClientConfig:ClientConfig:ConnIdleEvictTimeMilliSeconds:30000, ProxyHost:null, VipAddress:null, PrimeConnectionsClassName:com.netflix.niws.client.http.HttpPrimeConnection, TrustStorePassword:null, IsClientAuthRequired:false, ClientClassName:com.netflix.niws.client.http.RestClient, EnableConnectionPool:true, EnableGZIPContentEncodingFilter:false, EnableZoneAffinity:false, SendBufferSize:null, KeyStore:null, ConnectionManagerTimeout:2000, RequestIdHeaderName:null, UseIPAddrForServer:false, MaxTotalHttpConnections:200, PoolMaxThreads:200, AppName:null, MaxAutoRetries:0, PoolKeepAliveTimeUnits:SECONDS, IsHostnameValidationRequired:null, NIWSServerListClassName:io.fabric8.kubeflix.ribbon.KubernetesServerList, PrimeConnectionsURI:/, NFLoadBalancerPingInterval:null, OkToRetryOnAllOperations:false, NFLoadBalancerMaxTotalPingTime:null, MaxRetriesPerServerPrimeConnection:9, RequestSpecificRetryOn:null, ReceiveBufferSize:null, StaleCheckingEnabled:null, NFLoadBalancerClassName:com.netflix.loadbalancer.ZoneAwareLoadBalancer, MaxConnectionsPerHost:50, KeyStorePassword:null, ConnectionCleanerRepeatInterval:30000, RulePredicateClasses:null, ProxyPort:null, ServerListRefreshInterval:null, ServerDownFailureLimit:null, VipAddressResolverClassName:com.netflix.client.SimpleVipAddressResolver, ForceClientPortConfiguration:null, DeploymentContextBasedVipAddresses:null, EnableMarkingServerDownOnReachingFailureLimit:null, ServerDownStatWindowInMillis:null, Linger:null, CustomSSLSocketFactoryClassName:null, EnableZoneExclusivity:false, Version:null, MaxHttpConnectionsPerHost:50, InitializeNFLoadBalancer:null, BackoffTimeout:null, GZipPayload:null, PrioritizeVipAddressBasedServers:true, PoolMinThreads:1, MaxAutoRetriesNextServer:1, PoolKeepAliveTime:900, NIWSServerListFilterClassName:null, MinPrimeConnectionsRatio:1.0, TrustStore:null, listOfServers:, SecurePort:null, ServerListUpdaterClassName:null, TargetRegion:null, ReadTimeout:5000, ConnectionPoolCleanerTaskEnabled:true, IsSecure:null, Port:7001, IgnoreUserTokenInConnectionPoolForSecureClient:null, FollowRedirects:false, MaxTotalConnections:200, ConnectTimeout:2000, NFLoadBalancerPingClassName:com.netflix.loadbalancer.DummyPing, MaxTotalTimeToPrimeConnections:30000, EnablePrimeConnections:false, NFLoadBalancerRuleClassName:com.netflix.loadbalancer.AvailabilityFilteringRule
at com.netflix.loadbalancer.DynamicServerListLoadBalancer.initWithNiwsConfig(DynamicServerListLoadBalancer.java:131)
at com.netflix.client.ClientFactory.instantiateInstanceWithClientConfig(ClientFactory.java:205)
at com.netflix.loadbalancer.LoadBalancerBuilder.buildLoadBalancerFromConfigWithReflection(LoadBalancerBuilder.java:116)
... 41 more
Caused by: java.lang.NullPointerException
at io.fabric8.kubeflix.ribbon.KubernetesServerList.initWithNiwsConfig(KubernetesServerList.java:66)
at com.netflix.client.ClientFactory.instantiateInstanceWithClientConfig(ClientFactory.java:205)
at com.netflix.loadbalancer.DynamicServerListLoadBalancer.initWithNiwsConfig(DynamicServerListLoadBalancer.java:110)
... 43 more
Caused by:

java.lang.RuntimeException: java.lang.RuntimeException: Exception while initializing NIWSDiscoveryLoadBalancer:hello-hystrix, niwsClientConfig:ClientConfig:ConnIdleEvictTimeMilliSeconds:30000, ProxyHost:null, VipAddress:null, PrimeConnectionsClassName:com.netflix.niws.client.http.HttpPrimeConnection, TrustStorePassword:null, IsClientAuthRequired:false, ClientClassName:com.netflix.niws.client.http.RestClient, EnableConnectionPool:true, EnableGZIPContentEncodingFilter:false, EnableZoneAffinity:false, SendBufferSize:null, KeyStore:null, ConnectionManagerTimeout:2000, RequestIdHeaderName:null, UseIPAddrForServer:false, MaxTotalHttpConnections:200, PoolMaxThreads:200, AppName:null, MaxAutoRetries:0, PoolKeepAliveTimeUnits:SECONDS, IsHostnameValidationRequired:null, NIWSServerListClassName:io.fabric8.kubeflix.ribbon.KubernetesServerList, PrimeConnectionsURI:/, NFLoadBalancerPingInterval:null, OkToRetryOnAllOperations:false, NFLoadBalancerMaxTotalPingTime:null, MaxRetriesPerServerPrimeConnection:9, RequestSpecificRetryOn:null, ReceiveBufferSize:null, StaleCheckingEnabled:null, NFLoadBalancerClassName:com.netflix.loadbalancer.ZoneAwareLoadBalancer, MaxConnectionsPerHost:50, KeyStorePassword:null, ConnectionCleanerRepeatInterval:30000, RulePredicateClasses:null, ProxyPort:null, ServerListRefreshInterval:null, ServerDownFailureLimit:null, VipAddressResolverClassName:com.netflix.client.SimpleVipAddressResolver, ForceClientPortConfiguration:null, DeploymentContextBasedVipAddresses:null, EnableMarkingServerDownOnReachingFailureLimit:null, ServerDownStatWindowInMillis:null, Linger:null, CustomSSLSocketFactoryClassName:null, EnableZoneExclusivity:false, Version:null, MaxHttpConnectionsPerHost:50, InitializeNFLoadBalancer:null, BackoffTimeout:null, GZipPayload:null, PrioritizeVipAddressBasedServers:true, PoolMinThreads:1, MaxAutoRetriesNextServer:1, PoolKeepAliveTime:900, NIWSServerListFilterClassName:null, MinPrimeConnectionsRatio:1.0, TrustStore:null, listOfServers:, SecurePort:null, ServerListUpdaterClassName:null, TargetRegion:null, ReadTimeout:5000, ConnectionPoolCleanerTaskEnabled:true, IsSecure:null, Port:7001, IgnoreUserTokenInConnectionPoolForSecureClient:null, FollowRedirects:false, MaxTotalConnections:200, ConnectTimeout:2000, NFLoadBalancerPingClassName:com.netflix.loadbalancer.DummyPing, MaxTotalTimeToPrimeConnections:30000, EnablePrimeConnections:false, NFLoadBalancerRuleClassName:com.netflix.loadbalancer.AvailabilityFilteringRule
at com.netflix.loadbalancer.LoadBalancerBuilder.buildLoadBalancerFromConfigWithReflection(LoadBalancerBuilder.java:118)
at com.netflix.ribbon.transport.netty.http.LoadBalancingHttpClient$Builder.build(LoadBalancingHttpClient.java:180)
at com.netflix.ribbon.transport.netty.RibbonTransport.newHttpClient(RibbonTransport.java:151)
at com.netflix.ribbon.RibbonTransportFactory.newHttpClient(RibbonTransportFactory.java:51)
at com.netflix.ribbon.http.HttpResourceGroup.(HttpResourceGroup.java:73)
at com.netflix.ribbon.http.HttpResourceGroup$Builder.build(HttpResourceGroup.java:61)
at io.fabric8.kubeflix.examples.helloribbon.HelloRibbonServlet.(HelloRibbonServlet.java:49)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at java.lang.Class.newInstance(Class.java:442)
at org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2341)
at org.eclipse.jetty.servlet.ServletContextHandler$Context.createServlet(ServletContextHandler.java:1306)
at org.eclipse.jetty.servlet.ServletHolder.newInstance(ServletHolder.java:1193)
at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:593)
at org.eclipse.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:477)
at org.eclipse.jetty.servlet.ServletHolder.ensureInstance(ServletHolder.java:769)
at org.eclipse.jetty.servlet.ServletHolder.prepare(ServletHolder.java:754)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:578)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1114)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1048)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:119)
at org.eclipse.jetty.server.Server.handle(Server.java:517)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:302)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:242)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:245)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:75)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.RuntimeException: Exception while initializing NIWSDiscoveryLoadBalancer:hello-hystrix, niwsClientConfig:ClientConfig:ConnIdleEvictTimeMilliSeconds:30000, ProxyHost:null, VipAddress:null, PrimeConnectionsClassName:com.netflix.niws.client.http.HttpPrimeConnection, TrustStorePassword:null, IsClientAuthRequired:false, ClientClassName:com.netflix.niws.client.http.RestClient, EnableConnectionPool:true, EnableGZIPContentEncodingFilter:false, EnableZoneAffinity:false, SendBufferSize:null, KeyStore:null, ConnectionManagerTimeout:2000, RequestIdHeaderName:null, UseIPAddrForServer:false, MaxTotalHttpConnections:200, PoolMaxThreads:200, AppName:null, MaxAutoRetries:0, PoolKeepAliveTimeUnits:SECONDS, IsHostnameValidationRequired:null, NIWSServerListClassName:io.fabric8.kubeflix.ribbon.KubernetesServerList, PrimeConnectionsURI:/, NFLoadBalancerPingInterval:null, OkToRetryOnAllOperations:false, NFLoadBalancerMaxTotalPingTime:null, MaxRetriesPerServerPrimeConnection:9, RequestSpecificRetryOn:null, ReceiveBufferSize:null, StaleCheckingEnabled:null, NFLoadBalancerClassName:com.netflix.loadbalancer.ZoneAwareLoadBalancer, MaxConnectionsPerHost:50, KeyStorePassword:null, ConnectionCleanerRepeatInterval:30000, RulePredicateClasses:null, ProxyPort:null, ServerListRefreshInterval:null, ServerDownFailureLimit:null, VipAddressResolverClassName:com.netflix.client.SimpleVipAddressResolver, ForceClientPortConfiguration:null, DeploymentContextBasedVipAddresses:null, EnableMarkingServerDownOnReachingFailureLimit:null, ServerDownStatWindowInMillis:null, Linger:null, CustomSSLSocketFactoryClassName:null, EnableZoneExclusivity:false, Version:null, MaxHttpConnectionsPerHost:50, InitializeNFLoadBalancer:null, BackoffTimeout:null, GZipPayload:null, PrioritizeVipAddressBasedServers:true, PoolMinThreads:1, MaxAutoRetriesNextServer:1, PoolKeepAliveTime:900, NIWSServerListFilterClassName:null, MinPrimeConnectionsRatio:1.0, TrustStore:null, listOfServers:, SecurePort:null, ServerListUpdaterClassName:null, TargetRegion:null, ReadTimeout:5000, ConnectionPoolCleanerTaskEnabled:true, IsSecure:null, Port:7001, IgnoreUserTokenInConnectionPoolForSecureClient:null, FollowRedirects:false, MaxTotalConnections:200, ConnectTimeout:2000, NFLoadBalancerPingClassName:com.netflix.loadbalancer.DummyPing, MaxTotalTimeToPrimeConnections:30000, EnablePrimeConnections:false, NFLoadBalancerRuleClassName:com.netflix.loadbalancer.AvailabilityFilteringRule
at com.netflix.loadbalancer.DynamicServerListLoadBalancer.initWithNiwsConfig(DynamicServerListLoadBalancer.java:131)
at com.netflix.client.ClientFactory.instantiateInstanceWithClientConfig(ClientFactory.java:205)
at com.netflix.loadbalancer.LoadBalancerBuilder.buildLoadBalancerFromConfigWithReflection(LoadBalancerBuilder.java:116)
... 41 more
Caused by: java.lang.NullPointerException
at io.fabric8.kubeflix.ribbon.KubernetesServerList.initWithNiwsConfig(KubernetesServerList.java:66)
at com.netflix.client.ClientFactory.instantiateInstanceWithClientConfig(ClientFactory.java:205)
at com.netflix.loadbalancer.DynamicServerListLoadBalancer.initWithNiwsConfig(DynamicServerListLoadBalancer.java:110)
... 43 more
Caused by:

java.lang.RuntimeException: Exception while initializing NIWSDiscoveryLoadBalancer:hello-hystrix, niwsClientConfig:ClientConfig:ConnIdleEvictTimeMilliSeconds:30000, ProxyHost:null, VipAddress:null, PrimeConnectionsClassName:com.netflix.niws.client.http.HttpPrimeConnection, TrustStorePassword:null, IsClientAuthRequired:false, ClientClassName:com.netflix.niws.client.http.RestClient, EnableConnectionPool:true, EnableGZIPContentEncodingFilter:false, EnableZoneAffinity:false, SendBufferSize:null, KeyStore:null, ConnectionManagerTimeout:2000, RequestIdHeaderName:null, UseIPAddrForServer:false, MaxTotalHttpConnections:200, PoolMaxThreads:200, AppName:null, MaxAutoRetries:0, PoolKeepAliveTimeUnits:SECONDS, IsHostnameValidationRequired:null, NIWSServerListClassName:io.fabric8.kubeflix.ribbon.KubernetesServerList, PrimeConnectionsURI:/, NFLoadBalancerPingInterval:null, OkToRetryOnAllOperations:false, NFLoadBalancerMaxTotalPingTime:null, MaxRetriesPerServerPrimeConnection:9, RequestSpecificRetryOn:null, ReceiveBufferSize:null, StaleCheckingEnabled:null, NFLoadBalancerClassName:com.netflix.loadbalancer.ZoneAwareLoadBalancer, MaxConnectionsPerHost:50, KeyStorePassword:null, ConnectionCleanerRepeatInterval:30000, RulePredicateClasses:null, ProxyPort:null, ServerListRefreshInterval:null, ServerDownFailureLimit:null, VipAddressResolverClassName:com.netflix.client.SimpleVipAddressResolver, ForceClientPortConfiguration:null, DeploymentContextBasedVipAddresses:null, EnableMarkingServerDownOnReachingFailureLimit:null, ServerDownStatWindowInMillis:null, Linger:null, CustomSSLSocketFactoryClassName:null, EnableZoneExclusivity:false, Version:null, MaxHttpConnectionsPerHost:50, InitializeNFLoadBalancer:null, BackoffTimeout:null, GZipPayload:null, PrioritizeVipAddressBasedServers:true, PoolMinThreads:1, MaxAutoRetriesNextServer:1, PoolKeepAliveTime:900, NIWSServerListFilterClassName:null, MinPrimeConnectionsRatio:1.0, TrustStore:null, listOfServers:, SecurePort:null, ServerListUpdaterClassName:null, TargetRegion:null, ReadTimeout:5000, ConnectionPoolCleanerTaskEnabled:true, IsSecure:null, Port:7001, IgnoreUserTokenInConnectionPoolForSecureClient:null, FollowRedirects:false, MaxTotalConnections:200, ConnectTimeout:2000, NFLoadBalancerPingClassName:com.netflix.loadbalancer.DummyPing, MaxTotalTimeToPrimeConnections:30000, EnablePrimeConnections:false, NFLoadBalancerRuleClassName:com.netflix.loadbalancer.AvailabilityFilteringRule
at com.netflix.loadbalancer.DynamicServerListLoadBalancer.initWithNiwsConfig(DynamicServerListLoadBalancer.java:131)
at com.netflix.client.ClientFactory.instantiateInstanceWithClientConfig(ClientFactory.java:205)
at com.netflix.loadbalancer.LoadBalancerBuilder.buildLoadBalancerFromConfigWithReflection(LoadBalancerBuilder.java:116)
at com.netflix.ribbon.transport.netty.http.LoadBalancingHttpClient$Builder.build(LoadBalancingHttpClient.java:180)
at com.netflix.ribbon.transport.netty.RibbonTransport.newHttpClient(RibbonTransport.java:151)
at com.netflix.ribbon.RibbonTransportFactory.newHttpClient(RibbonTransportFactory.java:51)
at com.netflix.ribbon.http.HttpResourceGroup.(HttpResourceGroup.java:73)
at com.netflix.ribbon.http.HttpResourceGroup$Builder.build(HttpResourceGroup.java:61)
at io.fabric8.kubeflix.examples.helloribbon.HelloRibbonServlet.(HelloRibbonServlet.java:49)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at java.lang.Class.newInstance(Class.java:442)
at org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2341)
at org.eclipse.jetty.servlet.ServletContextHandler$Context.createServlet(ServletContextHandler.java:1306)
at org.eclipse.jetty.servlet.ServletHolder.newInstance(ServletHolder.java:1193)
at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:593)
at org.eclipse.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:477)
at org.eclipse.jetty.servlet.ServletHolder.ensureInstance(ServletHolder.java:769)
at org.eclipse.jetty.servlet.ServletHolder.prepare(ServletHolder.java:754)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:578)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1114)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1048)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:119)
at org.eclipse.jetty.server.Server.handle(Server.java:517)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:302)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:242)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:245)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:75)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.NullPointerException
at io.fabric8.kubeflix.ribbon.KubernetesServerList.initWithNiwsConfig(KubernetesServerList.java:66)
at com.netflix.client.ClientFactory.instantiateInstanceWithClientConfig(ClientFactory.java:205)
at com.netflix.loadbalancer.DynamicServerListLoadBalancer.initWithNiwsConfig(DynamicServerListLoadBalancer.java:110)
... 43 more
Caused by:

java.lang.NullPointerException
at io.fabric8.kubeflix.ribbon.KubernetesServerList.initWithNiwsConfig(KubernetesServerList.java:66)
at com.netflix.client.ClientFactory.instantiateInstanceWithClientConfig(ClientFactory.java:205)
at com.netflix.loadbalancer.DynamicServerListLoadBalancer.initWithNiwsConfig(DynamicServerListLoadBalancer.java:110)
at com.netflix.client.ClientFactory.instantiateInstanceWithClientConfig(ClientFactory.java:205)
at com.netflix.loadbalancer.LoadBalancerBuilder.buildLoadBalancerFromConfigWithReflection(LoadBalancerBuilder.java:116)
at com.netflix.ribbon.transport.netty.http.LoadBalancingHttpClient$Builder.build(LoadBalancingHttpClient.java:180)
at com.netflix.ribbon.transport.netty.RibbonTransport.newHttpClient(RibbonTransport.java:151)
at com.netflix.ribbon.RibbonTransportFactory.newHttpClient(RibbonTransportFactory.java:51)
at com.netflix.ribbon.http.HttpResourceGroup.(HttpResourceGroup.java:73)
at com.netflix.ribbon.http.HttpResourceGroup$Builder.build(HttpResourceGroup.java:61)
at io.fabric8.kubeflix.examples.helloribbon.HelloRibbonServlet.(HelloRibbonServlet.java:49)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:422)
at java.lang.Class.newInstance(Class.java:442)
at org.eclipse.jetty.server.handler.ContextHandler$Context.createInstance(ContextHandler.java:2341)
at org.eclipse.jetty.servlet.ServletContextHandler$Context.createServlet(ServletContextHandler.java:1306)
at org.eclipse.jetty.servlet.ServletHolder.newInstance(ServletHolder.java:1193)
at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:593)
at org.eclipse.jetty.servlet.ServletHolder.getServlet(ServletHolder.java:477)
at org.eclipse.jetty.servlet.ServletHolder.ensureInstance(ServletHolder.java:769)
at org.eclipse.jetty.servlet.ServletHolder.prepare(ServletHolder.java:754)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:578)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1114)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:511)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1048)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:213)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:119)
at org.eclipse.jetty.server.Server.handle(Server.java:517)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:302)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:242)
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:245)
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95)
at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:75)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceAndRun(ExecuteProduceConsume.java:213)
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:147)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:654)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:572)
at java.lang.Thread.run(Thread.java:745)

exported docker image but didn't work

I got the hello-hystrix example working in my vagrant sandbox, but couldn't get them working in my own k8 cluster with the same exported docker images.
I curled the turbine server and only got the heartbeat, it appears the turbine server is not finding any valid streams. Can you guys help check my labels? Anything needed besides "hystrix.enabled: true"? also is there any other config required inside the turbine server? what else do i need to check?

$ kubectl get svc hello-hystrix -o yaml
apiVersion: v1
kind: Service
metadata:
  creationTimestamp: 2016-04-01T17:19:15Z
  labels:
    app: laroc
    hystrix.enabled: "true"
    namespace: goc
  name: hello-hystrix
  namespace: laroc
  resourceVersion: "37218890"
  selfLink: /api/v1/namespaces/coral/services/hello-hystrix
  uid: dc267df9-f82d-11e5-bf65-0025b5360aff
spec:
  clusterIP: 192.168.0.38
  ports:
  - nodePort: 9203
    port: 80
    protocol: TCP
    targetPort: 8080
  selector:
    app: laroc
    hystrix.enabled: "true"
    name: hello-hystrix
    namespace: goc
  sessionAffinity: None
  type: LoadBalancer
status:
  loadBalancer: {}

project dependencies

can someone list the dependencies for this project? The instructions are very brief, following it does not lead to successful builds

I am getting this error which i assume is because i don't have fabric8 installed. [ERROR] Failed to execute goal io.fabric8:docker-maven-plugin:0.14.2:build (default-cli) on project turbine-server: Execution default-cli of goal io.fabric8:docker-maven-plugin:0.14.2:build failed: No url given, no DOCKER_HOST environment variable and no read/writable '/var/run/docker.sock' -> [Help 1]

NoSuchMethodError: org.springframework.cloud.commons.util.InetUtils.<init>(Lorg/springframework/cloud/commons/util/InetUtilsProperties;)

The pod created using this openshift template ("oc create -f http://central.maven.org/maven2/io/fabric8/kubeflix/packages/kubeflix/1.0.23/kubeflix-1.0.23-kubernetes.yml") crashes

See the error reported by Spring during bootstraps

09:27:30.556 [main] DEBUG io.fabric8.kubernetes.client.Config - Trying to configure client from Kubernetes config...
09:27:30.581 [main] DEBUG io.fabric8.kubernetes.client.Config - Did not find Kubernetes config at: [/.kube/config]. Ignoring.
09:27:30.581 [main] DEBUG io.fabric8.kubernetes.client.Config - Trying to configure client from service account...
09:27:30.582 [main] DEBUG io.fabric8.kubernetes.client.Config - Found service account ca cert at: [/var/run/secrets/kubernetes.io/serviceaccount/ca.crt].
09:27:30.585 [main] DEBUG io.fabric8.kubernetes.client.Config - Found service account token at: [/var/run/secrets/kubernetes.io/serviceaccount/token].
09:27:30.585 [main] DEBUG io.fabric8.kubernetes.client.Config - Trying to configure client namespace from Kubernetes service account namespace path...
09:27:30.585 [main] DEBUG io.fabric8.kubernetes.client.Config - Found service account namespace at: [/var/run/secrets/kubernetes.io/serviceaccount/namespace].
Exception in thread "main" java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:497)
        at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:87)
        at org.springframework.boot.loader.Launcher.launch(Launcher.java:50)
        at org.springframework.boot.loader.JarLauncher.main(JarLauncher.java:58)
Caused by: java.lang.NoSuchMethodError: org.springframework.cloud.commons.util.InetUtils.<init>(Lorg/springframework/cloud/commons/util/InetUtilsProperties;)V
        at org.springframework.cloud.client.HostInfoEnvironmentPostProcessor.getFirstNonLoopbackHostInfo(HostInfoEnvironmentPostProcessor.java:48)
        at org.springframework.cloud.client.HostInfoEnvironmentPostProcessor.postProcessEnvironment(HostInfoEnvironmentPostProcessor.java:34)
        at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEnvironmentPreparedEvent(ConfigFileApplicationListener.java:168)
        at org.springframework.boot.context.config.ConfigFileApplicationListener.onApplicationEvent(ConfigFileApplicationListener.java:154)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:121)
        at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:68)
        at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54)
        at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:335)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
        at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:134)
        at org.springframework.cloud.bootstrap.BootstrapApplicationListener.bootstrapServiceContext(BootstrapApplicationListener.java:140)
        at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:84)
        at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:62)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:166)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:138)
        at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:121)
        at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:68)
        at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54)
        at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:335)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:307)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1185)
        at org.springframework.boot.SpringApplication.run(SpringApplication.java:1174)
        at io.fabric8.kubeflix.TurbineServerApplication.main(TurbineServerApplication.java:32)

Kubeflix turbine-server is not starting up in Kubernetes version -v1.7.4-1+1540c973d4ff9d

Kubeflix Turbine server deployed in a pod of Kubernetes Cluster failed to start.

Kubernetes Cluster Hosted in IBM Cloud with version v1.7.4-1+1540c973d4ff9d

Steps we have done .

  1. cloned the source code from git hub and
  2. Build Image for turbine server
  3. Pushed Image to docker hub.
  4. Created a service account and provided all required roles.
  5. Deployed the image using deployment.yml .

java-code
java-code.zip
application.yml
application.properties.zip
pom.xml
pom.xml.zip
Deployment files
yml files.zip

turbine-server.zip

Observation
Pod failed to start up and showing the following errors.
11:37:47.667 [main] DEBUG io.fabric8.kubernetes.client.Config - Trying to configure client from Kubernetes config...
11:37:47.707 [main] DEBUG io.fabric8.kubernetes.client.Config - Did not find Kubernetes config at: [/root/.kube/config]. Ignoring.
11:37:47.707 [main] DEBUG io.fabric8.kubernetes.client.Config - Trying to configure client from service account...
11:37:47.707 [main] DEBUG io.fabric8.kubernetes.client.Config - Found service account ca cert at: [/var/run/secrets/kubernetes.io/serviceaccount/ca.crt].
11:37:47.719 [main] DEBUG io.fabric8.kubernetes.client.Config - Found service account token at: [/var/run/secrets/kubernetes.io/serviceaccount/token].
11:37:47.720 [main] DEBUG io.fabric8.kubernetes.client.Config - Trying to configure client namespace from Kubernetes service account namespace path...
11:37:47.721 [main] DEBUG io.fabric8.kubernetes.client.Config - Found service account namespace at: [/var/run/secrets/kubernetes.io/serviceaccount/namespace].
11:37:48.790 [main] WARN io.fabric8.kubernetes.client.internal.SSLUtils - SSL handshake failed. Falling back to insecure connection.
2017-12-01 11:37:50.513 WARN [bootstrap,,,] 51 --- [ main] i.f.s.cloud.kubernetes.StandardPodUtils : Failed to get pod with name:[turbine-server-156932739-cd2vf]. You should look into this if things aren't working as you expect. Are you missing serviceaccount permissions?
at org.springframework.boot.SpringApplication.run(SpringApplication.java:301) ~[spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
at org.springframework.boot.builder.SpringApplicationBuilder.run(SpringApplicationBuilder.java:134) ~[spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.bootstrapServiceContext(BootstrapApplicationListener.java:175) ~[spring-cloud-context-1.2.2.RELEASE.jar!/:1.2.2.RELEASE]
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:98) ~[spring-cloud-context-1.2.2.RELEASE.jar!/:1.2.2.RELEASE]
at org.springframework.cloud.bootstrap.BootstrapApplicationListener.onApplicationEvent(BootstrapApplicationListener.java:64) ~[spring-cloud-context-1.2.2.RELEASE.jar!/:1.2.2.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:172) ~[spring-context-4.3.12.RELEASE.jar!/:4.3.12.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:165) ~[spring-context-4.3.12.RELEASE.jar!/:4.3.12.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:139) ~[spring-context-4.3.12.RELEASE.jar!/:4.3.12.RELEASE]
at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:122) ~[spring-context-4.3.12.RELEASE.jar!/:4.3.12.RELEASE]
at org.springframework.boot.context.event.EventPublishingRunListener.environmentPrepared(EventPublishingRunListener.java:74) ~[spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
at org.springframework.boot.SpringApplicationRunListeners.environmentPrepared(SpringApplicationRunListeners.java:54) ~[spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
at org.springframework.boot.SpringApplication.prepareEnvironment(SpringApplication.java:325) ~[spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
at com.example.demo.TurbineServerApplication.main(TurbineServerApplication.java:33) ~[classes!/:0.0.1-SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_111]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_111]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_111]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_111]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) ~[turbineserver.war:0.0.1-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) ~[turbineserver.war:0.0.1-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50) ~[turbineserver.war:0.0.1-SNAPSHOT]
at org.springframework.boot.loader.WarLauncher.main(WarLauncher.java:59) ~[turbineserver.war:0.0.1-SNAPSHOT]
2017-12-01 11:37:50.708 INFO [bootstrap,,,] 51 --- [ main] s.c.a.AnnotationConfigApplicationContext : Refreshing org.springframework.context.annotation.AnnotationConfigApplicationContext@483bf400: startup date [Fri Dec 01 11:37:50 UTC 2017]; root of context hierarchy
2017-12-01 11:37:51.515 INFO [bootstrap,,,] 51 --- [ main] f.a.AutowiredAnnotationBeanPostProcessor : JSR-330 'javax.inject.Inject' annotation found and supported for autowiring
2017-12-01 11:37:51.660 INFO [bootstrap,,,] 51 --- [ main] trationDelegate$BeanPostProcessorChecker : Bean 'configurationPropertiesRebinderAutoConfiguration' of type [org.springframework.cloud.autoconfigure.ConfigurationPropertiesRebinderAutoConfiguration$$EnhancerBySpringCGLIB$$8d7e7cf1] is not eligible for getting processed by all BeanPostProcessors (for example: not eligible for auto-proxying)
2017-12-01 11:37:52.608 WARN [bootstrap,,,] 51 --- [ main] i.f.kubernetes.client.internal.SSLUtils : SSL handshake failed. Falling back to insecure connection.
\/ )| |)| | | | | || (| | ) ) ) )
' |
| .__|| ||| |_, | / / / /
=========||==============|/=///_/
:: Spring Boot :: (v1.5.8.RELEASE)
2017-12-01 11:37:53.244 ERROR [turbine-server,,,] 51 --- [ main] o.s.boot.SpringApplication : Application startup failed
java.lang.NoSuchMethodError: io.fabric8.kubernetes.client.KubernetesClient.configMaps()Lio/fabric8/kubernetes/client/dsl/MixedOperation;
at io.fabric8.spring.cloud.kubernetes.config.ConfigMapPropertySource.getData(ConfigMapPropertySource.java:68) ~[spring-cloud-kubernetes-core-0.1.6.jar!/:na]
at io.fabric8.spring.cloud.kubernetes.config.ConfigMapPropertySource.(ConfigMapPropertySource.java:50) ~[spring-cloud-kubernetes-core-0.1.6.jar!/:na]
at io.fabric8.spring.cloud.kubernetes.config.ConfigMapPropertySourceLocator.locate(ConfigMapPropertySourceLocator.java:44) ~[spring-cloud-kubernetes-core-0.1.6.jar!/:na]
at io.fabric8.spring.cloud.kubernetes.config.ConfigMapPropertySourceLocator.locate(ConfigMapPropertySourceLocator.java:28) ~[spring-cloud-kubernetes-core-0.1.6.jar!/:na]
at org.springframework.cloud.bootstrap.config.PropertySourceBootstrapConfiguration.initialize(PropertySourceBootstrapConfiguration.java:93) ~[spring-cloud-context-1.2.2.RELEASE.jar!/:1.2.2.RELEASE]
at org.springframework.boot.SpringApplication.applyInitializers(SpringApplication.java:567) [spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
at org.springframework.boot.SpringApplication.prepareContext(SpringApplication.java:338) [spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:301) [spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118) [spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107) [spring-boot-1.5.8.RELEASE.jar!/:1.5.8.RELEASE]
at com.example.demo.TurbineServerApplication.main(TurbineServerApplication.java:33) [classes!/:0.0.1-SNAPSHOT]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_111]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_111]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_111]
at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_111]
at org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:48) [turbineserver.war:0.0.1-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:87) [turbineserver.war:0.0.1-SNAPSHOT]
at org.springframework.boot.loader.Launcher.launch(Launcher.java:50) [turbineserver.war:0.0.1-SNAPSHOT]
at org.springframework.boot.loader.WarLauncher.main(WarLauncher.java:59) [turbineserver.war:0.0.1-SNAPSHOT]

[turbineserver.war:0.0.1-SNAPSHOT]

Error deploying in Openshift Origin 1.3

The following error happened when I tried to deploy in Openshift 1.3 using 'oc create -f http://central.maven.org/maven2/io/fabric8/kubeflix/packages/kubeflix/1.0.20/kubeflix-1.0.20-kubernetes.yml'

":"kubeflix","project":"kubeflix","provider":"fabric8","version":"1.0.20"}:selectordoes not match templatelabels Error from server: Deployment.extensions "turbine-server" is invalid: spec.template.metadata.labels: Invalid value: {"group":"io.fabric8.kubeflix","package":"kubeflix","project":"kubeflix","provider":"fabric8","version":"1.0.20"}:selectordoes not match templatelabels``

specifying the hystrix stream url

hi,

there should be a way to specify where the hystrix stream can be found for the observed pods.
Not all webapps will have the hystrix stream at /hystrix.stream
For example many webapps will have a context root before that.

I started a similar project to what you're doing here and stopped when I saw that you guys where going to provide "official" support. I had solved this problem, you may want to take a look: https://github.com/raffaelespazzoli/hystrix-kuberneters-instance-discovery

thanks
Raffaele

Namespace issue using zuul-proxy as a basis for a zuul proxy in kubernetes

I have taken your example zuul-proxy, and modified it for my own use.
I'm having issues getting the namespace to be set when looking up endpoints exposed through zuul.
I can see the services being mapped to ZuulController.
When I try to hit those mapped URL paths, I see an error in the logs:
KubernetesServerList : Did not find any endpoints in ribbon in namespace [null] for name [xxxx] and portName [xxxx]
The name and portName are correct based on the URL being used, and the configuration.
What am I missing to get the namespace set?

hello-ribbon example responses first with status code 500 and then with 503

Hi folks
i've build/deployed "hello-world" example against minikube (kubernetes v1.7.5)

HTTP ERROR 500

Problem accessing /hello. Reason:

    Server Error
Caused by:

javax.servlet.ServletException: java.lang.RuntimeException: java.lang.RuntimeException: Exception while initializing NIWSDiscoveryLoadBalancer:hello-hystrix, niwsClientConfig:ClientConfig:IsSecure:null, PoolKeepAliveTime:900, MaxTotalConnections:200, EnableConnectionPool:true, EnablePrimeConnections:false, TrustStorePassword:null, DeploymentContextBasedVipAddresses:null, MaxRetriesPerServerPrimeConnection:9, ReadTimeout:5000, ForceClientPortConfiguration:null, EnableZoneExclusivity:false, StaleCheckingEnabled:null, Port:7001, PoolMinThreads:1, ServerListRefreshInterval:null, NIWSServerListFilterClassName:null, ConnectionManagerTimeout:2000, MaxTotalHttpConnections:200, NFLoadBalancerMaxTotalPingTime:null, EnableGZIPContentEncodingFilter:false, IgnoreUserTokenInConnectionPoolForSecureClient:null, KeyStorePassword:null, VipAddress:null, TrustStore:null, AppName:null, PrioritizeVipAddressBasedServers:true, Version:null, UseIPAddrForServer:false, PrimeConnectionsClassName:com.netflix.niws.client.http.HttpPrimeConnection, ServerDownFailureLimit:null, NFLoadBalancerClassName:com.netflix.loadbalancer.ZoneAwareLoadBalancer, ReceiveBufferSize:null, KeyStore:null, EnableZoneAffinity:false, BackoffTimeout:null, MaxTotalTimeToPrimeConnections:30000, ServerDownStatWindowInMillis:null, MaxAutoRetries:0, SendBufferSize:null, IsClientAuthRequired:false, PoolKeepAliveTimeUnits:SECONDS, SecurePort:null, FollowRedirects:false, VipAddressResolverClassName:com.netflix.client.SimpleVipAddressResolver, EnableMarkingServerDownOnReachingFailureLimit:null, NFLoadBalancerRuleClassName:com.netflix.loadbalancer.AvailabilityFilteringRule, ServerListUpdaterClassName:null, MaxHttpConnectionsPerHost:50, MinPrimeConnectionsRatio:1.0, ClientClassName:com.netflix.niws.client.http.RestClient, RequestIdHeaderName:null, ConnectionCleanerRepeatInterval:30000, ProxyHost:null, OkToRetryOnAllOperations:false, PoolMaxThreads:200, ConnIdleEvictTimeMilliSeconds:30000, RequestSpecificRetryOn:null, NFLoadBalancerPingClassName:com.netflix.loadbalancer.DummyPing, PrimeConnectionsURI:/, ConnectionPoolCleanerTaskEnabled:true, InitializeNFLoadBalancer:null, Linger:null, NFLoadBalancerPingInterval:null, ConnectTimeout:2000, listOfServers:, MaxConnectionsPerHost:50, ProxyPort:null, TargetRegion:null, GZipPayload:null, CustomSSLSocketFactoryClassName:null, IsHostnameValidationRequired:null, RulePredicateClasses:null, MaxAutoRetriesNextServer:1, NIWSServerListClassName:io.fabric8.kubeflix.ribbon.KubernetesServerList
	at org.eclipse.jetty.servlet.ServletContextHandler$Context.createServlet(ServletContextHandler.java:1312)
...

here is a complete log: https://gist.github.com/zavalit/df74424786136ecedf855daa29d09e9c

and after a minute

HTTP ERROR 503

Problem accessing /hello. Reason:

    Service Unavailable
Caused by:

org.eclipse.jetty.servlet.ServletHolder$1: java.lang.RuntimeException: java.lang.RuntimeException: Exception while initializing NIWSDiscoveryLoadBalancer:hello-hystrix, niwsClientConfig:ClientConfig:IsSecure:null, PoolKeepAliveTime:900, MaxTotalConnections:200, EnableConnectionPool:true, EnablePrimeConnections:false, TrustStorePassword:null, DeploymentContextBasedVipAddresses:null, MaxRetriesPerServerPrimeConnection:9, ReadTimeout:5000, ForceClientPortConfiguration:null, EnableZoneExclusivity:false, StaleCheckingEnabled:null, Port:7001, PoolMinThreads:1, ServerListRefreshInterval:null, NIWSServerListFilterClassName:null, ConnectionManagerTimeout:2000, MaxTotalHttpConnections:200, NFLoadBalancerMaxTotalPingTime:null, EnableGZIPContentEncodingFilter:false, IgnoreUserTokenInConnectionPoolForSecureClient:null, KeyStorePassword:null, VipAddress:null, TrustStore:null, AppName:null, PrioritizeVipAddressBasedServers:true, Version:null, UseIPAddrForServer:false, PrimeConnectionsClassName:com.netflix.niws.client.http.HttpPrimeConnection, ServerDownFailureLimit:null, NFLoadBalancerClassName:com.netflix.loadbalancer.ZoneAwareLoadBalancer, ReceiveBufferSize:null, KeyStore:null, EnableZoneAffinity:false, BackoffTimeout:null, MaxTotalTimeToPrimeConnections:30000, ServerDownStatWindowInMillis:null, MaxAutoRetries:0, SendBufferSize:null, IsClientAuthRequired:false, PoolKeepAliveTimeUnits:SECONDS, SecurePort:null, FollowRedirects:false, VipAddressResolverClassName:com.netflix.client.SimpleVipAddressResolver, EnableMarkingServerDownOnReachingFailureLimit:null, NFLoadBalancerRuleClassName:com.netflix.loadbalancer.AvailabilityFilteringRule, ServerListUpdaterClassName:null, MaxHttpConnectionsPerHost:50, MinPrimeConnectionsRatio:1.0, ClientClassName:com.netflix.niws.client.http.RestClient, RequestIdHeaderName:null, ConnectionCleanerRepeatInterval:30000, ProxyHost:null, OkToRetryOnAllOperations:false, PoolMaxThreads:200, ConnIdleEvictTimeMilliSeconds:30000, RequestSpecificRetryOn:null, NFLoadBalancerPingClassName:com.netflix.loadbalancer.DummyPing, PrimeConnectionsURI:/, ConnectionPoolCleanerTaskEnabled:true, InitializeNFLoadBalancer:null, Linger:null, NFLoadBalancerPingInterval:null, ConnectTimeout:2000, listOfServers:, MaxConnectionsPerHost:50, ProxyPort:null, TargetRegion:null, GZipPayload:null, CustomSSLSocketFactoryClassName:null, IsHostnameValidationRequired:null, RulePredicateClasses:null, MaxAutoRetriesNextServer:1, NIWSServerListClassName:io.fabric8.kubeflix.ribbon.KubernetesServerList
	at org.eclipse.jetty.servlet.ServletHolder.makeUnavailable(ServletHolder.java:575)
...

here is complete log: https://gist.github.com/zavalit/ac366b41bb89d76055e3338635b79b4e

Meanwhile both hello-hystrix and hello-ribbon-spring-boot are running like specified.

reportingHostsLast10Seconds always 1

I tried out the hello-hystrix example. I scaled up the pods to 6 instances. But when deploying hystrix-dashboard and turbine-server I only see 1 host on the dasboard and the turbine stream also shows "reportingHostsLast10Seconds":1. Alhough in the turbine logs I can see that 6 hosts were discovered.

I ran the example on my local minikube.

Thanks,
Thorsten

Docker image

I tried to build it's failed.

I am not a developer, purely Infra guy.

Is it possible create docker images of all containers and push to docker hub so people can use easyly.

Anyway it's a nice example.

Thanks in advance.

kubeflix not working with kubernetes 1.2

Hi,

I'm working with OpenShift 3.1 which aligns with kubernetes 1.1.
It looks like the new spring based framework requires configmaps to be available.
I'd like to request configmaps to be optionals and that the application starts even if they are not available

Thanks
Raffaele

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.