Skip to content

Instantly share code, notes, and snippets.

View eherot's full-sized avatar

Eric Herot eherot

View GitHub Profile
@eherot
eherot / Basic VPC Setup.md
Created November 6, 2019 16:07
How to set up a basic VPC with a VPN

Required things

  1. The VPN
  2. An Internet gateway
  3. A route table (meaining the route to 0.0.0.0/0 should go through the above internet gateway)
  4. A public subnet (meaning it should be "associated" with the above route table)
  5. An elastic IP address
  6. An EC2 instance (your VPN server) running in the above subnet and associated with the above elastic IP

Optional things (but that you'll almost certainly want)

@eherot
eherot / kops-cluster.staging.k8s.yaml
Created April 1, 2019 18:24
Staging cluster kubernetes manifest
apiVersion: kops/v1alpha2
kind: Cluster
metadata:
creationTimestamp: null
name: kops-cluster.staging.k8s
spec:
additionalPolicies:
node: |
[
{
### Keybase proof
I hereby claim:
* I am eherot on github.
* I am eherot (https://keybase.io/eherot) on keybase.
* I have a public key ASC8_wB_v4c1fYS6oGOazDmXd7hV-6LbE4EgCFcg12FcpAo
To claim this, I am signing this object:
@eherot
eherot / stale-cookbooks.rb
Created June 6, 2016 20:29
Check which cookbooks haven't been promoted to prod
require 'chef'
require 'chef/knife'
Chef::Knife.new.configure_chef
rest = Chef::ServerAPI.new Chef::Config[:chef_server_url]
cookbooks = rest.get_rest 'cookbooks'
rest.get_rest('environments/prod')['cookbook_versions'].reject do |cb,v|
Gem::Dependency.new('', v).match?('', cookbooks[cb]['versions'].sort_by{|k|k['version']}.first['version'])
end
Installing git (4.3.5)
Using mock-ec2 (1.0.1) from source at test/cookbooks/mock-ec2
Using python (1.4.6)
Using shinken (1.6.1) from source at .
Using test-data (1.0.1) from source at test/cookbooks/test-data
Using test-tools (1.0.1) from source at test/cookbooks/test-tools
Using windows (1.38.4)
Using yum (3.8.2)
Using yum-epel (0.6.5)
E, [2015-12-18T17:08:06.174880 #43182] ERROR -- : Couldn't cleanly terminate all actors in 10 seconds!
@eherot
eherot / singularity_request.json
Created August 31, 2015 15:42
singularity request
{
"deploy": {
"requestId": "stage-ugc",
"id": "1441035535",
"customExecutorCmd": "/usr/local/singularity/bin/SingularityExecutor",
"resources": {
"cpus": 2,
"memoryMb": 1024,
"numPorts": 1
},
"s3Artifacts": [
{
"s3Bucket": "ops.evertrue.com",
"s3ObjectKey": "singularity/artifacts/ugc-1.0-SNAPSHOT.jar",
"filename": "ugc-1.0-SNAPSHOT.jar",
"name": "ugc-jar"
},
{
"s3Bucket": "ops.evertrue.com",
"s3ObjectKey": "singularity/artifacts/ugc.yml",
@eherot
eherot / STDOUT
Created April 17, 2014 18:56
Ohai AttributeNotFound
[2014-04-17T18:50:57+00:00] ERROR: Encountered error while running plugins: #<Ohai::Exceptions::AttributeNotFound: No such attribute: 'passwd'>
================================================================================
Error executing action `reload` on resource 'ohai[reload]'
================================================================================
Ohai::Exceptions::AttributeNotFound
-----------------------------------
No such attribute: 'passwd'
@eherot
eherot / haproxy-init snippet
Created March 31, 2014 21:27
Using socat as a listener for a socket file
socat_start() {
start-stop-daemon --quiet --start \
--pidfile "$SOCAT_PIDFILE" \
--background --make-pidfile \
--exec $SOCAT_DAEMON tcp-listen:$SOCAT_TCP_PORT,fork UNIX-CLIENT:$SOCAT_SOCK < /dev/null
}
@eherot
eherot / chef-zero ruby sigsegv
Created January 24, 2014 00:29
chef-zero ruby sigsegv
$ env GEM_HOME=~/.vagrant.d/gems /Applications/Vagrant/embedded/bin/ruby /Users/eherot/.vagrant.d/gems/gems/chef-zero-1.7.3/bin/chef-zero --host 172.16.64.3 --port 4000
/Users/eherot/.vagrant.d/gems/gems/json-1.8.1/lib/json/common.rb:67: [BUG] Segmentation fault
ruby 2.0.0p353 (2013-11-22 revision 43784) [universal.x86_64-darwin12.5.0]
-- Crash Report log information --------------------------------------------
See Crash Report log file under the one of following:
* ~/Library/Logs/CrashReporter
* /Library/Logs/CrashReporter
* ~/Library/Logs/DiagnosticReports
* /Library/Logs/DiagnosticReports