Skip to content

Instantly share code, notes, and snippets.

View kainam00's full-sized avatar

Dmitriy Martynov kainam00

View GitHub Profile
@kainam00
kainam00 / rvm-amazon-linux.bash
Created July 31, 2015 15:31
Install RVM on Amazon Linux
#!/bin/bash
# Install prerequisites
yum install -y gcc openssl-devel libyaml-devel libffi-devel readline-devel zlib-devel gdbm-devel ncurses-devel ruby-devel gcc-c++ jq git
# Import key
curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
# Install RVM
curl -sSL https://get.rvm.io | bash -s stable --ruby
@kainam00
kainam00 / slowserver.py
Created November 4, 2016 18:36
A simple HTTP server designed to be slow. Useful for testing LB timeouts and such.
#!/usr/bin/env python
# Includes
import getopt
import sys
import os.path
import subprocess
import BaseHTTPServer
import SocketServer
import time
@kainam00
kainam00 / check_mongo.py
Created May 6, 2022 18:25
Simple MongoDB Nagios plugin
#!/usr/bin/env python3
"""
check_mongod.py: Check master mongod instance
-h, --host Host to query
-p, --port Port
-d, --db Database and collection to use
-w, --warn Time to warn (seconds)
-c, --crit Time to crit (seconds)
-v, --verbose verbose
"""
@kainam00
kainam00 / asg-control.bash
Created August 13, 2015 17:44
Script to suspend and resume AWS autoscaling groups (ASG)
#!/bin/bash
TMPFILE="/tmp/asgs.temp"
function usage()
{
echo "Usage: $0 -a {suspend|resume} -f name-filter -p profile-name"
echo "Where: "
echo " -a - Action - suspend or resume autoscaling."
echo " -f - Name filter - filter for autoscaling groups. Allows you to select autoscaling groups matching a specific string."
@kainam00
kainam00 / jruby-amazon-linux.bash
Created July 31, 2015 15:35
Install jruby on Amazon Linux
#!/bin/bash
# Install prerequisites
yum install -y gcc openssl-devel libyaml-devel libffi-devel readline-devel zlib-devel gdbm-devel ncurses-devel ruby-devel gcc-c++ jq git
# Import key
curl -sSL https://rvm.io/mpapis.asc | gpg2 --import -
# Install RVM
curl -sSL https://get.rvm.io | bash -s stable --ruby
@kainam00
kainam00 / partx
Created June 10, 2016 18:14
Newer partx. Base64 encoded
IyEgL2Jpbi9zaAoKIyBwYXJ0eCAtIHRlbXBvcmFyeSB3cmFwcGVyIHNjcmlwdCBmb3IgLmxpYnMvcGFydHgKIyBHZW5lcmF0ZWQgYnkgbGlidG9vbCAoR05VIGxpYnRvb2wpIDIuNC4yCiMKIyBUaGUgcGFydHggcHJvZ3JhbSBjYW5ub3QgYmUgZGlyZWN0bHkgZXhlY3V0ZWQgdW50aWwgYWxsIHRoZSBsaWJ0b29sCiMgbGlicmFyaWVzIHRoYXQgaXQgZGVwZW5kcyBvbiBhcmUgaW5zdGFsbGVkLgojCiMgVGhpcyB3cmFwcGVyIHNjcmlwdCBzaG91bGQgbmV2ZXIgYmUgbW92ZWQgb3V0IG9mIHRoZSBidWlsZCBkaXJlY3RvcnkuCiMgSWYgaXQgaXMsIGl0IHdpbGwgbm90IG9wZXJhdGUgY29ycmVjdGx5LgoKIyBTZWQgc3Vic3RpdHV0aW9uIHRoYXQgaGVscHMgdXMgZG8gcm9idXN0IHF1b3RpbmcuICBJdCBiYWNrc2xhc2hpZmllcwojIG1ldGFjaGFyYWN0ZXJzIHRoYXQgYXJlIHN0aWxsIGFjdGl2ZSB3aXRoaW4gZG91YmxlLXF1b3RlZCBzdHJpbmdzLgpzZWRfcXVvdGVfc3Vic3Q9J3MvXChbYCIkXFxdXCkvXFxcMS9nJwoKIyBCZSBCb3VybmUgY29tcGF0aWJsZQppZiB0ZXN0IC1uICIke1pTSF9WRVJTSU9OK3NldH0iICYmIChlbXVsYXRlIHNoKSA+L2Rldi9udWxsIDI+JjE7IHRoZW4KICBlbXVsYXRlIHNoCiAgTlVMTENNRD06CiAgIyBac2ggMy54IGFuZCA0LnggcGVyZm9ybXMgd29yZCBzcGxpdHRpbmcgb24gJHsxKyIkQCJ9LCB3aGljaAogICMgaXMgY29udHJhcnkgdG8gb3VyIHVzYWdlLiAgRGlzYWJsZSB0aGlzIGZlYXR1cmUuCiAgYWxpYXMgLWcg
@kainam00
kainam00 / yazproxy
Created February 29, 2016 18:04
Yaz Proxy / yazproxy init script
#!/bin/bash
# Simple yazproxy init script
# chkconfig: 345 20 80
# description: yazproxy
# processname: yazproxy
# Variables
PORT=9001
LOGDEST=/var/log/yazproxy.log
@kainam00
kainam00 / prettygenerate.rb
Created September 17, 2015 20:08
ruby pretty JSON generate
require 'json'
JSON.pretty_generate(string)
@kainam00
kainam00 / aws-nfs-client.bash
Last active September 2, 2015 18:09
NFS client on Amazon (AWS) linux
#!/bin/bash -x
yum install nfs-utils rpcbind -y
service rpcbind start
service nfslock start
chkconfig rpcbind on
chkconfig nfslock on
@kainam00
kainam00 / bucket-policy.json
Created August 7, 2015 16:26
S3 bucket policy template
{
"Version": "2008-10-17",
"Id": "Policy1357935677554",
"Statement": [
{
"Sid": "Stmt1357935647218",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::123123123123:root"
},