3

YAML ドキュメントを渡すことで、Brooklyn REST API を使用して VM を起動できますか?

サンプル YAML:

name: simple-vm
location:
...
services:
- type: brooklyn.entity.basic.EmptySoftwareProcess
  name: VM
  provisioning.properties:
    user: b-user
    privateKeyFile: ~/.ssh/id_b-user
    osFamily: Ubuntu

privateKeyFile はどうなりますか? 引数として渡すことはできますか?

4

1 に答える 1

2

はい、YAML を に投稿することで、ブループリントをデプロイできます/v1/applications

ただし、privateKeyFileこれは Brooklyn マシンにアクセスできる URL である必要があります。これがリモートで実行されている場合、もちろんマシンの秘密鍵にアクセスすることはありません。秘密鍵を公にアクセス可能な URL に置きたくない場合:) 2 つのオプションがあります。

秘密鍵データ構成の追加

構成キーprivateKeyDataは切り札privateKeyFileであり、実際の秘密キー データを指定できます。例えば:

name: simple-vm
location: ...
services:
- type: brooklyn.entity.basic.EmptySoftwareProcess
  name: VM
  provisioning.properties:
    user: b-user
    privateKeyData: |
      -----BEGIN RSA PRIVATE KEY-----
      MIIEblahblahblahM1gknxGfMNxsIzi6bdrGPtCS4NKrTIIzi6bdrGPtCS4NKrTI
      Izi6bdrGPtCS4NKrTImGqeK0xUFa98WhVS0gHbdX8ebi+RxfOYM5w7NOLlzVzOrE
      ...
      -----END RSA PRIVATE KEY-----
    osFamily: Ubuntu

以降 のバージョンの Brooklyn0.7.0-M2-incubatingは、公開鍵データを推測しようとしますが、使用している場合、0.7.0-M2または推測が機能しない場合は、publicKeyData.

追加の公開鍵 URL を追加する

秘密鍵を Brooklyn サーバーと共有する必要がないようにするためのより良いメカニズムは、マシンに接続するための独自の資格情報を Brooklyn に生成させるauthorized_keysことですが、追加として公開鍵をインストールするように指示することです。設定キーextraSshPublicKeyUrlsは URL の文字列のリストを取得するので、公開鍵をオンラインにするだけで済みます (これは、秘密鍵をオンラインにするよりも安全です!)。

name: simple-vm
location: ...
services:
- type: brooklyn.entity.basic.EmptySoftwareProcess
  name: VM
  provisioning.properties:
    user: b-user
    extraSshPublicKeyUrls:
    - http://me.com/my/public/key.pub
    osFamily: Ubuntu

これも後に導入されたため、この機能を使用するには 最近のスナップショット ビルド0.7.0-M2-incubatingを取得する必要があります。

于 2015-03-27T16:54:24.620 に答える