Skip to content

Instantly share code, notes, and snippets.

@fristonio
fristonio / setup-dual-stack-tmp.sh
Created November 22, 2020 11:01
Setup a temporary dev DualStack environment for Cilium.
#!/bin/bash
set -euxo pipefail
function setup_cilium() {
cat <<EOF >> /etc/sysconfig/cilium
CILIUM_OPERATOR_OPTS=" --debug --k8s-kubeconfig-path /var/lib/cilium/cilium.kubeconfig --kvstore etcd --kvstore-opt etcd.config=/var/lib/cilium/etcd-config.yml --cluster-pool-ipv4-cidr=10.16.0.0/12 --cluster-pool-ipv6-cidr=fd77::/112 --cluster-pool-ipv6-mask-size 120 --cluster-pool-ipv4-mask-size 24"
EOF
}
@fristonio
fristonio / cluster-admin-kubecfg.tf
Created December 30, 2020 10:01
Terraform file to create a kuebconfig file for a provided cluster with cluster admin access.
variable "endpoint" {
type = string
description = "Endpoint of the kubernetes cluster."
}
variable "client_certificate" {
type = string
description = "Certificate to use for the kubernetes client."
}
@fristonio
fristonio / kubeadm-dual-stack.md
Last active February 22, 2021 13:19
K8s Dual Stack Kubeadm configuration

Valid configuration example:

apiVersion: kubeadm.k8s.io/v1beta2
featureGates:
  IPv6DualStack: true
kind: ClusterConfiguration
networking:
  podSubnet: 10.10.0.0/16,2001:db8::/98
 serviceSubnet: 10.96.0.0/12,2001:db8:9999::/112
@fristonio
fristonio / Vagrantfile
Created April 12, 2022 13:51
Bash script for Vagrant dev environment setup
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.require_version ">=2.0.0"
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/focal64"
config.vm.provision "shell", path: "dev-setup.sh"
@fristonio
fristonio / cilium-dev-env.sh
Last active June 3, 2022 16:08
Cilium dev env bootstrap
#!/bin/bash
# For debian based distro.
# This will setup a complete development environment for Cilium.
# You can also use the cilium vagrant based environment after this setup.
# ./contrib/vagrant/start.sh
set -euxo pipefail
is_user_root () { [ ${EUID:-$(id -u)} -eq 0 ]; }