Skip to content

Instantly share code, notes, and snippets.

View VerosK's full-sized avatar
🚌
On the road.

Věroš Kaplan VerosK

🚌
On the road.
View GitHub Profile
@VerosK
VerosK / remote_state_bucket.tf
Created September 27, 2023 13:06
Remote state in Teraform shortcut
resource "random_integer" "suffix" {
min = 1000000
max = 9999999
}
resource "aws_s3_bucket" "remote_state" {
bucket = "tf-remote-state-${random_integer.suffix.result}"
}
resource "aws_dynamodb_table" "remote_state_lock" {
@VerosK
VerosK / get_events.py
Last active July 13, 2023 13:12
Python github api demo
#!/usr/bin/env python3
import json
import random
import requests
import sqlite3
EVENTS_URL = 'https://api.github.com/events'
db = sqlite3.connect("github.sqlite")
@VerosK
VerosK / setup-nfs-provisioner.sh
Last active June 30, 2022 09:19
NFS provisiner setup
NFS_SERVER=192.168.0.0
NFS_EXPORT=/data
helm repo add nfs-subdir-external-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
helm upgrade --install -n kube-system \
nfs-provisioner nfs-subdir-external-provisioner/nfs-subdir-external-provisioner \
--set nfs.server=$NFS_SERVER \
--set nfs.path=$NFS_EXPORT \
--set storageClass.name=nfs \
@VerosK
VerosK / registry.service
Created June 30, 2022 08:18
Registry skeleton
# /etc/systemd/system/registry.service
[Unit]
Description=Registry
Documentation=https://docs.docker.com/registry/configuration/
Wants=network-online.target
After=network-online.target
[Install]
WantedBy=multi-user.target
@VerosK
VerosK / patch-ingressclass.yml
Created June 30, 2022 07:23
Patch nginx ingressclass to make it default
# kubectl patch ingressclasses.networking.k8s.io nginx --patch-file patch-ingressclass.yml
metadata:
annotations:
ingressclass.kubernetes.io/is-default-class: "true"
@VerosK
VerosK / get-powerline.yaml
Created June 30, 2022 07:06
Get powerline
- name: Install powerline
hosts: all
become: yes
#vars:
# ansible_python_interpreter: python3
tasks:
- set_fact:
powerline_url: https://github.com/justjanne/powerline-go/releases/download/v1.22.1/powerline-go-linux-amd64
when: ansible_architecture == 'x86_64'
frontend stats
bind 127.0.0.1:10001
mode http
use_backend stats
frontend kube_80
bind 0.0.0.0:80
mode tcp
option tcplog
use_backend kube_80

Sběr logů v K8S

Návod pro k3s

  • kontejnery (CRI) logují do/var/log/containers/....

    • například /var/log/containers/fluent-bit-k4h8j_logging_fluent-bit-f0c5fdc11e04e560b6aaec8295e9b3311a7be83041d43601f8f86b68d3aa1a07.log
  • na každém worker node běží fluent-bit, který je sbírá jako soubory

  • vytváří události s tagem kube.var.log.containers.fluent-bit-k4h8j_logging_fluent-bit-f0c5fdc11e04e560b6aaec8295e9b3311a7be83041d43601f8f86b68d3aa1a07.log

@VerosK
VerosK / beat.yml
Last active May 5, 2022 07:26
Elasticsearch
apiVersion: beat.k8s.elastic.co/v1beta1
kind: Beat
metadata:
name: syslog
spec:
type: filebeat
version: 8.1.3
elasticsearchRef:
name: logs
config:
@VerosK
VerosK / pod.yml
Created April 12, 2022 14:36
Kubernetes busybox pod
apiVersion: apps/v1
kind: Deployment
metadata:
name: busybox
labels:
app.kubernetes.io/name: busybox
spec:
selector:
matchLabels:
app.kubernetes.io/name: busybox