... | ... | @@ -9,49 +9,109 @@ Once Stork becomes a bit more mature, we're planning to have a public demo site. |
|
|
|
|
|
# Existing functionality
|
|
|
|
|
|
1. **Log in using admin/admin credentials**. Note the version displayed. It is not hardcoded. This is a version of the Stork server that is retrieved over REST API.
|
|
|
1. **Log in using admin/admin credentials**.
|
|
|
|
|
|
2. **Check your role in the system**. You logged in as admin, which is an account with super-admin role. You can check you currently assigned roles by going to `Profile` -> `Settings`.
|
|
|
Note the version displayed. It is not hardcoded. This is a version of the Stork server that is retrieved over REST API.
|
|
|
|
|
|
Note: as of 0.3 there are currently two roles defined: super-admin (can do everything including managing and adding new users) and admin (can do everything, except managing or adding users).
|
|
|
2. **Check your role in the system**.
|
|
|
|
|
|
3. **Add new user**. Since you're logged in as super-admin, you can see the `Configuration` menu and `Users` within it. Click on it and you'll see a list of all users. Click on `Create User Account` to create a new account. It's recommended to create a new account role admin, so the new user can't create more users. Go ahead and try it.
|
|
|
You logged in as admin, which is an account with super-admin role. You can check you currently assigned roles by going to `Profile` -> `Settings`.
|
|
|
|
|
|
4. **Add new BIND9 machine to monitor**. Go to `Services`->`Machines` and click `Add New Machine`, type in `agent-bind9`.
|
|
|
Note: as of 0.5 there are currently two roles defined: super-admin (can do everything including managing and adding new users) and admin (can do everything, except managing or adding users). A third role, read-only users, coming up soon.
|
|
|
|
|
|
3. **Add new user**.
|
|
|
|
|
|
Since you're logged in as super-admin, you can see the `Configuration` menu and `Users` within it. Click on it and you'll see a list of all users. Click on `Create User Account` to create a new account. It's recommended to create a new account role admin, so the new user can't create more users. Go ahead and try it.
|
|
|
|
|
|
4. **Add new BIND9 machine to monitor**.
|
|
|
|
|
|
Go to `Services`->`Machines` and click `Add New Machine`, type in `agent-bind9`.
|
|
|
|
|
|
Normally you would type in an FQDN or an IP address of the machine you want to monitor. By default Stork is being deployed using Docker. There are some example docker containers that run several sample machines that run Kea, BIND9 and two Kea instances running in failover pair. agent-bind9 is a name of one of such containers. Note that you didn't specify what kind of software is running on the `agent-bind9` machine. Stork server connected to the stork agent running that and the agent looked for Kea and BIND9 and found only bind. It should detect BIND9 app running there.
|
|
|
|
|
|
5. **Inspect the agent-bind9 machine**. Click around. As of 0.3 the BIND9 capabilities are basic. Stork is able to check if bind9 process is running and display its version, number of zones configured, time since it last reconfiguration and more.
|
|
|
5. **Inspect the agent-bind9 machine**.
|
|
|
|
|
|
6. **Add new Kea machine to monitor**. Go to `Services`->`Machines` and click `Add New Machine`, type in `agent-kea`. The procedure is the same as before, but this time Stork detected Kea servers running. Notice that a problem is reported.
|
|
|
Click around. As of 0.3 the BIND9 capabilities are basic. Stork is able to check if bind9 process is running and display its version, number of zones configured, time since it last reconfiguration and more.
|
|
|
|
|
|
6. **Add new Kea machine to monitor**.
|
|
|
|
|
|
Go to `Services`->`Machines` and click `Add New Machine`, type in `agent-kea`. The procedure is the same as before, but this time Stork detected Kea servers running. Notice that a problem is reported.
|
|
|
|
|
|
Kea is being shipped with CA (Control Agent) preconfigured with control sockets for DHCPv4, DHCPv6 and DDNS. This simplifies deployment. CA tries to connect to all of those daemons and continues with only those that respond. That makes it easy to deploy daemons selectively. However, Stork looks at the CA config and determines that there are 3 daemons expected, but only DHCPv4 is running. Therefore it reports a problem of non-running DHCPv6 and DDNS daemons.
|
|
|
|
|
|
Stork developers have several ideas how to deal with the situation, but we'd love to hear your thoughts on this. We could simply modify the docker container to run all daemons. This would nice feeling of seeing all green, but wouldn't demonstrate that Stork is able to detect problems. Second alternative would be to modify the CA config, so it would attempt only to connect to daemons that are actually running (DHCPv4 only). Third, we could add an **Ignore** or **That's ok** button that the user could click to indicate that it's ok that DHCPv6 or DDNS is not running. Ultimately, the network admin is the source of truth that knows whether the daemon is supposed to be running or not.
|
|
|
|
|
|
7. **Inspect Kea details**. You can either click on the Version on the Kea apps list or click of the machine and the link to details in the Kea app panel on the machine details page. Note the Kea version being returned and a list of currently loaded hooks. Stork 0.3 has the capability to retrieve the full currently running configuration of Kea. It is now used to do a modest task - list currently loaded hooks. We expect this capability to be heavily used for great variety of things.
|
|
|
7. **Inspect Kea details**.
|
|
|
|
|
|
You can either click on the Version on the Kea apps list or click of the machine and the link to details in the Kea app panel on the machine details page. Note the Kea version being returned and a list of currently loaded hooks. List of subnets is displayed as well.
|
|
|
|
|
|
Note that the Kea app running on agent-kea does not have HA enabled, so HA status is not displayed.
|
|
|
|
|
|
The sample Kea configuration has one subnet that you can inspect here.
|
|
|
The sample Kea configuration has couple subnets that you can inspect here.
|
|
|
|
|
|
8. **Add two Kea servers that work as HA pair**.
|
|
|
|
|
|
8. **Add two Kea servers that work as HA pair**. Go to `Services`->`Machines` and click `Add New Machine`, and add `agent-kea-ha1`. Repeat for `agent-kea-ha2`.
|
|
|
Go to `Services`->`Machines` and click `Add New Machine`, and add `agent-kea-ha1`. Repeat for `agent-kea-ha2`.
|
|
|
|
|
|
You can now inspect the HA status of those servers.
|
|
|
|
|
|
9. **DHCPv6 support**. Stork fully supports IPv6 from the day one. Add another machine called `agent-kea6`. Notice the IPv6 subnet and several pools.
|
|
|
9. **DHCPv6 support**.
|
|
|
|
|
|
Stork fully supports IPv6 from the day one. Add another machine called `agent-kea6`. Notice the IPv6 subnet and several pools.
|
|
|
|
|
|
10. **All subnets in your network**.
|
|
|
|
|
|
Stork lets you view and search through the subnets and pools. Go to `DHCP` and then `Subnets`. You will see all the subnets with pools in them. You can filter the subnets by type (any, DHCPv4 or DHCPv6). You can also type any string. For example, to limit the subnet to 192.0.3.0, you can search for `0.3`. Note that strings shorter than 4 characters require you to press Enter at the end. You can search for specific subnets, pools or pool boundaries.
|
|
|
|
|
|
11. **Pool utilization**.
|
|
|
|
|
|
Open a new tab in your browser and connect to http://localhost:5000 (if running locally) or to http://stork.lab.isc.org:5000 to take a look at the traffic generator. This is not part of the Stork itself, it's a tool we developed to simulate actual networks. It's a bit simple, but sufficient enough to generate traffic. It retrieves list of subnets known by Stork and enables to generate traffic for each subnet. You may want to experiment with it. Things to play with it:
|
|
|
|
|
|
- set the number of clients to somewhat smaller value than the pool size. You'll see a warning (yellow triangle) once you cross the 80% utilization and critical (red error) once you cross 90%. Those threshold are hardcoded as of 0.5, but will be configurable in the future versions.
|
|
|
|
|
|
- traffic generator is currently not able to generate traffic for more than one subnet in a shared network. When you click Start in the next subnet, the traffic in the other subnet for the same shared network stops. This is a limitation of the underlying perfdhcp tool that will be fixed in future Kea releases.
|
|
|
|
|
|
- Stork retrieves the information once per 10 seconds in its database. Unfortunately, the UI does not refresh itself yet and you need to press F5 or ctrl-R to reload the page to see. This will be fixed in Stork 0.6.
|
|
|
|
|
|
- The lease lifetimes have unnaturally short lifetimes of only 3 minutes.
|
|
|
|
|
|
With a little bit of juggling around, you can see something like this:
|
|
|
|
|
|
![pool-util](uploads/2e826cc90770b6064004c2ca86f2660e/pool-util.png)
|
|
|
|
|
|
Make sure you take a look at the shared networks, too!
|
|
|
|
|
|
12. **Shared networks**.
|
|
|
|
|
|
Grouping subnets into shared networks is a very popular feature in Kea and other DHCP servers. Stork supports this ability by showing networks. You can go to `DHCP` -> `Shared networks`. It offers the same filtering mechanism as subnets.
|
|
|
|
|
|
13. **Grafana (Kea)**
|
|
|
|
|
|
Stork 0.5 features a very early Grafana integration. Go to http://localhost:3000 or http://stork.lab.isc.org:3000 and log in using admin/admin credentials. Please don't change the password, so the next person viewing the demo can take a look, too.
|
|
|
|
|
|
Click on Home and then Stork Kea DHCPv4 dashboard. You have plenty of statistics being shown here. Make sure to use the traffic generator, otherwise you'll see boring zeros all the time. Note the pool utilization with two thresholds (80% and 90%) set up.
|
|
|
|
|
|
14. **Grafana (BIND)**
|
|
|
|
|
|
Stork 0.5 demo has a very rudimentary support for BIND statistics. We're currently using third party exporter and existing BIND dashboard.
|
|
|
|
|
|
On grafana interface, click `Home`, then `Import dashboard`, then type in 1666 into the Grafana.com dashboard id. Once the next import step pops up, make sure you change prometheus source to prometheus. (There's prometheus instance running in the demo, which is very eloquently called prometheus). Now you have two dashboards. One for Kea and another one for BIND.
|
|
|
|
|
|
15. **You can change your own password**.
|
|
|
|
|
|
Go to `Profile` -> `Settings`.
|
|
|
|
|
|
10. **All subnets in your network**. Stork lets you view and search through the subnets and pools. Go to `DHCP` and then `Subnets`. You will see all the subnets with pools in them. You can filter the subnets by type (any, DHCPv4 or DHCPv6). You can also type any string. For example, to limit the subnet to 192.0.3.0, you can search for `0.3`. Note that strings shorter than 4 characters require you to press Enter at the end. You can search for specific subnets, pools or pool boundaries.
|
|
|
16. **Change other users password**.
|
|
|
|
|
|
11. **You can change your own password**. Go to `Profile` -> `Settings`.
|
|
|
If you're a super-admin, you can change others passwords. Log in as super-admin (e.g. admin user), click on `Configuration` -> `Users` and then on the user you want to modify. Click `Edit`.
|
|
|
|
|
|
12. **Change other users password**. If you're a super-admin, you can change others passwords. Log in as super-admin (e.g. admin user), click on `Configuration` -> `Users` and then on the user you want to modify. Click `Edit`.
|
|
|
17. **You can delete machines**.
|
|
|
|
|
|
13. **You can delete machines**. Go to `Services` -> `Machines` and pick a machine you want to have deleted. Click on the hamburger button (three horizontal lines) on the right hand and choose `Delete` from the menu.
|
|
|
Go to `Services` -> `Machines` and pick a machine you want to have deleted. Click on the hamburger button (three horizontal lines) on the right hand and choose `Delete` from the menu. Note anything running on the machine will disappear from Stork. The actual services running won't be affected, Stork simply stopped monitoring them. You can re-add them to see that they're doing fine.
|
|
|
|
|
|
Note there's a bug in 0.3 that deletes the machines, but not the apps running on it. It is expected to be fixed shortly.
|
|
|
18. **Check Stork version**.
|
|
|
|
|
|
14. **Check Stork version**. You can hover your mouse over the Stork logo. It will display some information about Stork itself (version, compilation time). This works only in the latest git version and will be made available in upcoming 0.4. (Note that this does not work in the 0.3 version on line.)
|
|
|
You can hover your mouse over the Stork logo. It will display some information about Stork itself (version, compilation time).
|
|
|
|
|
|
# Feedback
|
|
|
|
... | ... | |