From 715d7b44e2b08e4033edb9e1465f4804dff5f668 Mon Sep 17 00:00:00 2001 From: noahtalerman <47070608+noahtalerman@users.noreply.github.com> Date: Mon, 4 Jan 2021 13:55:05 -0800 Subject: [PATCH] Fix markdown link check CI action. (#169) - Split the array of objects to separate objects for each pattern in ignorePatterns. Rename the key in each object to "pattern." The documentation for the example config file is poor. - Add hello@fleetdm.com and /server/datastore/mysql/migrations/ to ignorePatterns - Add 999 to aliveStatucCodes (Seems to be a LinkedIn edge case) - Fix all broken markdown links --- .../workflows/markdown-link-check-config.json | 22 ++++++++++++++----- docs/1-Using-Fleet/1-Fleet-UI.md | 8 +++---- docs/1-Using-Fleet/2-fleetctl-CLI.md | 4 ++-- docs/1-Using-Fleet/3-REST-API.md | 2 +- docs/1-Using-Fleet/4-Osquery-logs.md | 12 +++++----- docs/1-Using-Fleet/5-Monitoring-Fleet.md | 8 +++---- .../6-Security-best-practices.md | 2 +- docs/1-Using-Fleet/7-Updating-Fleet.md | 2 +- docs/1-Using-Fleet/FAQ.md | 6 ++--- docs/2-Deployment/1-Installation.md | 10 ++++----- docs/2-Deployment/3-Adding-hosts.md | 4 ++-- .../4-Example-deployment-scenarios.md | 8 +++---- docs/2-Deployment/FAQ.md | 6 ++--- docs/3-Contribution/5-Releasing-Fleet.md | 2 +- frontend/README.md | 4 ++-- 15 files changed, 56 insertions(+), 44 deletions(-) diff --git a/.github/workflows/markdown-link-check-config.json b/.github/workflows/markdown-link-check-config.json index 90ab7441e8..fee552549d 100644 --- a/.github/workflows/markdown-link-check-config.json +++ b/.github/workflows/markdown-link-check-config.json @@ -1,14 +1,26 @@ { "ignorePatterns": [ { - "localhost": "localhost", - "osquery-downloads": "osquery.io/downloads", - "fleet.acme.org": "fleet.acme.org", - "fleet.corp.example.com": "fleet.corp.example.com" + "pattern": "localhost" + }, + { + "pattern": "osquery.io/downloads" + }, + { + "pattern": "fleet.acme.org" + }, + { + "pattern": "fleet.corp.example.com" + }, + { + "pattern": "hello@fleetdm.com" + }, + { + "pattern": "/server/datastore/mysql/migrations/" } ], "retryOn429": true, "retryCount": 2, "fallbackRetryDelay": "2s", - "aliveStatusCodes": [200, 206] + "aliveStatusCodes": [200, 206, 999] } diff --git a/docs/1-Using-Fleet/1-Fleet-UI.md b/docs/1-Using-Fleet/1-Fleet-UI.md index 907b678944..6c77a75aa9 100644 --- a/docs/1-Using-Fleet/1-Fleet-UI.md +++ b/docs/1-Using-Fleet/1-Fleet-UI.md @@ -16,12 +16,12 @@ Saved queries can be accessed if you select "Manage Queries" from the "Query" se ![Manage Queries](../images/manage-queries.png) -To learn more about scheduling queries so that they run on an on-going basis, see the [Scheduling Queries](./scheduling-queries.md) guide. +To learn more about scheduling queries so that they run on an on-going basis, see the scheduling queries guide below. -## Scheduling Queries +## Scheduling queries -As discussed in the [Running Queries Documentation](./running-queries.md), you can use the Fleet application to create, execute, and save osquery queries. You can organize these queries into "Query Packs". To view all saved packs and perhaps create a new pack, select "Manage Packs" from the "Packs" sidebar. Packs are usually organized by the general class of instrumentation that you're trying to perform. +As discussed in the running queries documentation, you can use the Fleet application to create, execute, and save osquery queries. You can organize these queries into "Query Packs". To view all saved packs and perhaps create a new pack, select "Manage Packs" from the "Packs" sidebar. Packs are usually organized by the general class of instrumentation that you're trying to perform. ![Manage Packs](../images/manage-packs.png) @@ -44,5 +44,5 @@ To add queries to a pack, use the right-hand sidebar. You can take an existing s ![Schedule Query Sidebar](../images/schedule-query-sidebar.png) -Once you've scheduled queries and curated your packs, you can read our guide to [Working With Osquery Logs](../infrastructure/working-with-osquery-logs.md). +Once you've scheduled queries and curated your packs, you can read our guide to [Working With Osquery Logs](../1-Using-Fleet/4-Osquery-logs.md). diff --git a/docs/1-Using-Fleet/2-fleetctl-CLI.md b/docs/1-Using-Fleet/2-fleetctl-CLI.md index 27f4071d48..6e4aa024f4 100644 --- a/docs/1-Using-Fleet/2-fleetctl-CLI.md +++ b/docs/1-Using-Fleet/2-fleetctl-CLI.md @@ -33,7 +33,7 @@ This guide illustrates: ### Running Fleet -For the sake of this tutorial, I will be using the local development Docker Compose infrastructure to run Fleet locally. This is documented in some detail in the [developer documentation](../3-Contribution-guide/(a)-Building-Fleet.md#development-infrastructure), but the following are the minimal set of commands that you can run from the root of the repository (assuming that you have a working Go/JavaScript toolchain installed along with Docker Compose): +For the sake of this tutorial, I will be using the local development Docker Compose infrastructure to run Fleet locally. This is documented in some detail in the [developer documentation](../3-Contribution/1-Building-Fleet.md#development-infrastructure), but the following are the minimal set of commands that you can run from the root of the repository (assuming that you have a working Go/JavaScript toolchain installed along with Docker Compose): ``` docker-compose up -d @@ -79,7 +79,7 @@ It's possible to specify the password via the `--password` flag or the `$PASSWOR ### Connecting a host -For the sake of this tutorial, I'm going to be using Kolide's osquery launcher to start osquery locally and connect it to Fleet. To learn more about connecting osquery to Fleet, see the [Adding Hosts to Fleet](../1-Deployment/(c)-Adding-hosts.md) documentation. +For the sake of this tutorial, I'm going to be using Kolide's osquery launcher to start osquery locally and connect it to Fleet. To learn more about connecting osquery to Fleet, see the [Adding Hosts to Fleet](../2-Deployment/3-Adding-hosts.md) documentation. To get your osquery enroll secret, run the following: diff --git a/docs/1-Using-Fleet/3-REST-API.md b/docs/1-Using-Fleet/3-REST-API.md index 7a84d9115d..ad262e4c1c 100644 --- a/docs/1-Using-Fleet/3-REST-API.md +++ b/docs/1-Using-Fleet/3-REST-API.md @@ -34,7 +34,7 @@ Only osquery agents should interact with the osquery API, but we'd like to suppo ### fleetctl -Many of the operations that a user may wish to perform with an API are currently best performed via the [fleetctl](./(b)-fleetctl-CLI) tooling. These CLI tools allow updating of the osquery configuration entities, as well as performing live queries. +Many of the operations that a user may wish to perform with an API are currently best performed via the [fleetctl](./2-fleetctl-CLI.md) tooling. These CLI tools allow updating of the osquery configuration entities, as well as performing live queries. ### Current API diff --git a/docs/1-Using-Fleet/4-Osquery-logs.md b/docs/1-Using-Fleet/4-Osquery-logs.md index 55dc6bf36d..f3ac5f2bc2 100644 --- a/docs/1-Using-Fleet/4-Osquery-logs.md +++ b/docs/1-Using-Fleet/4-Osquery-logs.md @@ -20,21 +20,21 @@ Fleet supports the following logging plugins for osquery logs: - [PubSub](#pubsub) - Logs are written to Google Cloud PubSub topics. - [Stdout](#stdout) - Logs are written to stdout. -To set the osquery logging plugins, use the `--osquery_result_log_plugin` and `--osquery_status_log_plugin` flags (or [equivalents for environment variables or configuration files](../1-Deployment/(b)-Configuration.md#options)). +To set the osquery logging plugins, use the `--osquery_result_log_plugin` and `--osquery_status_log_plugin` flags (or [equivalents for environment variables or configuration files](../2-Deployment/2-Configuration.md#options)). ### Filesystem The default logging plugin. - Plugin name: `filesystem` -- Flag namespace: [filesystem](../1-Deployment/(b)-Configuration.md#filesystem) +- Flag namespace: [filesystem](../2-Deployment/2-Configuration.md#filesystem) With the filesystem plugin, osquery result and/or status logs are written to the local filesystem on the Fleet server. This is typically used with a log forwarding agent on the Fleet server that will push the logs into a logging pipeline. Note that if multiple load-balanced Fleet servers are used, the logs will be load-balanced across those servers (not duplicated). ### Firehose - Plugin name: `firehose` -- Flag namespace: [firehose](../1-Deployment/(b)-Configuration.md#firehose) +- Flag namespace: [firehose](../2-Deployment/2-Configuration.md#firehose) With the Firehose plugin, osquery result and/or status logs are written to [AWS Firehose](https://aws.amazon.com/kinesis/data-firehose/) streams. This is a very good method for aggregating osquery logs into AWS S3 storage. @@ -43,7 +43,7 @@ Note that Firehose logging has limits [discussed in the documentation](https://d ### Kinesis - Plugin name: `kinesis` -- Flag namespace: [kinesis](../1-Deployment/(b)-Configuration.md#kinesis) +- Flag namespace: [kinesis](../2-Deployment/2-Configuration.md#kinesis) With the Kinesis plugin, osquery result and/or status logs are written to [AWS Kinesis](https://aws.amazon.com/kinesis/data-streams) streams. @@ -56,7 +56,7 @@ output in the Fleet logs and those logs _will not_ be sent to Kinesis. ### PubSub - Plugin name: `pubsub` -- Flag namespace: [pubsub](../1-Deployment/(b)-Configuration.md#pubsub) +- Flag namespace: [pubsub](../2-Deployment/2-Configuration.md#pubsub) With the PubSub plugin, osquery result and/or status logs are written to [PubSub](https://cloud.google.com/pubsub/) topics. @@ -65,7 +65,7 @@ Note that messages over 10MB will be dropped, with a notification sent to the fl ### Stdout - Plugin name: `stdout` -- Flag namespace: [stdout](../1-Deployment/(b)-Configuration.md#stdout) +- Flag namespace: [stdout](../2-Deployment/2-Configuration.md#stdout) With the stdout plugin, osquery result and/or status logs are written to stdout on the Fleet server. This is typically used for debugging or with a log diff --git a/docs/1-Using-Fleet/5-Monitoring-Fleet.md b/docs/1-Using-Fleet/5-Monitoring-Fleet.md index b03b718062..fe6c3a56a1 100644 --- a/docs/1-Using-Fleet/5-Monitoring-Fleet.md +++ b/docs/1-Using-Fleet/5-Monitoring-Fleet.md @@ -19,7 +19,7 @@ The `/healthz` endpoint will return an `HTTP 200` status if the server is runnin ## Metrics -Fleet exposes server metrics in a format compatible with [Prometheus](https://prometheus.io/). A simple example Prometheus configuration is available in [tools/app/prometheus.yml](/tools/app/prometheus.yml). +Fleet exposes server metrics in a format compatible with [Prometheus](https://prometheus.io/). A simple example Prometheus configuration is available in [tools/app/prometheus.yml](../../tools/app/prometheus.yml). Prometheus can be configured to use a wide range of service discovery mechanisms within AWS, GCP, Azure, Kubernetes, and more. See the Prometheus [configuration documentation](https://prometheus.io/docs/prometheus/latest/configuration/configuration/) for more information on configuring the @@ -54,11 +54,11 @@ Scaling Fleet horizontally is as simple as running more Fleet server processes c The Fleet/osquery system is resilient to loss of availability. Osquery agents will continue executing the existing configuration and buffering result logs during downtime due to lack of network connectivity, server maintenance, or any other reason. Buffering in osquery can be configured with the `--buffered_log_max` flag. -Note that short downtimes are expected during [Fleet server upgrades](./(g)-Updating.md)-fleet.md) that require database migrations. +Note that short downtimes are expected during [Fleet server upgrades](./7-Updating-Fleet.md)-fleet.md) that require database migrations. ### Monitoring -More information on monitoring Fleet servers with Prometheus and other tools is available in the [Monitoring Fleet](./(e)-Monitoring-Fleet.md) documentation. +More information on monitoring Fleet servers with Prometheus and other tools is available in the [Monitoring Fleet](./5-Monitoring-Fleet.md) documentation. ### Debugging performance issues @@ -72,7 +72,7 @@ For performance issues in the Fleet server process, please [file an issue](https ##### Generate debug archive (Fleet 3.4.0+) -Use the `fleetctl archive` command to generate an archive of Fleet's full suite of debug profiles. See the [fleetctl setup guide](./(b)-fleetctl-CLI.md)) for details on configuring `fleetctl`. +Use the `fleetctl archive` command to generate an archive of Fleet's full suite of debug profiles. See the [fleetctl setup guide](./2-fleetctl-CLI.md)) for details on configuring `fleetctl`. The generated `.tar.gz` archive will be available in the current directory. diff --git a/docs/1-Using-Fleet/6-Security-best-practices.md b/docs/1-Using-Fleet/6-Security-best-practices.md index 02c5b776e8..0cd69803b2 100644 --- a/docs/1-Using-Fleet/6-Security-best-practices.md +++ b/docs/1-Using-Fleet/6-Security-best-practices.md @@ -27,7 +27,7 @@ Fleet supports SAML auth which means that it can be configured such that it neve Passwords are never stored in plaintext in the database. We store a `bcrypt`ed hash of the password along with a randomly generated salt. The `bcrypt` iteration count and salt key size are admin-configurable. ### Authentication tokens -The size and expiration time of session tokens is admin-configurable. See [https://github.com/fleetdm/fleet/blob/master/docs/2-Deployment/2-Configuration.md#session_duration](./1-Deployment/2-Configuration.md#session_duration). +The size and expiration time of session tokens is admin-configurable. See [https://github.com/fleetdm/fleet/blob/master/docs/2-Deployment/2-Configuration.md#session_duration](../2-Deployment/2-Configuration.md#session_duration). It is possible to revoke all session tokens for a user by forcing a password reset. diff --git a/docs/1-Using-Fleet/7-Updating-Fleet.md b/docs/1-Using-Fleet/7-Updating-Fleet.md index 52e64c2613..842693b552 100644 --- a/docs/1-Using-Fleet/7-Updating-Fleet.md +++ b/docs/1-Using-Fleet/7-Updating-Fleet.md @@ -7,7 +7,7 @@ ## Overview -This guide explains how to update and run new versions of Fleet. For initial installation instructions, see [Installing Fleet](./1-Deployment/(a)-Installation.md). +This guide explains how to update and run new versions of Fleet. For initial installation instructions, see [Installing Fleet](../2-Deployment/1-Installation.md). There are two steps to perform a typical Fleet update. If any other steps are required, they will be noted in the release notes. diff --git a/docs/1-Using-Fleet/FAQ.md b/docs/1-Using-Fleet/FAQ.md index 6401bc2583..11fa9030e8 100644 --- a/docs/1-Using-Fleet/FAQ.md +++ b/docs/1-Using-Fleet/FAQ.md @@ -28,7 +28,7 @@ Fleet can live query the `osquery_schedule` table. Performing this live query al ## How do I monitor a Fleet server? -Fleet provides standard interfaces for monitoring and alerting. See the [Monitoring Fleet](./(e)-Monitoring-fleet.md) documentation for details. +Fleet provides standard interfaces for monitoring and alerting. See the [Monitoring Fleet](./5-Monitoring-Fleet.md) documentation for details. ## Why is the “Add User” button disabled? @@ -45,7 +45,7 @@ Live query results (executed in the web UI or `fleetctl query`) are pushed direc ### Scheduled Queries -Scheduled query results (queries that are scheduled to run in Packs) are typically sent to the Fleet server, and will be available on the filesystem of the server at the path configurable by [`--osquery_result_log_file`](../1-Deployment/(b)-Configuration.md#osquery_result_log_file). This defaults to `/tmp/osquery_result`. +Scheduled query results (queries that are scheduled to run in Packs) are typically sent to the Fleet server, and will be available on the filesystem of the server at the path configurable by [`--osquery_result_log_file`](../2-Deployment/2-Configuration.md#osquery_result_log_file). This defaults to `/tmp/osquery_result`. It is possible to configure osqueryd to log query results outside of Fleet. For results to go to Fleet, the `--logger_plugin` flag must be set to `tls`. @@ -63,7 +63,7 @@ Expecting results, but not seeing anything in the logs? - Check whether the query is scheduled in differential mode. If so, new results will only be logged when the result set changes. - Ensure that the query is scheduled to run on the intended platforms, and that the tables queried are supported by those platforms. - Use live query to `SELECT * FROM osquery_schedule` to check whether the query has been scheduled on the host. -- Look at the status logs provided by osquery. In a standard configuration these are available on the filesystem of the Fleet server at the path configurable by [`--filesystem_status_log_file`](../1-Deployment/(b)-Configuration.md#filesystem_status_log_file). This defaults to `/tmp/osquery_status`. The host will output a status log each time it executes the query. +- Look at the status logs provided by osquery. In a standard configuration these are available on the filesystem of the Fleet server at the path configurable by [`--filesystem_status_log_file`](../2-Deployment/2-Configuration.md#filesystem_status_log_file). This defaults to `/tmp/osquery_status`. The host will output a status log each time it executes the query. ## Why aren’t my live queries being logged? diff --git a/docs/2-Deployment/1-Installation.md b/docs/2-Deployment/1-Installation.md index a0195f1eaf..90595b2365 100644 --- a/docs/2-Deployment/1-Installation.md +++ b/docs/2-Deployment/1-Installation.md @@ -12,7 +12,7 @@ The Fleet application is distributed as a single static binary. This binary serv - The Fleet application API endpoints - The osquery TLS server API endpoints -All of these are served via a built-in HTTP server, so there is no need for complex web server configurations. Once you've installed the `fleet` binary and it's infrastructure dependencies as illustrated below, refer to the [Configuration](./(b)-Configuration.md) documentation for information on how to use and configure the Fleet application. +All of these are served via a built-in HTTP server, so there is no need for complex web server configurations. Once you've installed the `fleet` binary and it's infrastructure dependencies as illustrated below, refer to the [Configuration](./2-Configuration.md) documentation for information on how to use and configure the Fleet application. ## Installing the Fleet binary @@ -26,7 +26,7 @@ Pull the latest Fleet docker image: docker pull fleetdm/fleet ``` -For more information on using Fleet, refer to the [Configuration](./(b)-Configuration.md) documentation. +For more information on using Fleet, refer to the [Configuration](./2-Configuration.md) documentation. ### Raw binaries @@ -48,7 +48,7 @@ unzip fleet.zip 'linux/*' -d fleet ./fleet/linux/fleet_linux_amd64 --help ``` -For more information on using Fleet, refer to the [Configuration](./(b)-Configuration.md) documentation. +For more information on using Fleet, refer to the [Configuration](./2-Configuration.md) documentation. ## Infrastructure Dependencies @@ -56,7 +56,7 @@ Fleet currently has two infrastructure dependencies in addition to the `fleet` w ### MySQL -Fleet uses MySQL extensively as it's main database. Many cloud providers (such as [AWS](https://aws.amazon.com/rds/mysql/) and [GCP](https://cloud.google.com/sql/)) host reliable MySQL services which you may consider for this purpose. A well supported MySQL [Docker container](https://hub.docker.com/_/mysql/) also exists if you would rather run MySQL in a container. For more information on how to configure the `fleet` binary to use the correct MySQL instance, see the [Configuration](./(b)-Configuration.md) document. +Fleet uses MySQL extensively as it's main database. Many cloud providers (such as [AWS](https://aws.amazon.com/rds/mysql/) and [GCP](https://cloud.google.com/sql/)) host reliable MySQL services which you may consider for this purpose. A well supported MySQL [Docker container](https://hub.docker.com/_/mysql/) also exists if you would rather run MySQL in a container. For more information on how to configure the `fleet` binary to use the correct MySQL instance, see the [Configuration](./2-Configuration.md) document. Fleet requires at least MySQL version 5.7. @@ -64,4 +64,4 @@ For host expiry configuration, the [event scheduler](https://dev.mysql.com/doc/r ### Redis -Fleet uses Redis to ingest and queue the results of distributed queries, cache data, etc. Many cloud providers (such as [AWS](https://aws.amazon.com/elasticache/) and [GCP](https://console.cloud.google.com/launcher/details/click-to-deploy-images/redis)) host reliable Redis services which you may consider for this purpose. A well supported Redis [Docker container](https://hub.docker.com/_/redis/) also exists if you would rather run Redis in a container. For more information on how to configure the `fleet` binary to use the correct Redis instance, see the [Configuration](./(b)-Configuration.md) document. +Fleet uses Redis to ingest and queue the results of distributed queries, cache data, etc. Many cloud providers (such as [AWS](https://aws.amazon.com/elasticache/) and [GCP](https://console.cloud.google.com/launcher/details/click-to-deploy-images/redis)) host reliable Redis services which you may consider for this purpose. A well supported Redis [Docker container](https://hub.docker.com/_/redis/) also exists if you would rather run Redis in a container. For more information on how to configure the `fleet` binary to use the correct Redis instance, see the [Configuration](./2-Configuration.md) document. diff --git a/docs/2-Deployment/3-Adding-hosts.md b/docs/2-Deployment/3-Adding-hosts.md index 89503c71b8..3c131e1ce9 100644 --- a/docs/2-Deployment/3-Adding-hosts.md +++ b/docs/2-Deployment/3-Adding-hosts.md @@ -22,7 +22,7 @@ If you'd like to use the native osqueryd binaries to connect to Fleet, this is e ## Kolide osquery Launcher -We provide compiled releases of the launcher for all supported platforms. Those can be found [here](https://github.com/kolide/launcher/releases). But if you’d like to compile from source, the instructions are [here](../3-Contribution-guide/(a)-building-fleet). +We provide compiled releases of the launcher for all supported platforms. Those can be found [here](https://github.com/kolide/launcher/releases). But if you’d like to compile from source, the instructions are [here](../3-Contribution/1-Building-Fleet.md). ### Connecting a single Launcher to Fleet @@ -177,4 +177,4 @@ Multiple enroll secrets can be set to allow different groups of hosts to authenticate with Fleet. When a host enrolls, the corresponding enroll secret is recorded and can be used to segment hosts. -To set the enroll secret, use the `fleetctl` tool to apply an [enroll secret spec](../2-Using-Fleet/(b)-fleetctl-CLI.md#enroll-secrets) +To set the enroll secret, use the `fleetctl` tool to apply an [enroll secret spec](../1-Using-Fleet/2-fleetctl-CLI.md#enroll-secrets) diff --git a/docs/2-Deployment/4-Example-deployment-scenarios.md b/docs/2-Deployment/4-Example-deployment-scenarios.md index 512fc0fceb..f9ba2e7e2a 100644 --- a/docs/2-Deployment/4-Example-deployment-scenarios.md +++ b/docs/2-Deployment/4-Example-deployment-scenarios.md @@ -180,12 +180,12 @@ Now, if you go to [https://localhost:8080](https://localhost:8080) in your local ### Running Fleet with systemd -See [systemd](./systemd.md) for documentation on running fleet as a background process and managing the fleet server logs. +See [Running with systemd](./2-Configuration.md#running-with-systemd) for documentation on running fleet as a background process and managing the fleet server logs. ### Installing and running osquery -> Note that this whole process is outlined in more detail in the [Adding Hosts To Fleet](./(c)-Adding-hosts) document. The steps are repeated here for the sake of a continuous tutorial. +> Note that this whole process is outlined in more detail in the [Adding Hosts To Fleet](./3-Adding-hosts.md) document. The steps are repeated here for the sake of a continuous tutorial. To install osquery on CentOS, you can run the following: @@ -349,12 +349,12 @@ Now, if you go to [https://localhost:8080](https://localhost:8080) in your local ### Running Fleet with systemd -See [systemd](./systemd.md) for documentation on running fleet as a background process and managing the fleet server logs. +See [Running with systemd](./2-Configuration.md#running-with-systemd) for documentation on running fleet as a background process and managing the fleet server logs. ### Installing and running osquery -> Note that this whole process is outlined in more detail in the [Adding Hosts To Fleet](./(c)-Adding-hosts.md) document. The steps are repeated here for the sake of a continuous tutorial. +> Note that this whole process is outlined in more detail in the [Adding Hosts To Fleet](./3-Adding-hosts.md) document. The steps are repeated here for the sake of a continuous tutorial. To install osquery on Ubuntu, you can run the following: diff --git a/docs/2-Deployment/FAQ.md b/docs/2-Deployment/FAQ.md index 85add7e8f6..e19b862d92 100644 --- a/docs/2-Deployment/FAQ.md +++ b/docs/2-Deployment/FAQ.md @@ -20,7 +20,7 @@ Yes. Fleet scales horizontally out of the box as long as all of the Fleet server Note that osquery logs will be distributed across the Fleet servers. -Read the [performance docs](./performance.md) for more. +Read the [performance documentation](../1-Using-Fleet/5-Monitoring-Fleet.md#fleet-server-performance) for more. ## Why aren't my osquery agents connecting to Fleet? @@ -44,11 +44,11 @@ Osquery requires that all communication between the agent and Fleet are over a s ## What do I do about "too many open files" errors? -This error usually indicates that the Fleet server has run out of file descriptors. Fix this by increasing the `ulimit` on the Fleet process. See the `LimitNOFILE` setting in the [example systemd unit file](./systemd.md) for an example of how to do this with systemd. +This error usually indicates that the Fleet server has run out of file descriptors. Fix this by increasing the `ulimit` on the Fleet process. See the `LimitNOFILE` setting in the [example systemd unit file](./2-Configuration.md#runing-with-systemd) for an example of how to do this with systemd. ## I upgraded my database, but Fleet is still running slowly. What could be going on? -This could be caused by a mismatched connection limit between the Fleet server and the MySQL server that prevents Fleet from fully utilizing the database. First [determine how many open connections your MySQL server supports](https://dev.mysql.com/doc/refman/8.0/en/too-many-connections.html). Now set the [`--mysql_max_open_conns`](./configuring-the-fleet-binary.md#mysql_max_open_conns) and [`--mysql_max_idle_conns`](./configuring-the-fleet-binary.md#mysql_max_idle_conns) flags appropriately. +This could be caused by a mismatched connection limit between the Fleet server and the MySQL server that prevents Fleet from fully utilizing the database. First [determine how many open connections your MySQL server supports](https://dev.mysql.com/doc/refman/8.0/en/too-many-connections.html). Now set the [`--mysql_max_open_conns`](./2-Configuration.md#mysql_max_open_conns) and [`--mysql_max_idle_conns`](./2-Configuration.md#mysql_max_idle_conns) flags appropriately. ## Why am I receiving a database connection error when attempting to "prepare" the database? diff --git a/docs/3-Contribution/5-Releasing-Fleet.md b/docs/3-Contribution/5-Releasing-Fleet.md index b6e5f931dd..f3b22c67d5 100644 --- a/docs/3-Contribution/5-Releasing-Fleet.md +++ b/docs/3-Contribution/5-Releasing-Fleet.md @@ -53,7 +53,7 @@ Upload `fleet.zip`, `fleetctl-*.tar.gz`, and `fleetctl.exe.zip`. Click "Publish make docker-push-release ``` -6. Publish the new version of `fleetctl` on NPM. Update the version in the [package.json](../../../tools/fleetctl-npm/package.json) and publish with `npm publish`. Note that NPM does not allow replacing a package without creating a new version number. Take care to get things correct before running `npm publish`! +6. Publish the new version of `fleetctl` on NPM. Update the version in the [package.json](../../tools/fleetctl-npm/package.json) and publish with `npm publish`. Note that NPM does not allow replacing a package without creating a new version number. Take care to get things correct before running `npm publish`! 7. Announce the release in the #fleet channel of [osquery Slack](https://osquery.slack.com/join/shared_invite/zt-h29zm0gk-s2DBtGUTW4CFel0f0IjTEw#/). diff --git a/frontend/README.md b/frontend/README.md index 985236cfcf..819ba2439e 100644 --- a/frontend/README.md +++ b/frontend/README.md @@ -5,7 +5,7 @@ The Fleet front-end is a Single Page Application using React and Redux. ## Running the Fleet web app For details instruction on building and serving the Fleet web application -consult the [Development Documentation](../development/README.md) +consult the [Development Documentation](https://github.com/fleetdm/fleet/tree/master/docs/2-Deployment) ## Directory Structure @@ -57,7 +57,7 @@ component's PropTypes. The default export of the kolide directory is the API client. More info can be found at the [API client documentation page](./kolide/README.md). -### [layouts](https://github.com/kolide/kolide/tree/master/frontend/layouts) +### [layouts](https://github.com/fleetdm/fleet/tree/master/frontend/layouts) The Fleet application has only 1 layout, the [Core Layout](./layouts/CoreLayout/CoreLayout.jsx). The Layout is rendered from the [router](./router/index.jsx) and are used to set up the general app UI (header, sidebar) and render child components.