Integrated Hyperscaler-Agnostic Cloud
Visit Merka.Cloud to learn more.
The best way to get started currently is by using NixOS
On Windows - make sure WSL2 is enabled and follow the instructions here: https://github.com/nix-community/NixOS-WSL
On MacOS - Recommendation is to use OrbStack to add Virtual Machine with NixOS on it: https://docs.orbstack.dev/machines/distros
- Place setup/wsl/configuration.nix file provided into your /etc/nixos/configuration.nix directory
- Rebuild the NixOS with new configuration:
sudo nixos-rebuild switch - Kubernetes K3s configuration file can be found at /etc/rancher/k3s/k3s.yaml , and should be placed on your client machine/host under ~/.kube/config to gain access to newly created cluster
Merka supports large variety of nodes and endpoints, and all bring something unique to expand the ecosystem sometimes beyond your expectations.
- Enable persistent storage on your K3s cluster using
- Install Portainer using Helm on your K3s cluster: https://github.com/portainer/k8s/blob/master/charts/portainer/README.md
- Install Rancher using Helm on your K3s cluster:
- Connect Neon DB helm chart repo: helm repo add neondatabase https://neondatabase.github.io/helm-charts
- Install Neon DB various charts: helm search repo neondatabase
-
We will need to install CloudNativePG operator first, using helm: helm repo add cnpg https://cloudnative-pg.github.io/charts helm upgrade --install cnpg
--namespace cnpg-system
--create-namespace
cnpg/cloudnative-pg -
Next lets create dedicated Namespace for CloudNativePG databases and make it default by running: kubectl create namespace cnpg && kubectl config set-context --current --namespace=cnpg
-
Finally deploy /setup/cloudnative-pg/cloudnative-pg.yaml to your K3s cluster using: kubectl apply -f cloudnative-pg.yaml
helm upgrade --install --create-namespace -n portainer portainer portainer/portainer
--set tls.force=false
--set image.tag=sts
helm ls --all-namespaces
- Install another Nix WSL or VM, based on setup/neon-db/configuration.nix file
- Login to NeonDB VM and execute the following:
git clone --recursive https://github.com/neondatabase/neon.git cd neon
The preferred and default is to make a debug build. This will create a demonstrably slower build than a release build.
make -jnproc -s