Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Etcd3-based Discovery Provider"

(Created page with "A new ECF discovery provider has been created, based upon the etcd3 server/service. Etcd3 is the most recent version of the etcd protocol, and is implemented by gRPC. See th...")
 
 
(3 intermediate revisions by the same user not shown)
Line 1: Line 1:
A new ECF discovery provider has been created, based upon the etcd3 server/service.  Etcd3 is the most recent version of the etcd protocol, and is implemented by gRPC.  See the [https://github.com/coreos/etcd etcd github project here] for specifics about the etcd project.  etcd is often used as part of [https://kubernetes.io/ Kubernetes].
+
A new [https://github.com/ECF/etcd3-discovery-provider ECF discovery provider] has been created, based upon the etcd3 server/service.  Etcd3 is the most recent version of the etcd protocol, and is implemented by gRPC.  See the [https://github.com/coreos/etcd etcd github project here] for specifics about the etcd project.  etcd is often used as part of [https://kubernetes.io/ Kubernetes].
  
 
==Getting and Using Etcd3 Discovery Provider==
 
==Getting and Using Etcd3 Discovery Provider==
Line 5: Line 5:
 
The ECF Etcd3 Discovery Provider is currently available as one of [https://github.com/ECF ECF's github repositories].  The etcd3 provider repository is [https://github.com/ECF/etcd3-discovery-provider here].   
 
The ECF Etcd3 Discovery Provider is currently available as one of [https://github.com/ECF ECF's github repositories].  The etcd3 provider repository is [https://github.com/ECF/etcd3-discovery-provider here].   
  
A Etcd3 Discovery Provider is available at Maven Central [https://search.maven.org/search?q=a:etcd3-discovery-provider here]
+
A Etcd3 Discovery Provider is available at Maven Central [https://search.maven.org/search?q=a:org.eclipse.ecf.provider.etcd3 here]
  
 
==Etcd3 Discovery Provider Configuration Properties==
 
==Etcd3 Discovery Provider Configuration Properties==
Line 15: Line 15:
 
! Property Name
 
! Property Name
 
! Description
 
! Description
! Type
+
! Type
 
! Default value
 
! Default value
 
|-
 
|-
 
| ecf.discovery.etcd3.protocol
 
| ecf.discovery.etcd3.protocol
 
| Etcd Server URL protocol. Example:  'http' in constructed Etcd3 Server URL 'http://127.0.0.1:2379'
 
| Etcd Server URL protocol. Example:  'http' in constructed Etcd3 Server URL 'http://127.0.0.1:2379'
| String
+
| String  
 
| http
 
| http
 
|-
 
|-
 
| ecf.discovery.etcd3.hostname
 
| ecf.discovery.etcd3.hostname
 
| Etcd3 Server URL hostname.  Example:  '127.0.0.1'  in constructed Etcd Server URL 'http://127.0.0.1:2379'
 
| Etcd3 Server URL hostname.  Example:  '127.0.0.1'  in constructed Etcd Server URL 'http://127.0.0.1:2379'
| String
+
| String  
 
| 127.0.0.1
 
| 127.0.0.1
 
|-
 
|-
 
| ecf.discovery.etcd3.port
 
| ecf.discovery.etcd3.port
 
| Etcd3 Server URL port.  Example:  '2379' in constructed Etcd Server URL 'http://127.0.0.1:2379'
 
| Etcd3 Server URL port.  Example:  '2379' in constructed Etcd Server URL 'http://127.0.0.1:2379'
| String
+
| String  
 
| 2379
 
| 2379
 
|-
 
|-
 
| ecf.discovery.etcd3.keyPrefix
 
| ecf.discovery.etcd3.keyPrefix
 
| Etcd3 Server keyPrefix.   
 
| Etcd3 Server keyPrefix.   
| String
+
| String  
 
| org.eclipse.ecf.provider.etcd3.EtcdDiscoveryContainer
 
| org.eclipse.ecf.provider.etcd3.EtcdDiscoveryContainer
 
|-
 
|-
 
| ecf.discovery.etcd3.usePlaintext
 
| ecf.discovery.etcd3.usePlaintext
 
| Whether Etcd3 server is using/allowing plain text.   
 
| Whether Etcd3 server is using/allowing plain text.   
| String
+
| String  
 
| false
 
| false
 
|-
 
|-
 
| ecf.discovery.etcd3.ttl
 
| ecf.discovery.etcd3.ttl
 
| Etcd3 time-to-live (in seconds).  This is the time that the etcd3 key->value entries will live on the etcd3 server
 
| Etcd3 time-to-live (in seconds).  This is the time that the etcd3 key->value entries will live on the etcd3 server
| String
+
| String  
 
| 30 seconds
 
| 30 seconds
 
|-
 
|-
 
| ecf.discovery.etcd3.disabled
 
| ecf.discovery.etcd3.disabled
 
| Whether the default discovery provider is disabled on startup.  Note that if disabled discovery will not occur automatically upon framework startup, and will have to be started in some other way.  See the [https://github.com/ECF/etcd3-discovery-provider/blob/main/org.eclipse.ecf.provider.etcd3/src/main/java/org/eclipse/ecf/provider/etcd3/Activator.java#L70 start method in this class] a code example of how to start the etcd3 discovery.
 
| Whether the default discovery provider is disabled on startup.  Note that if disabled discovery will not occur automatically upon framework startup, and will have to be started in some other way.  See the [https://github.com/ECF/etcd3-discovery-provider/blob/main/org.eclipse.ecf.provider.etcd3/src/main/java/org/eclipse/ecf/provider/etcd3/Activator.java#L70 start method in this class] a code example of how to start the etcd3 discovery.
| String
+
| String  
 
| false
 
| false
 
|-
 
|-
 
| ecf.discovery.etcd3.retry
 
| ecf.discovery.etcd3.retry
 
| Whether the gRPC etcd client will retry failed calls.
 
| Whether the gRPC etcd client will retry failed calls.
| String
+
| String  
 
| false
 
| false
 
|}
 
|}
  
 
Note that these values and defaults are also defined in the source code in the '''org.eclipse.ecf.provider.etcd3.container.Etcd3DiscoveryContainerConfig''' class available at githhub [https://github.com/ECF/etcd3-discovery-provider/blob/main/org.eclipse.ecf.provider.etcd3/src/main/java/org/eclipse/ecf/provider/etcd3/container/Etcd3DiscoveryContainerConfig.java here].
 
Note that these values and defaults are also defined in the source code in the '''org.eclipse.ecf.provider.etcd3.container.Etcd3DiscoveryContainerConfig''' class available at githhub [https://github.com/ECF/etcd3-discovery-provider/blob/main/org.eclipse.ecf.provider.etcd3/src/main/java/org/eclipse/ecf/provider/etcd3/container/Etcd3DiscoveryContainerConfig.java here].

Latest revision as of 18:17, 3 July 2021

A new ECF discovery provider has been created, based upon the etcd3 server/service. Etcd3 is the most recent version of the etcd protocol, and is implemented by gRPC. See the etcd github project here for specifics about the etcd project. etcd is often used as part of Kubernetes.

Getting and Using Etcd3 Discovery Provider

The ECF Etcd3 Discovery Provider is currently available as one of ECF's github repositories. The etcd3 provider repository is here.

A Etcd3 Discovery Provider is available at Maven Central here

Etcd3 Discovery Provider Configuration Properties

As with other discovery providers, the ECF Etcd3 Discovery Provider is configured via system properties so that it can be configured and run automatically at startup. Here is a table of the Etcd3 Discovery Provider configuration properties and their default values:

Property Name Description Type Default value
ecf.discovery.etcd3.protocol Etcd Server URL protocol. Example: 'http' in constructed Etcd3 Server URL 'http://127.0.0.1:2379' String http
ecf.discovery.etcd3.hostname Etcd3 Server URL hostname. Example: '127.0.0.1' in constructed Etcd Server URL 'http://127.0.0.1:2379' String 127.0.0.1
ecf.discovery.etcd3.port Etcd3 Server URL port. Example: '2379' in constructed Etcd Server URL 'http://127.0.0.1:2379' String 2379
ecf.discovery.etcd3.keyPrefix Etcd3 Server keyPrefix. String org.eclipse.ecf.provider.etcd3.EtcdDiscoveryContainer
ecf.discovery.etcd3.usePlaintext Whether Etcd3 server is using/allowing plain text. String false
ecf.discovery.etcd3.ttl Etcd3 time-to-live (in seconds). This is the time that the etcd3 key->value entries will live on the etcd3 server String 30 seconds
ecf.discovery.etcd3.disabled Whether the default discovery provider is disabled on startup. Note that if disabled discovery will not occur automatically upon framework startup, and will have to be started in some other way. See the start method in this class a code example of how to start the etcd3 discovery. String false
ecf.discovery.etcd3.retry Whether the gRPC etcd client will retry failed calls. String false

Note that these values and defaults are also defined in the source code in the org.eclipse.ecf.provider.etcd3.container.Etcd3DiscoveryContainerConfig class available at githhub here.

Back to the top