k3s-oci-cluster
traefik
Our great sponsors
k3s-oci-cluster | traefik | |
---|---|---|
6 | 183 | |
208 | 47,726 | |
- | 1.5% | |
0.0 | 9.2 | |
5 months ago | 6 days ago | |
HCL | Go | |
GNU General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
k3s-oci-cluster
-
K8s cluster with OCI free-tier and Raspberry Pi4 (part 1)
After you've cloned the repo, go to oci/terraform.tfvars and edit all values with the ones from your notes file. This build uses the great terraform configuration files from this repo of garutilorenzo (using version 2.2; if you have errors running all of this, you should check what changed in this repo since v2.2, or 01.02.23). You can read here if you want to customize your configuration and edit the main.tf file. This is the diagram that garutilorenzo made and how your deployment will look like (this tutorial is without Longhorn and ArgoCD, with 1 server nodes + 3 worker nodes and with ingress controller set as Traefik): *note - I've got some problems with clock of WSL2 not being synced to Windows clock. And provisioning didn't worked so if you receive clock errors too, verify your time with datecommand, if out of sync just run sudo hwclock -s or sudo ntpdate time.windows.com. Now just run terraform plan and then terraform apply. If everything was ok you should have your resources created.
- Is there a step by step guide to Oracle Free Tier setups?
-
OCI free Kubernetes cluster, new terraform module release
This new release v2.0 introduces:
-
Deploy Kubernetes (K8s) on Amazon AWS using mixed on-demand and spot instances
We use the same stack used in this repository. This stack need longhorn and nginx ingress.
-
Deploy a Kubernetes cluster for free, using k3s and Oracle always free resources.
This module will deploy a Kubernetes cluster for free, using K3s and Oracle always free resources.
-
Deploy a Kubernetes cluster for free, using K3s and Oracle always free resources
Var Required Desc region yes set the correct OCI region based on your needs availability_domain yes Set the correct availability domain. See how to find the availability domain compartment_ocid yes Set the correct compartment ocid. See how to find the compartment ocid cluster_name yes the name of your K3s cluster. Default: k3s-cluster k3s_token yes The token of your K3s cluster. How to generate a random token my_public_ip_cidr yes your public ip in cidr format (Example: 195.102.xxx.xxx/32) environment yes Current work environment (Example: staging/dev/prod). This value is used for tag all the deployed resources compute_shape no Compute shape to use. Default VM.Standard.A1.Flex. NOTE Is mandatory to use this compute shape for provision 4 always free VMs os_image_id no Image id to use. Default image: Canonical-Ubuntu-20.04-aarch64-2022.01.18-0. See how to list all available OS images oci_core_vcn_cidr no VCN CIDR. Default: oci_core_vcn_cidr oci_core_subnet_cidr10 no First subnet CIDR. Default: 10.0.0.0/24 oci_core_subnet_cidr11 no Second subnet CIDR. Default: 10.0.1.0/24 oci_identity_dynamic_group_name no Dynamic group name. This dynamic group will contains all the instances of this specific compartment. Default: Compute_Dynamic_Group oci_identity_policy_name no Policy name. This policy will allow dynamic group 'oci_identity_dynamic_group_name' to read OCI api without auth. Default: Compute_To_Oci_Api_Policy kube_api_port no Kube api default port Default: 6443 public_lb_shape no LB shape for the public LB. Default: flexible. NOTE is mandatory to use this kind of shape to provision two always free LB (public and private) http_lb_port no http port used by the public LB. Default: 80 https_lb_port no http port used by the public LB. Default: 443 k3s_server_pool_size no Number of k3s servers deployed. Default 2 k3s_worker_pool_size no Number of k3s workers deployed. Default 2 install_longhorn no Boolean value, install longhorn "Cloud native distributed block storage for Kubernetes". Default: true longhorn_release no Longhorn release. Default: v1.2.3 unique_tag_key no Unique tag name used for tagging all the deployed resources. Default: k3s-provisioner unique_tag_value no Unique value used with unique_tag_key. Default: https://github.com/garutilorenzo/k3s-oci-cluster PATH_TO_PUBLIC_KEY no Path to your public ssh key (Default: "~/.ssh/id_rsa.pub) PATH_TO_PRIVATE_KEY no Path to your private ssh key (Default: "~/.ssh/id_rsa)
traefik
-
How to securely reverse-proxy ASP.NET Core web apps
However, it's very unlikely that .NET developers will directly expose their Kestrel-based web apps to the internet. Typically, we use other popular web servers like Nginx, Traefik, and Caddy to act as a reverse-proxy in front of Kestrel for various reasons:
-
Deploying Web Apps with Caddy: A Beginner's Guide Caddy
Not as good though. Case in point: https://github.com/traefik/traefik/issues/5472#issuecomment-... (that's just from this morning)
I'm speak objectively here. Of course, any built-in auto HTTPS that works (more or less) is better than none. Traefik uses an ACME library that was originally written for Caddy. After the original author left that project, Traefik team started maintaining it. Caddy's users' requirements exceeded what the library was capable of, but unfortunately there was friction in getting it to achieve our requirements. So I ended up writing a new ACME client library in Go and, together with upgrades in CertMagic (Caddy's auto-TLS lib), Caddy has the more flexible, robust, and capable auto-HTTPS functionality.
That is to say, not all auto-HTTPS functionalities are the same.
-
Security Workshop Part 1 - Put up a gate
We'll use Traefik, an open source cloud native gateway that can plug into a Kubernetes cluster. It has the concept of "middleware" that can process API requests before passing them through to a backend. We can configuring a rate limit for all of our API endpoints by matching on the request path:
-
Install plugin in k8s cluster running in Kind
I did the same question here and here
- The Tailscale Universal Docker Mod
-
Set Default Config in traefik.toml and overwrite with specific container config
Sadly there is currently no way of doing so. https://github.com/traefik/traefik/issues/6999
- Istio moved to CNCF Graduation stage
-
Docker Services question
Traefik is another widely used system that has automatic configuration and offers support for more things like swarm/kubernetes/etc.
-
nginx alternatives
I have a webapp which I currently have deployed by running nginx in a container. Works as it should, however I am intersted in adding more observability to the webapp and found this reverse-proxy https://github.com/traefik/traefik which seems to expose some nice metrics which can be useful for observability.
-
Make traefik only accessible over tailscale
``` more details in this (github issue)[https://github.com/traefik/traefik/issues/5059]
What are some alternatives?
oracle-cloud-terraform-examples - Oracle cloud terraform examples, provision oracle cloud resources using terraform
Nginx Proxy Manager - Docker container for managing Nginx proxy hosts with a simple, powerful interface
k3s-aws-terraform-cluster - Deploy an high available K3s cluster on Amazon AWS
Caddy - Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS
longhorn - Cloud-Native distributed storage built on and for Kubernetes
ingress-nginx - Ingress-NGINX Controller for Kubernetes
terraform-oci-tdf-network-security - (OCI) Oracle Cloud Infrastructure module to manage security policies
Squid - Squid Web Proxy Cache
flannel - flannel is a network fabric for containers, designed for Kubernetes
envoy - Cloud-native high-performance edge/middle/service proxy
terraform-hcloud-kube-hetzner - Optimized and Maintenance-free Kubernetes on Hetzner Cloud in one command!
socks5-proxy-server - SOCKS5 proxy server