dev-lxc 2.0.2 → 2.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +4 -0
- data/README.md +37 -17
- data/lib/dev-lxc/cli.rb +0 -3
- data/lib/dev-lxc/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9445997dd15900e39c2372dc9d46370d906e57f5
|
4
|
+
data.tar.gz: 3af389ac1571416880aa9ab7cd51ad2f439c6994
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e2ed45bb8d8f8155a777faa8dd0c9917b1d23f9fba63191e87dee072c80ad904ca0c1f306b75b9d5e4971a1b054c4d43b50537577029c05cd69874936de5d171
|
7
|
+
data.tar.gz: 849a4e93378f5ea2e78d78906f6badb06ca661f5ec1bfe50e7db7cb96d7cc32c1db105e741f4b76edf67f8ea09b122711731a58d9364d8d0499277d58938cda1
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -1,4 +1,15 @@
|
|
1
|
-
# dev-lxc
|
1
|
+
# dev-lxc 2.0 is Available
|
2
|
+
|
3
|
+
Here are some of the new features which provide a significantly simplified and streamlined usage.
|
4
|
+
|
5
|
+
* mixlib-install library is used to automatically manage a cache of product packages
|
6
|
+
* Genuine container snapshot management (make as many snapshots as you want)
|
7
|
+
* New "nodes" server type which auto configures nodes for a Chef Server in the same cluster
|
8
|
+
* Removed all xc-... bash functions because the new "nodes" server type replaces this functionality
|
9
|
+
* Able to build Chef Server HA 2.0 cluster using chef-backend
|
10
|
+
* Updated and simplified READMEs
|
11
|
+
|
12
|
+
# dev-lxc Description
|
2
13
|
|
3
14
|
A tool for building Chef Server clusters and Chef Analytics clusters using LXC containers.
|
4
15
|
|
@@ -23,6 +34,7 @@ for demo purposes, as well as general experimentation and exploration of Chef pr
|
|
23
34
|
7. Build process closely follows online installation documentation
|
24
35
|
8. Snapshots - Snapshots are created during the cluster's build process which makes rebuilding
|
25
36
|
a cluster very fast.
|
37
|
+
9. mixlib-install library is used to automatically manage a cache of product packages
|
26
38
|
|
27
39
|
Its containers, standard init, networking and build process are designed to be similar
|
28
40
|
to what you would build if you follow the online installation documentation so the end
|
@@ -189,6 +201,9 @@ nodes:
|
|
189
201
|
chef:
|
190
202
|
```
|
191
203
|
|
204
|
+
The dev-lxc.yml config file is very customizable. You can add or remove mounts, products or servers,
|
205
|
+
change ip addresses, server names, the base_container and more.
|
206
|
+
|
192
207
|
As you can see there are four server types represented by five servers.
|
193
208
|
|
194
209
|
1. chef-server - chef.lxc
|
@@ -196,6 +211,8 @@ As you can see there are four server types represented by five servers.
|
|
196
211
|
3. supermarket - supermarket.lxc
|
197
212
|
4. nodes - node-1.lxc
|
198
213
|
|
214
|
+
#### Global Settings
|
215
|
+
|
199
216
|
The global settings used by each of the server types are the `base_container`, a list of `mounts` and
|
200
217
|
a list of `ssh-keys`. These settings are described in the config comments.
|
201
218
|
|
@@ -204,6 +221,8 @@ This container will be cloned to create each container in the cluster.
|
|
204
221
|
If you don't already have a container to use as a `base_container` then you can follow the instructions in the
|
205
222
|
[Create a dev-lxc Base Container section](https://github.com/jeremiahsnapp/dev-lxc#create-a-dev-lxc-base-container) to create one.
|
206
223
|
|
224
|
+
#### Server Specific Settings
|
225
|
+
|
207
226
|
It is possible to define different values for `base_container`, `mounts` or `ssh-keys` for a particular server type as
|
208
227
|
you can see in the following snippet.
|
209
228
|
|
@@ -217,6 +236,8 @@ nodes:
|
|
217
236
|
IP addresses from the range 10.0.3.150 - 254 can be assigned to the servers. If an IP address
|
218
237
|
is not specified then a dynamic IP address is assigned when the server starts.
|
219
238
|
|
239
|
+
#### mixlib-install Library Automatically Manages a Cache of Product Packages
|
240
|
+
|
220
241
|
dev-lxc uses the [mixlib-install](https://github.com/chef/mixlib-install) library to download Chef products
|
221
242
|
to a cache in `/var/dev-lxc` in the host VM. This cache is automatically mounted into each server when it starts.
|
222
243
|
|
@@ -251,6 +272,8 @@ nodes:
|
|
251
272
|
package_source: /root/chefdk_0.16.1-1_amd64.deb
|
252
273
|
```
|
253
274
|
|
275
|
+
#### Automatic Integration Between Servers
|
276
|
+
|
254
277
|
dev-lxc knows how to automatically configure Chef Server standalone, Chef Server tier topology,
|
255
278
|
Chef Server HA 2.0 as well as Chef Client, Analytics, Compliance and Supermarket.
|
256
279
|
|
@@ -274,10 +297,7 @@ nodes:
|
|
274
297
|
chef:
|
275
298
|
```
|
276
299
|
|
277
|
-
|
278
|
-
change ip addresses, server names, the base_container and more.
|
279
|
-
|
280
|
-
#### Cluster status
|
300
|
+
### Cluster status
|
281
301
|
|
282
302
|
Run the following command to see the status of the cluster.
|
283
303
|
|
@@ -297,7 +317,7 @@ supermarket.lxc NOT_CREATED
|
|
297
317
|
node-1.lxc NOT_CREATED
|
298
318
|
```
|
299
319
|
|
300
|
-
|
320
|
+
### cluster-view, tks, tls commands
|
301
321
|
|
302
322
|
The dev-lxc-platform comes with some commands that create and manage helpful
|
303
323
|
tmux/byobu sessions to more easily see the state of a cluster.
|
@@ -331,7 +351,7 @@ I recommend switching to a different running tmux/byobu session before killing t
|
|
331
351
|
tmux/byobu session. Otherwise you will need to reattach to the remaining tmux/byobu session.
|
332
352
|
Use the keyboard shortcuts Alt-Up/Down to easily switch between tmux/byobu sessions.
|
333
353
|
|
334
|
-
|
354
|
+
### Start cluster
|
335
355
|
|
336
356
|
Starting the cluster the first time takes awhile since it has a lot to download and build.
|
337
357
|
|
@@ -346,7 +366,7 @@ The `knife-opc` plugin is installed in the embedded ruby environment of the
|
|
346
366
|
Private Chef and Enterprise Chef server to facilitate the creation of the test
|
347
367
|
org and user.
|
348
368
|
|
349
|
-
|
369
|
+
### Create chef-repo
|
350
370
|
|
351
371
|
Create a local chef-repo with appropriate knife.rb and pem files.
|
352
372
|
|
@@ -365,20 +385,20 @@ cd chef-repo
|
|
365
385
|
knife client list
|
366
386
|
```
|
367
387
|
|
368
|
-
|
388
|
+
### Stop and start the cluster
|
369
389
|
|
370
390
|
```
|
371
391
|
dev-lxc halt
|
372
392
|
dev-lxc up
|
373
393
|
```
|
374
394
|
|
375
|
-
|
395
|
+
### Run arbitrary commands in each server
|
376
396
|
|
377
397
|
```
|
378
398
|
dev-lxc run-command chef 'uptime'
|
379
399
|
```
|
380
400
|
|
381
|
-
|
401
|
+
### Attach the terminal to a server
|
382
402
|
|
383
403
|
Attach the terminal to a server in the cluster that matches the REGEX pattern given.
|
384
404
|
|
@@ -386,7 +406,7 @@ Attach the terminal to a server in the cluster that matches the REGEX pattern gi
|
|
386
406
|
dev-lxc attach chef
|
387
407
|
```
|
388
408
|
|
389
|
-
|
409
|
+
### Create a snapshot of the servers
|
390
410
|
|
391
411
|
Save the changes in the servers to snapshots with a comment.
|
392
412
|
|
@@ -395,13 +415,13 @@ dev-lxc halt
|
|
395
415
|
dev-lxc snapshot -c 'this is a snapshot comment'
|
396
416
|
```
|
397
417
|
|
398
|
-
|
418
|
+
### List snapshots
|
399
419
|
|
400
420
|
```
|
401
421
|
dev-lxc snapshot -l
|
402
422
|
```
|
403
423
|
|
404
|
-
|
424
|
+
### Restore snapshots
|
405
425
|
|
406
426
|
Restore snapshots by name.
|
407
427
|
|
@@ -412,7 +432,7 @@ dev-lxc snapshot -r
|
|
412
432
|
dev-lxc up
|
413
433
|
```
|
414
434
|
|
415
|
-
|
435
|
+
### Destroy snapshots
|
416
436
|
|
417
437
|
Destroy snapshots by name or destroy all snapshots by specifying `ALL`.
|
418
438
|
|
@@ -422,7 +442,7 @@ Leave out the snapshot name or specify `LAST` to destroy the most recent snapsho
|
|
422
442
|
dev-lxc snapshot -d
|
423
443
|
```
|
424
444
|
|
425
|
-
|
445
|
+
### Destroy cluster
|
426
446
|
|
427
447
|
Use the following command to destroy the cluster's servers.
|
428
448
|
|
@@ -430,7 +450,7 @@ Use the following command to destroy the cluster's servers.
|
|
430
450
|
dev-lxc destroy
|
431
451
|
```
|
432
452
|
|
433
|
-
|
453
|
+
### Use commands against specific servers
|
434
454
|
You can also run most of these commands against a set of servers by specifying a regular expression
|
435
455
|
that matches a set of server names.
|
436
456
|
|
data/lib/dev-lxc/cli.rb
CHANGED
@@ -136,19 +136,16 @@ chef-backend:
|
|
136
136
|
leader: true
|
137
137
|
products:
|
138
138
|
chef-backend:
|
139
|
-
channel: current
|
140
139
|
chef-backend2.lxc:
|
141
140
|
ipaddress: 10.0.3.209
|
142
141
|
role: backend
|
143
142
|
products:
|
144
143
|
chef-backend:
|
145
|
-
channel: current
|
146
144
|
chef-backend3.lxc:
|
147
145
|
ipaddress: 10.0.3.210
|
148
146
|
role: backend
|
149
147
|
products:
|
150
148
|
chef-backend:
|
151
|
-
channel: current
|
152
149
|
chef-frontend1.lxc:
|
153
150
|
ipaddress: 10.0.3.211
|
154
151
|
role: frontend
|
data/lib/dev-lxc/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dev-lxc
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jeremiah Snapp
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-06-
|
11
|
+
date: 2016-06-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|