Skip to content

Commit

Permalink
Merge branch 'v7.6.0' into v7.5.2
Browse files Browse the repository at this point in the history
  • Loading branch information
robertglonek authored May 31, 2024
2 parents 60aaf5a + 6ba54a2 commit bc3a442
Show file tree
Hide file tree
Showing 190 changed files with 203,501 additions and 1,191 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG/7.5.2.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# [v7.5.2](https://github.com/aerospike/aerolab/releases/tag/7.5.2)

_Release Date: MMM DD, YYYY_
_Release Date: May 31st, 2024_

**Release Notes:**
* FIX: `grow` command for clusters and clients would not correctly inherit the expiry dates.
Expand Down
47 changes: 47 additions & 0 deletions CHANGELOG/7.6.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
# [v7.6.0](https://github.com/aerospike/aerolab/releases/tag/7.6.0)

_Release Date: Month Day, Year_

**Release Notes:**
* CI: Update all dependencies: brew install actions, rpm package, golang version and Packages.
* AWS: Allow aerolab to deploy in AWS using private IPs only, with public IPs disabled. Use as `aerolab config backend -t aws --aws-nopublic-ip`.
* WebUI: always show current backend in the top.
* WebUI: Add asbench ui for asbench command generation.
* Client: Add eks client - eksctl bootstrap system.
* Client: Open ports 8998 and 8182 for Vector and Graph clients.
* Upgrade: improved `aerolab upgrade --edge` - always install latest pre-release if multiple are available.
* Upgrade: added `aerolab upgrade --bugfix` - will upgrade to latest fix version, not bleeding edge version.
* Partitioner: when configuring index on device, parse partition tree sprig configs and fix if required.
* GCP: support hyperdisks and `n4` family instances
* AWS,GCP: support new format parameters `--aws-disk` and `--gcp-disk` allowing ssh-style option specification.
* Support for all disk types, with and without provisioned Iops and Throughput.
* Client: Vector: add support for centos-stream-9 base.
* WebUI: Make `instance-type` and `zone` listings in `cluster/client create` commands a dropdown instead of freeform field.
* AGI: If timestamp is missing year, assume current year.
* WebUI: Multi-user aerolab webui support.
* Top-right job list: add "show all user jobs" switch, add username/email info of user to each job
* Add support for special owner/user header which can be set which will define the user running the command/session itself (so can be used with authenticating proxy) - `x-auth-aerolab-user`.
* Change `weblog` path to `./weblog/user-owner/items.log`.
* WebUI: Non-AGI firewalls (cluster/client/template) should use per-user firewall names by default to avoid conflicts if `--unique-firewalls` is specified when starting WebUI.
* WebUI: For inventory on all AGI and AGI-monitor components, require valid certificates if `--agi-strict-tls` is specified.
* AGI: AWS: Create: Add option for creating AWS `route53` sub-domain entries automatically for each instance.
* Expiry system - cleanup unused DNS entries (late cleanup).
* AGI Create command - create DNS entries as part of AGI creation, set tags to domain name and zoneid, update expiry system zoneid if required.
* Inventory List and web inventory - provide domain name as URL instead of IP if domain tag is set.
* AGI Access Token with `--url` option - set url to domain name if used.
* AWS backend destroy call - attempt to cleanup the domain used in AGI, if one is set.
* Expiry system installer - support route53, support updating route53 zone name Env variable, support sticky route53 zoneID if not specified.
* AGI Monitor: restrict TLS mode to strong cyphers.
* AGI: Add support for non-aerospike-server logs.
* AGI: Add patterns and dashboard for XDR Proxy and Kafka Outbound connectors.
* AGI: GrafanaFix: Remove potential race condition on startup on docker.

## TODO:

* Add support for ubuntu 24.04 (default with aerospike 7.2)
* WebUI: If `webCmd.allowls` returns `false`, add option for performing file uploads to server temporary directory from the browser and using that.
* WebUI: If `webCmd.allowls` returns `false`, `files upload/download` options will present with browser upload window, but will perform proxy-stream upload/downlad instead of using a temporary local directory.
* WebUI: Implement `simple` mode in which the number of items/options/features is reduced, hiding the more obscure settings.
* Provide slider for `simple/full` mode with option in the command line to disable said slider.
* Provide sane defaults for simple mode, with option to reconfigure which options are present using a text file list of Functions and Options.
* UPDATE HOSTED MODE DOC - Explain what simple mode is and how to tune/use it
154 changes: 0 additions & 154 deletions Formula/rpm.rb

This file was deleted.

3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -75,11 +75,13 @@ An alternative method of access exists on MacOS and Linux, if using `--no-autoex
* [Partitioner](docs/partitioner/partition-disks.md)
* [Advanced - AWS Firewall Rules](docs/aws-firewall.md)
* [Advanced - Custom VPC](docs/vpc.md)
* [Advanced - Run without PublicIPs](docs/aws-no-publicip.md)
* [Docker Multiarch](docs/docker_multiarch.md)
* [Usage examples](docs/usage/index.md)
* [Basic](docs/usage/basic/index.md)
* [Advanced](docs/usage/advanced/index.md)
* [Full Stack](docs/usage/full-stack/index.md)
* [AWS EKS Kubernetes](docs/eks/README.md)
* [DirEnv - different aerolab configuration per directory](docs/direnv.md)
* [AGI - graphing aerospike statistics from logs](docs/agi/README.md)
* [Deploying clients](docs/deploy_clients/index.md)
Expand All @@ -95,6 +97,7 @@ An alternative method of access exists on MacOS and Linux, if using `--no-autoex
* [REST API](docs/rest-api.md)
* [Utility scripts](docs/utility_scripts/index.md)
* [Volume usage examples](docs/volume-examples.md)
* [WebUI Hosted Mode](docs/webui.md)

## Changelog

Expand Down
2 changes: 1 addition & 1 deletion VERSION.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
7.5.1
7.6.0
3 changes: 3 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,13 @@
* [Partitioner](partitioner/partition-disks.md)
* [Advanced - AWS Firewall Rules](aws-firewall.md)
* [Advanced - Custom VPC](vpc.md)
* [Advanced - Run without PublicIPs](aws-no-publicip.md)
* [Docker Multiarch](docker_multiarch.md)
* [Usage examples](usage/index.md)
* [Basic](usage/basic/index.md)
* [Advanced](usage/advanced/index.md)
* [Full Stack](usage/full-stack/index.md)
* [AWS EKS Kubernetes](eks/README.md)
* [AGI - graphing aerospike statistics from logs](agi/README.md)
* [DirEnv - different aerolab configuration per directory](direnv.md)
* [Deploying clients](deploy_clients/index.md)
Expand All @@ -35,3 +37,4 @@
* [REST API](rest-api.md)
* [Utility scripts](utility_scripts/index.md)
* [Volume usage examples](volume-examples.md)
* [WebUI Hosted Mode](webui.md)
36 changes: 36 additions & 0 deletions docs/aws-no-publicip.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Using AWS backend subnets without public IPs

The below example deploys an aerolab `client` machine in a subnet with a Public IP, so that we can reach it.

Once that machine is deployed, with `aerolab`, on it, we connect to the machine and deploy the infrastructure from there into subnets without public IP assignments.

Requirements:
* the private subnet must have a NAT gateway route allowing the nodes to route out to the internet so that installation may proceed
* this is only required for the creation of clients other than `none` and cluster node templates; `none` clients and cluster deployments from existing templates does not require an internet connection
* the subnet on which aerolab lives must be able to route to the private-ip subnet

```bash
# deploy a client machine in a public subnet; use a non-default sec group name
aerolab client create none -n aerolab -I t3a.xlarge --secgroup-name=external -U subnet-099516584ce4e870f

# install aerolab on the client machine
aerolab client configure aerolab --name aerolab

# copy permissions to the client machine
aerolab files upload -c -n aerolab ~/.aws /root/

# attach to the client machine
aerolab client attach -n aerolab

# on aerolab client machine - configure backend and deploy clusters and clients in private subnet with no public IPs
aerolab config backend -t aws -r us-west-2 --aws-nopublic-ip
aerolab cluster create -v 7.0.0.2 -n testsrv -I t3a.xlarge -U subnet-05553cf8361f4dde1
aerolab client create none -n testcl -I t3a.xlarge -U subnet-05553cf8361f4dde1
```

## Cleanup:

```bash
aerolab cluster destroy -f -n testsrv
aerolab client destroy -f -n testcl,aerolab
```
Loading

0 comments on commit bc3a442

Please sign in to comment.