Skip to content

Instantly share code, notes, and snippets.

View gramidt's full-sized avatar
👨‍💻
Building products people love

Granville Schmidt gramidt

👨‍💻
Building products people love
View GitHub Profile
@gramidt
gramidt / proxmox-ceph.md
Created May 17, 2025 13:53 — forked from scyto/proxmox-ceph.md
setting up the ceph cluster

CEPH HA Setup

Note this should only be done once you are sure you have reliable TB mesh network.

this is because proxmox UI seems fragile wrt to changing underlying network after configuration of ceph.

All installation done via command line due to gui not understanding the mesh network

This setup doesn't attempt to seperate the ceph public network and ceph cluster network (not same as proxmox clutser network), The goal is to get an easy working setup.

**2025.04.24 NOTE: some folks had to switch to IPv6 for ceph due to IPv4 unreliability issues, we think as of pve 8.4.1 and all the input the community has give to update this set of gsists - that IPv4 is now reliable even on MS-01. As such i advising everyone to use IPv4 for ceph as if you have IPv6 you will have issues with SDN at this time (if you don't use SDN this is not an issue).

@gramidt
gramidt / dual-stack-openfabric-mesh-v2.md
Created May 16, 2025 04:42 — forked from scyto/dual-stack-openfabric-mesh-v2.md
New version of my mesh network using openfabric

Enable Dual Stack (IPv4 and IPv6) OpenFabric Routing

Version 2.5 (2025.04.27)

this gist is part of this series

This assumes you are running Proxmox 8.4 and that the line source /etc/network/interfaces.d/* is at the end of the interfaces file (this is automatically added to both new and upgraded installations of Proxmox 8.2).

This changes the previous file design thanks to @NRGNet and @tisayama to make the system much more reliable in general, more maintainable esp for folks using IPv4 on the private cluster network (i still recommend the use of the IPv6 FC00 network you will see in these docs)

@gramidt
gramidt / proxmox-tb-net.md
Created May 16, 2025 04:42 — forked from scyto/proxmox-tb-net.md
Thunderbolt Networking Setup

Thunderbolt Networking

this gist is part of this series

you wil need proxmox kernel 6.2.16-14-pve or higher.

Load Kernel Modules

  • add thunderbolt and thunderbolt-net kernel modules (this must be done all nodes - yes i know it can sometimes work withoutm but the thuderbolt-net one has interesting behaviou' so do as i say - add both ;-)
    1. nano /etc/modules add modules at bottom of file, one on each line
  1. save using x then y then enter
@gramidt
gramidt / devcontainer.sh
Created August 21, 2024 20:06 — forked from IgnisDa/devcontainer.sh
Helix devcontainer
#!/usr/bin/env bash
set -e
remove_flag=""
if [ "$1" = "true" ]; then
remove_flag="--remove-existing-container"
fi
# Generate certificate
@gramidt
gramidt / Dockerfile
Last active December 2, 2021 18:56
OpenTelemetry Collector ARM Dockerfile
ARG OTEL_CONTRIB_COLLECTOR_VERSION=v0.23.0
FROM alpine:3.13 as certs
RUN apk --update add ca-certificates
FROM alpine:3.13 AS otelcol
ARG OTEL_CONTRIB_COLLECTOR_VERSION
RUN wget -O /otelcontribcol "https://github.com/open-telemetry/opentelemetry-collector-contrib/releases/download/${OTEL_CONTRIB_COLLECTOR_VERSION}/otelcontribcol_linux_arm64"
RUN chmod 755 /otelcontribcol
@gramidt
gramidt / IAM Permissions List.md
Created February 5, 2019 01:52 — forked from mechcozmo/IAM Permissions List.md
A list of IAM permissions you can use in policy documents. Collected from the myriad of places Amazon hides them. (incomplete)
@gramidt
gramidt / build-aad-b2c-combined-policy-jwk.py
Last active November 19, 2018 15:56
Download and combine the Json Web Keys (JWKs) into a single JWK for all of the specified Azure Active Directory B2C (AAD B2C) policies on a tenant.
"""Download and combine Azure Active Directory B2C JWKs.
Download and combine the Json Web Keys (JWKs) into a single JWK for all of the specified Azure Active Directory B2C (AAD B2C) policies on a tenant.
Example:
$python build-aad-b2c-combined-policy-jwk.py --tenant_url https://login.microsoftonline.com/fabrikamb2c.onmicrosoft.com --policies b2c_1_sign_in,b2c_1a_another_policy
"""
import sys
import argparse
@gramidt
gramidt / bobp-python.md
Created August 2, 2018 20:55 — forked from sloria/bobp-python.md
A "Best of the Best Practices" (BOBP) guide to developing in Python.

The Best of the Best Practices (BOBP) Guide for Python

A "Best of the Best Practices" (BOBP) guide to developing in Python.

In General

Values

  • "Build tools for others that you want to be built for you." - Kenneth Reitz
  • "Simplicity is alway better than functionality." - Pieter Hintjens