INT 21h

Hi, I am Vladimir Smagin, SysAdmin and Kaptain. Telegram Email / GIT / Thingiverse / RSS / GPG

Warm Image operator for Kubernetes

№ 11010 В разделе "Sysadmin" от May 28th, 2020,
В подшивках: , , ,

For example, you have huge image with your software and running POD on node. When POD moving to another node your image downloads to new node minute or two. This operator forces nodes to download image before rescheduling, so POD starts faster.

It runs /bin/sh with infinite loop on specified image as DaemonSet with additional options like NodeSelector, Affinity or resource limits. You can specify custom command if your image not contains /bin/sh interpreter or you want to run own script.

Your first warmer:

apiVersion: blindage.org/v1alpha1
kind: WarmImage
metadata:
  name: mongo4
spec:
  image: mongo
  version: "4"
  nodeSelector:
    node-role.kubernetes.io/master: ""

Now you warmed mongo:4 on all master nodes.

Repository here https://git.blindage.org/21h/warm-image-operator

Нет комментариев »

CronJobs operator for Kubernetes

№ 10306 В разделах: Programming Sysadmin от September 17th, 2019,
В подшивках: , , ,

Helps to control multiple cronjobs with same image, but different commands.

Checkout code and documentation https://git.blindage.org/21h/cron-operator

Нет комментариев »

Redis operator for Kubernetes

№ 10254 В разделах: Programming Sysadmin от August 27th, 2019,
В подшивках: , , , ,

Redis operator runs Sentinel and Redis, makes Redis high available with HAProxy.

https://git.blindage.org/21h/redis-operator

Нет комментариев »

MQTT operator for Kubernetes

№ 10248 В разделах: Programming Sysadmin от August 23rd, 2019,
В подшивках: , , , ,

Run multiple MQTT instances in your Kubernetes cluster. Can store persistent database.

Documentation and download here https://git.blindage.org/21h/mqtt-operator

Нет комментариев »

Django operator for Kubernetes

№ 10240 В разделах: Programming Sysadmin от August 22nd, 2019,
В подшивках: , , , ,

You can run projects with collectstatic and migrations at init stage, provide ENVs, service and pods annotations.

https://git.blindage.org/21h/django-operator

Full Spec:

image specific settings

PullPolicy: imagePullPolicy, default IfNotPresent
Image: string, required, format “image:tag”
Replicas: integer, default 1

manage resources

Read more about resources limiting here https://kubernetes.io/docs/concepts/policy/resource-quotas/

PodRequests: default is empty
PodLimits: default is empty

Affinity and antiaffinity manual https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity

Affinity: default is empty

set annotations to service and pod

ServiceAnnotations: key: value dict, default is empty
PodAnnotations: key: value dict, default is empty

application specific configuration

AppPort: integer, internal application port, default 8000
AppEnv: EnvVar array, default is empty
AppStaticPath: string, path to static files, default /app/static
RunMigrate: bool, run migrations at init stage, default False
RunCollectStatic: bool, run collectstatic at init stage, default False

Нет комментариев »

Яндекс.Метрика

Fortune cookie: Today's spam: become a full-time mystery shopper