205 Commits

Author SHA1 Message Date
Andrei Kvapil
b8e33d194d Prepare release v0.13.0 (#321)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- **New Features**
- Enhanced monitoring capabilities for Kubernetes deployments, including
checks for `vmalert`, `vlogs`, and `vmcluster`.

- **Updates**
- Updated container images for `cozystack` and `darkhttpd` to version
`v0.13.0`.
- Version mapping updates for `ferretdb`, `kubernetes`, and
`virtual-machine` packages.
- Updated image tags and digests for Kubeapps components to version
`v0.13.0`.
	- Updated image tag for Kamaji to version `v0.13.0`.
	- Added new pod metadata labels to the `vmalertmanager` configuration.

- **Bug Fixes**
- Improved operational status checks for Kubernetes resources using
JSONPath expressions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-31 09:04:40 +02:00
Andrei Kvapil
c79399abb7 cilium node port (#323)
- Prepare release v0.13.0
- Cilium: enable nodePort

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-30 18:01:00 +02:00
Andrei Kvapil
005821476c Introduce valuesFiles for various Cilium configurations (#322)
This PR introduces different values files for `cozy-cilium` chart, and
`valuesFiles` for fluxcd.

This might be useful in cases where same chart reused for multiple
configurations

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Introduced multiple values files for enhanced configuration management
in Cilium deployments.
- Added new YAML configurations for Cilium, allowing for tailored
networking settings in Kubernetes.

- **Bug Fixes**
- Removed deprecated configuration parameters to simplify deployment and
management of Cilium.

- **Documentation**
- Updated Helm templates to support conditional inclusion of values
files, improving flexibility in chart rendering.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-30 17:27:06 +02:00
Andrei Kvapil
53fae0d3f4 cilium: enable SCTP feature (#320)
This PR enables SCTP support in Cilium.

It is required to use with kube-ovn configuration as it is fixes
`externalTrafficPolicy: Local` issues:

- https://github.com/kubeovn/kube-ovn/issues/4457
2024-08-30 13:52:58 +02:00
Andrei Kvapil
4746d51785 VM: add Talos Linux (#319) 2024-08-30 13:30:39 +02:00
Andrei Kvapil
b7bfc4c4a9 VM: fix Alpine Image (#318)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-30 13:28:59 +02:00
Andrei Kvapil
0e7dc14d79 KubeVirt: enable expand disks feature (#317)
- cdi: add ExpandDisks feature
- kubevirt: add ExpandDisks feature
2024-08-30 13:16:15 +02:00
Andrei Kvapil
55282acdba vm: use block volumes to enable live-migration (#316)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-30 13:14:46 +02:00
Andrei Kvapil
5efef2eec5 use bridge binding for Kubernetes VMs (#315)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
	- Updated version of the Kubernetes application to 0.10.0.
- Enhanced network configuration for improved pod performance, including
support for live migration.
- Introduced a new network section for better integration with
Kubernetes networking features.

- **Bug Fixes**
- Improved network interface management for better flexibility and
control.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-30 13:14:33 +02:00
Andrei Kvapil
9b6dd19dc8 Update KubeVirt v1.3.1 (#314) 2024-08-30 12:09:40 +02:00
Andrei Kvapil
dc69adc9e2 Revert "Update KubeVirt v1.3.1" (#313)
Reverts aenix-io/cozystack#311
2024-08-30 12:07:40 +02:00
Andrei Kvapil
9ae098c5e3 Update CDI v1.60.2 (#312) 2024-08-30 12:02:52 +02:00
Andrei Kvapil
697bbd59eb Update KubeVirt v1.3.1 (#311)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Updated version identifiers for the `ferretdb`, `virtual-machine`,
`monitoring`, and `seaweedfs` packages to enhance clarity and
traceability.
	- Added new version entry for `monitoring` version `1.4.0`.

- **Improvements**
- Upgraded the `cozystack` component to a newer image version
(`v0.13.0`), potentially including bug fixes and performance
enhancements.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2024-08-30 12:02:41 +02:00
Artem Rootman
428284354c Rework VirtualMachine, introduce cloudinit and sshKeys configuration, fix externalPorts (#303)
Add `externalPorts`, `sshKeys` and `cloudInit` options with examples.
Remove `service`, `sshPwauth`, `disableRoot`, `password`, `chpasswdExpire` options

---------

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
Co-authored-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-30 11:51:04 +02:00
Andrei Kvapil
b908400d59 fix: typo in storageClass (#310) 2024-08-30 09:42:01 +02:00
Andrei Kvapil
cd991bd2dc fix e2e tests (specify namespace) (#309)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-29 17:36:19 +02:00
Andrei Kvapil
5b631a6def Update FerretDB v1.24.0 (#307)
This release includes fix for C# library

https://github.com/FerretDB/FerretDB/issues/4475#issuecomment-2315663589

as well many other improovments

https://github.com/FerretDB/FerretDB/releases/tag/v1.24.0

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- **New Features**
- Updated the application to version 1.24.0, bringing enhancements and
improvements.
- Upgraded the container image to version 1.24.0 for the `ferretdb`
application, ensuring access to the latest features and fixes.

- **Chores**
- Incremented the chart version from 0.2.0 to 0.3.0 to reflect the new
release.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-29 12:47:00 +02:00
Andrei Kvapil
adaf603bc2 Add fluent-bit and VictoriaLogs (#305)
![Screenshot 2024-08-28 at 15-10-20 Explore - vlog-generic -
Grafana](https://github.com/user-attachments/assets/4ba926d3-fb56-411b-88d5-a00d5d17b3dc)

---------

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-29 12:46:46 +02:00
Andrei Kvapil
9357ad4754 Prepare release v0.12.0 (#301)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-21 13:06:07 +02:00
Andrei Kvapil
fcccfd4f52 Update cilium v1.16.1 (#300) 2024-08-21 12:06:07 +02:00
Andrei Kvapil
710605100f Add opportunity to override values for tenant Kubernetes clusters (#297)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-21 11:55:46 +02:00
Andrei Kvapil
c07c4bbdab Introduce stroageClass option for all applications (#290)
Provide the oportunity to specify StroageClass in applications

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-20 17:19:10 +02:00
Andrei Kvapil
9be774ad30 Add e2e testing sandbox (#295)
This PR introduces new functionality for running e2e-tests in
k8s-cluster.

`make test` from a root invokes deploying of new sandbox for testing
cozystack.

from `packages/core/testing`:

`make test` - runs the end-to-end tests.
`make exec` - opens an interactive shell in the sandbox container.
`make login` - downloads the kubeconfig into a temporary directory and
runs a shell with the sandbox environment; mirrord must be installed.
`make proxy` - enables a SOCKS5 proxy; mirrord and gost must be
installed.

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-20 09:07:43 +02:00
Artem Rootman
3b67f1fb27 Update Virtual Machine Chart Configuration and Documentation (#292)
- Refactored `values.yaml` to move disk size under `resources` and added
`service.ports` configuration.
- Updated `README.md` to include detailed parameter descriptions and
example configuration.
- Modified `service.yaml` to use dynamic port configuration from
`values.yaml`.
- Corrected `vm.yaml` to reference disk size from `resources` and
updated base image URL for Fedora.
- Revised `values.schema.json` to align with changes in `values.yaml`,
including added parameters and descriptions.

Enhancements include:
- Improved clarity of default values and parameter settings.
- Added flexibility for service port customization.
- Corrected and updated URLs and default values for better accuracy.
2024-08-19 15:02:16 +02:00
Andrei Kvapil
b3d4c9c6a2 fix CSI label for tenant Kubernetes clusters (#291) 2024-08-19 10:12:12 +02:00
Andrei Kvapil
4471b4ba2a Fix vmrules to process memory metrics (#289)
This PR fixes memory charts,

fixes https://github.com/aenix-io/cozystack/issues/285


![image](https://github.com/user-attachments/assets/3ceb8a4d-6fdf-49d3-80be-ff83567ba61c)

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-16 10:26:23 +02:00
Andrei Kvapil
a120ce726e DX: Use generic Makefile for packages (#288)
This change is aimed at improving the development experience.

- The option `make delete` has been added.
- Added check for `NAME` and `NAMESPACE` variables
- Now, any package (not just system ones) can include options such as
make show, make diff, make apply.
- Applications from packages/extra require explicit specification of the
`NAMESPACE`.
- Applications from packages/apps require explicit specification of both
`NAME` and `NAMESPACE`.

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-16 10:26:13 +02:00
Andrei Kvapil
a2bcf1006f Update VPN (#287)
Add new options: `host` and `externalIPs`.
Automatic password generation
Provide resource-view to dashboard for getting connection URLs

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-16 10:26:02 +02:00
Andrei Kvapil
71514249c4 Prepare release v0.11.0 (#280)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-12 20:37:20 +02:00
Andrei Kvapil
dd1d9121f2 Update Talos Linux v1.7.6 (#279) 2024-08-12 20:07:27 +02:00
Andrei Kvapil
bbdec9bc84 Update Cilium v1.16 (#277)
The new Cilium already enables our patch
https://github.com/cilium/cilium/pull/32730. It should be better to
update instead of keeping it in-tree

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-12 15:38:40 +02:00
Andrei Kvapil
40fd96dc3b Update dashboard icons (#274)
![image_2024-08-12_12-53-02
(2)](https://github.com/user-attachments/assets/8348e2ea-c89a-45aa-9ad3-de7c83f4ad1a)


![image_2024-08-12_12-53-02](https://github.com/user-attachments/assets/4b28228e-fcbe-4c03-b02a-d3c6d59f6b0a)


![image_2024-08-12_12-56-29](https://github.com/user-attachments/assets/d6852b43-1391-4bab-afc4-859433311ead)

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
Co-authored-by: Viktoriia Kvapil <159528100+kvapsova@users.noreply.github.com>
2024-08-12 14:47:11 +02:00
Andrei Kvapil
94c688f74c SeaweedFS (#131)
This PR adds SeaweedFS

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-12 14:33:48 +02:00
Andrei Kvapil
2f0373d26b Update LINSTOR v1.28 (#276) 2024-08-12 14:33:31 +02:00
Andrei Kvapil
c56e576906 fix network-policies (#272)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-12 10:10:18 +02:00
Andrei Kvapil
3dcc9ca6d0 Fix hardcoded values in ingress resource (#269) 2024-08-08 20:56:00 +02:00
Andrei Kvapil
00f7c3647b Upd dashboard and handle ResourceView (#262)
- Patch Dashboard to use specific role for resourceview
- Update kubeapps v2.11.0

partially fixes https://github.com/aenix-io/cozystack/issues/259

---------

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-07 12:35:45 +02:00
Andrei Kvapil
cdb60f0cb1 Remove build artifacts from repository (#266)
Let's use approach suggested by @nbykov0 in
https://github.com/aenix-io/cozystack/pull/175

We will only update values.yaml and do not store build json artifact

The reset charts include this change in
- https://github.com/aenix-io/cozystack/pull/262
- https://github.com/aenix-io/cozystack/pull/263
- https://github.com/aenix-io/cozystack/pull/264
- https://github.com/aenix-io/cozystack/pull/265

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-07 12:35:24 +02:00
Andrei Kvapil
e249914865 Update kube-ovn manifests to 9e928d6 (#265)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-07 12:35:12 +02:00
Andrei Kvapil
0bdbce7991 Update Cilium v1.15.7 (#264)
Update Cilium v1.15.7
2024-08-07 12:35:00 +02:00
Andrei Kvapil
72711dfefc fix kamaji garbage collection (#263)
upstream issue https://github.com/clastix/kamaji/issues/508 

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>

Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-08-07 12:34:47 +02:00
Andrei Kvapil
13c9ec1626 add: objectstorage-controller (#244)
As part of
- https://github.com/aenix-io/cozystack/pull/131
- https://github.com/seaweedfs/seaweedfs/issues/5838

This controller will be used to provisioning S3 buckets in SeaweedFS

Upstream projects: 

-
https://github.com/kubernetes-sigs/container-object-storage-interface-api
-
https://github.com/kubernetes-sigs/container-object-storage-interface-controller

Docs:

- https://container-object-storage-interface.github.io/
2024-08-07 12:34:33 +02:00
klinch0
96f96a798a fix doc url (#257) 2024-08-05 23:37:42 +03:00
Andrei Kvapil
2ecaf24313 fix: kubeovn building (#253)
While update isn't possbile for now, let's use workaround, to hardcode
older ovn version

- details: https://github.com/aenix-io/cozystack/pull/252
2024-08-05 21:28:43 +02:00
Andrei Kvapil
e54608d8dd Fix ingress forward both 80 and 443 ports to tenant clusters (#243) 2024-07-30 19:09:41 +02:00
Andrei Kvapil
4f6d33aaa8 remove kubeovn ependency from distro-full bundle (#240) 2024-07-26 18:31:01 +02:00
Mr Khachaturov
a17c622b00 Add snapshot-controller (#237)
Added snapshot-controller to system packages. 

It is included in pass-full bundle. 
Also added new cluster issuer `selfsigned-cluster-issuer`.
2024-07-26 18:27:34 +02:00
Andrei Kvapil
ac11056e0a Prepare release v0.10.1 (#238)
Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
2024-07-26 13:58:08 +02:00
Andrei Kvapil
32f22adb26 ingress forward both 80 and 443 ports to tenant clusters (#235)
We need to separate HTTP and HTTPS traffic and send them into tenant
clusters.
Currently traffic was sending only on HTTPS port, this PR enables HTTP
traffic forwarding.

Nginx ingress does not support setting correct upstream according to
type of traffic (http or https)
There are set of issues in upstream.

- https://github.com/kubernetes/ingress-nginx/issues/1655
- https://github.com/kubernetes/ingress-nginx/issues/9061
- https://github.com/kubernetes/ingress-nginx/issues/11334

Good to know that we found reliable workaround

fixes:
https://github.com/aenix-io/cozystack/issues/209#issuecomment-2215021489
2024-07-26 12:01:28 +02:00
Andrei Kvapil
4c5a37d75b Kubernetes: fix node-role labels propogation (#234)
fixes https://github.com/aenix-io/cozystack/issues/209
2024-07-26 12:01:13 +02:00