mirror of
https://github.com/NationalSecurityAgency/timely.git
synced 2026-11-10 03:41:25 -10:00
Compare commits
5
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
577688aa54 | ||
|
|
1f0fe4198d | ||
|
|
385b142f71 | ||
|
|
9065dcdce2 | ||
|
|
3877695949 |
No files matched your search
@@ -2,13 +2,14 @@
|
||||
|
||||
## Building Timely
|
||||
|
||||
Timely requires a Java 8 and uses Maven for compiling source, running tests, and packaging distributions. Below is a set of useful Maven lifecyles that we use:
|
||||
Timely requires a Java 8 and uses Maven for compiling source, running tests, and packaging distributions. To build the CollectD plugins, activate the `collectd` profile. Below are a set of useful Maven lifecyles that we use:
|
||||
|
||||
Command | Description
|
||||
--------|------------
|
||||
mvn compile | Compiles and formats the source
|
||||
mvn test | Runs unit tests
|
||||
mvn package | Runs findbugs and creates a distribution
|
||||
mvn package -Pcollectd | Runs findbugs and creates a distribution, includes the collectd plugins
|
||||
mvn verify | Runs integration tests
|
||||
mvn verify site | Creates the site
|
||||
|
||||
|
||||
@@ -1,18 +1,19 @@
|
||||
# Standalone Quick Start
|
||||
|
||||
1. Install latest version of Grafana that works with Timely
|
||||
2. Create a grafana configuration file (e.g: `conf/settings.ini`)
|
||||
1. Build Timely
|
||||
1. set `JAVA_HOME` to point to a JDK 8 installation
|
||||
2. run `mvn clean package` from the top level directory in the source tree
|
||||
2. Install latest version of Grafana that works with Timely (4.4.3)
|
||||
3. Create a grafana configuration file (e.g: `conf/settings.ini`)
|
||||
1. `protocol = https`
|
||||
2. `http_addr = localhost`
|
||||
3. `cert_file= <path to PEM encoded certificate file>`
|
||||
4. `key_file= <path to PEM encoded un-encrypted private key file>`
|
||||
3. Start Grafana (`./bin/grafana-server -c conf/settings.ini`)
|
||||
4. Untar the timely-app distribution tarball located in grafana/target in the grafana plugins directory (default: /var/lib/grafana/plugins)
|
||||
5. Start Grafana (`./bin/grafana-server -c conf/settings.ini`)
|
||||
1. Visit `https://localhost:3000` to verify Grafana is working
|
||||
4. Build Timely
|
||||
1. set `JAVA_HOME` to point to a JDK 8 installation
|
||||
2. cd into the server directory and run `mvn clean package`
|
||||
5. Untar Timely server distribution (found in `target/timely-server-(VERSION)-SNAPSHOT-dist.tar.gz`)
|
||||
6. Modify `timely-standalone.yml`:
|
||||
6. Untar Timely server distribution (found in `target/timely-server-(VERSION)-SNAPSHOT-dist.tar.gz`)
|
||||
7. Modify `timely-standalone.yml`:
|
||||
1. Use generated server side SSL certificates
|
||||
1. `timely.security.ssl.use-generated-keypair=true`
|
||||
2. or, use your own SSL certificates - see [SSL] (#ssl-setup) Setup
|
||||
@@ -28,11 +29,11 @@
|
||||
1. `grafana.http.address=https://localhost:3000/login`
|
||||
5. Set Anonymous access for Timely
|
||||
1. `timely.security.allow-anonymous-access=<true or false>`
|
||||
7. Start the Timely standalone server
|
||||
8. Start the Timely standalone server
|
||||
1. `cd bin; ./timely-standalone.sh`
|
||||
8. Insert test data
|
||||
9. Insert test data
|
||||
1. `cd bin; ./insert-test-data.sh`
|
||||
9. Add the Timely datasource to Grafana
|
||||
10. Add the Timely datasource to Grafana
|
||||
1. Login to Grafana, go to 'DataSources'
|
||||
2. Click 'Add data source'
|
||||
3. Enter the following information:
|
||||
@@ -44,7 +45,7 @@
|
||||
6. Basic Auths: check
|
||||
7. Click `Browser Cert Check` and accept the certificate
|
||||
8. Click `Save & Test`.
|
||||
10. Import Standalone Test dashboard into Grafana.
|
||||
11. Import Standalone Test dashboard into Grafana.
|
||||
|
||||
|
||||
## Notes on Security Options
|
||||
|
||||
@@ -1,5 +1,16 @@
|
||||
# Release Notes
|
||||
|
||||
## 0.0.5
|
||||
|
||||
### FEATURES
|
||||
|
||||
- Made changes and tested with Grafana 4.4.3 (alerting not supported yet)
|
||||
- Updated provided dashboards
|
||||
|
||||
### NOTES
|
||||
|
||||
- Build modified to *not* build collectd modules by default, use the `collectd` maven profile at build time
|
||||
|
||||
## 0.0.4
|
||||
|
||||
### FEATURES
|
||||
|
||||
@@ -12,12 +12,8 @@ The standalone server will not save your metric data across restarts.
|
||||
|
||||
To deploy Timely with a running Accumulo instance you will need to modify the `conf/timely.yml` file appropriately. Then copy the `lib/timely-client.jar`, `lib/timely-server.jar`, `lib/commons-lang3-*.jar`, `lib/commons-collections4-*.jar`, and `lib/guava-*.jar` files to your Accumulo tablet servers. Finally, launch Timely using the `bin/timely-server.sh` script. Because Timely uses a newer version of Guava, you will need to configure a classloader for the Timely context, set it to use post-delegation, and then configure your tables to use the Timely context classloader. This can be done in the shell or in the accumulo-site.xml file.
|
||||
|
||||
> In accumulo-site.xml: <br>
|
||||
<name>general.vfs.conext.classpath.timely.delegation=post</name><br>
|
||||
<value>some location</value>
|
||||
|
||||
> In accumulo shell: <br>
|
||||
`general.vfs.conext.classpath.timely=<some location>`<br>
|
||||
`general.vfs.context.classpath.timely=<some location>`<br>
|
||||
`general.vfs.context.classpath.timely.delegation=post`
|
||||
|
||||
|
||||
@@ -80,7 +76,7 @@ timely:
|
||||
```
|
||||
The default configuration file type for Timely is a YAML. The configuration is read internally using Spring Boot, and therefore supports all of the configuration styles supported by Spring Boot. See [here](http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config) and [here](http://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#boot-features-external-config-yaml) for more details. In YAML, a property such as timely.accumulo.instance-name=MyInstanceName (which can also be timely.accumulo.instanceName) would look like the example on the right.
|
||||
|
||||
The `NUM_SERVER_THREADS` variable in the `timely-server.sh` script controls how many threads are used in the Netty event group for TCP and HTTP operations. The TCP and HTTP groups use a different event group, so if you set the value to 8, then you will have 8 threads for TCP operations and 8 threads for HTTP operations. The properties file in the `conf` directory supports the following properties:
|
||||
The `NUM_SERVER_THREADS` variable in the `timely-server.sh` script controls how many threads are used in the Netty event group for UPD, TCP, HTTP, and WebSocket operations. The different protocols each use a Netty event group, so if you set the value to 8, then you will have 4 thread groups of 8 threads each. The properties file in the `conf` directory supports the following properties:
|
||||
|
||||
> Note: Each thread in the Timely server that is used for processing TCP put operations has its own BatchWriter. Each BatchWriter honors the `timely.accumulo.write.latency` and `timely.accumulo.write.threads` configuration property, but the buffer size for each BatchWriter is `timely.accumulo.write.buffer-size` divided by the number of threads. For example, if you have 8 threads processing put operations and the following settings, then you will have 8 BatchWriters each using 2 threads with a 30s latency and a maximum buffer size of 128M: timely.accumulo.write.latency=30s, timely.accumulo.write.threads=2 timely.accumulo.write.buffer-size=1G
|
||||
|
||||
|
||||
@@ -44,6 +44,6 @@ Getting started with Timely requires that you:
|
||||
|
||||
2. Install and configure the Timely [app] (#deployment) within Grafana
|
||||
|
||||
> Timely should accept data from TCollector with no changes. A [plugin] (#plugins-for-collectd) exists for sending data from CollectD.
|
||||
|
||||
3. Send metrics to Timely using [CollectD] (http://collectd.org/), OpenTSDBs [TCollector] (https://github.com/OpenTSDB/tcollector), etc.
|
||||
|
||||
> Timely should accept data from TCollector with no changes. A [plugin] (#plugins-for-collectd) exists for sending data from CollectD.
|
||||
Reference in new issue
Block a user