Skip to content

Instantly share code, notes, and snippets.

View kelseyhightower's full-sized avatar

Kelsey Hightower kelseyhightower

View GitHub Profile
$ tar -xvf hello-0.0.1-linux-amd64.aci
x rootfs
x rootfs/bin
x rootfs/bin/hello
x manifest
hello $ cat manifest
{"acKind":"ImageManifest","acVersion":"0.1.1","name":"coreos.com/hello","labels":[{"name":"version","value":"0.0.1"},{"name":"arch","value":"amd64"},{"name":"os","value":"linux"}],"app":{"exec":["/bin/hello"],"user":"root","group":"root","ports":[{"name":"www","protocol":"tcp","port":5000,"socketActivated":false}]}}
$ sudo ./bin/rkt fetch example.com/hello:0.0.1
rkt: starting to discover app img example.com/hello:0.0.1
rkt: starting to fetch img from http://example.com/images/example.com/hello-0.0.1-linux-amd64.aci
Downloading aci: [ ] 1.45 KB/1.26 MB
keystore: checking signature openpgp: signature made by unknown entity
$ sudo mv ~/3028A353FEA3A704 /etc/rkt/trustedkeys/prefix.d/coreos.com/hello/3028A353FEA3A704
$ sudo ./bin/rkt fetch example.com/hello:0.0.1
rkt: starting to discover app img example.com/hello:0.0.1
rkt: starting to fetch img from http://example.com/images/example.com/hello-0.0.1-linux-amd64.aci
{
"name": "ipv4allocator",
"range": "10.10.0.1/24",
"command": {
"add": ["/usr/bin/ipv4allocator", "-c {conf}", "-n {net-name}", "-id {cont-id}", "-netns {netns}", "-i {if-name}", "add"]
}
}
Edit the dhcpd.conf
```
sudo vim /Library/Preferences/VMware\ Fusion/vmnet8/dhcpd.conf
```
Add `filename "http://192.168.12.1:4777?mac=${net0/mac}&serial=${serial}&asset=${asset}";`
```
Configuration file for ISC 2.0 vmnet-dhcpd operating on vmnet8.
#

Edit the dhcpd.conf

sudo vim /Library/Preferences/VMware\ Fusion/vmnet8/dhcpd.conf

Add filename "http://192.168.12.1:4777?mac=${net0/mac}&serial=${serial}&asset=${asset}";

 Configuration file for ISC 2.0 vmnet-dhcpd operating on vmnet8.
#
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2 (ACI gzip/tar)
Comment: GPGTools - https://gpgtools.org
iQEcBAABCgAGBQJUr9E9AAoJEE37Yb8m73oUEw8H/2NvM1cDui9WCxRqyQbPVz3v
6IyYl0OJ09Tt+n1fDBS8luiSeTTzwRoUm2kEI2ZsAHCtOwZ1hMjMQYozAXZVlj/7
Gw6ZUW6LOClO6cbxQlzKoD6Ssh02Dgrv5YYEcTzXD1us6NJ8gGxDQqzA1uNzDarV
5NSCCN3S8pQPMTabTBV5xbcgB/yHFRKT8rZyCgY3wytgcnatzUFrvpDTlREuado+
80ZgoMyVyGV4Bg/NPKKCL+OEbmOi30WNJ8ngKbp167dj2tCuHVRHwOo7nGwXfQr2
ZZfrvIC7xAV5yKHvZvrwg7hO+zYj45dr5003gXBgjdo7ahYJmqROvRsdYk9uuyI=

Key-Value API

Read consistency

Starting with etcd 2.0.0 read operations provide the following consistency guarantees:

The consistent read guarantees the sequential consistency within one client that talks to one etcd server. Read/Write from one client to one etcd member should be observed in order. If one client write a value to a etcd server successfully, it should be able to get the value out of the server immediately.

Each etcd member will proxy the request to leader and only return the result to user after the result is applied on the local member. Thus after the write succeed, the user is guaranteed to see the value on the member it sent the request to.

- name: etcd.service
command: start
content: |
[Unit]
Description=etcd
[Service]
User=etcd
PermissionsStartOnly=true
ExecStartPre=/usr/bin/wget -N -P /opt/bin http://192.168.0.1/etcd
demo $ ./bin/etcd-down
stopping core2...
stopping core1...
stopping core0...
demo $ ./bin/etcd-revert
reverting core5 to base snapshot
reverting core4 to base snapshot
reverting core3 to base snapshot
reverting core2 to base snapshot
reverting core1 to base snapshot
[Unit]
Description=etcd
[Service]
User=etcd
PermissionsStartOnly=true
ExecStartPre=/usr/bin/wget -N -P /opt/bin http://192.168.0.1/etcd
ExecStartPre=/usr/bin/wget -N -P /opt/bin http://192.168.0.1/etcdctl
ExecStartPre=/usr/bin/chmod +x /opt/bin/etcd
ExecStartPre=/usr/bin/chmod +x /opt/bin/etcdctl