Packer
-
Packer is used to build image from a base image, perform provisions and store (commit) the final image.
-
We use provisioners and Packer templates to do the actual work to create the final image.
-
We use Ansible for provisioning.
global: | |
scrape_interval: 15s | |
scrape_timeout: 10s | |
evaluation_interval: 15s | |
external_labels: | |
monitor: codelab-monitor | |
scrape_configs: | |
- job_name: prometheus | |
scrape_interval: 15s | |
scrape_timeout: 10s |
Packer
Packer is used to build image from a base image, perform provisions and store (commit) the final image.
We use provisioners and Packer templates to do the actual work to create the final image.
We use Ansible for provisioning.
#!/bin/bash -xe | |
# requires jq and 3 brokers to start | |
which jq || echo 'no jq found, bye!' && exit 1 | |
ZK_HOST=zkhost1:2181/kafka | |
# record all topics | |
/usr/local/kafka/bin/kafka-topics.sh --zookeeper $ZK_HOST --list > all_topics | |
# generate json for listing which topics to reassign |
#!/bin/bash | |
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add - | |
cat <<EOF > /etc/apt/sources.list.d/kubernetes.list | |
deb http://apt.kubernetes.io/ kubernetes-xenial main | |
EOF | |
apt-get update | |
apt-get dist-upgrade -y | |
apt-get install -y docker.io | |
apt-get install -y kubelet kubeadm kubectl kubernetes-cni |
# Set variables in .bashrc file | |
# don't forget to change your path correctly! | |
export GOPATH=$HOME/golang | |
export GOROOT=/usr/local/opt/go/libexec | |
export PATH=$PATH:$GOPATH/bin | |
export PATH=$PATH:$GOROOT/bin |
This is a mix between two sources:
basically the first resource is great but didn't work for me: I had to remove the trailing "/*" in the resource string to make it work. I also noticed that setting the policy on the source bucket was sufficient. In the end these are the exact steps I followed to copy data between two buckets on two accounts
Basically the idea there is:
### https://hackernoon.com/golang-template-1-bcb690165663 | |
package main | |
import ( | |
"net/http" | |
"html/template" | |
) | |
func handler(w http.ResponseWriter, r *http.Request) { |
Put in (Preferences -> Key Bindings - User): | |
{ "keys": ["ctrl+tab"], "command": "next_view" }, | |
{ "keys": ["ctrl+shift+tab"], "command": "prev_view" } | |
so you would have |