Puppet Enterprise 2017.2

Puppet Enterpriseは、Arista EOSをプラットフォームとしてサポートしており、Puppet agentはArista EOSネットワークスイッチ上で動作します。 このガイドでは、Arista EOSネットワークスイッチ上にPuppet agentをインストールする方法について説明します。 この説明は、すでにPuppet Enterpriseをインストールしており、Aristaの文書に従ってEOSインスタンスをインストールしていることを想定したものです。

EOSインスタンス上でのPuppet agentのインストール

注意:FQDNとは、ノードまたはインスタンスの完全修飾ドメイン名を指します。

  1. Puppet masterで、netdev_stdlib_eosモジュールをインストールします。 puppet module install aristanetworks-netdev_stdlib_eosコマンドを実行します。 このモジュールには、ネットワークスイッチ上でPuppet agentを実行するのに必要なタイプとプロバイダが含まれています。

  2. EOSインスタンス上にPuppet agentをインストールします。

    a. 管理者ユーザ、またはPrivileged EXECモードにアクセスできるユーザとして、EOSインスタンスにアクセスします。

    b. enableコマンドを実行し、Privileged EXECモードを有効にします。

    c. EOSダウンロードページで、このagent向けの最新の.swixパッケージを見つけます。 例: puppet-agent-<VERSION NUMBER>.eos4.i386.swix

    d. copy http://downloads.puppetlabs.com/eos/4/PC1/i386/puppet-agent-<VERSION NUMBER>.eos4.i386.swix extension:コマンドを実行します。

    注意:EOSインスタンスから外部のインターネットにアクセスできない場合は、まずagentパッケージをダウンロードしてから、それをインスタンスに移動する必要があるかもしれません。

    e. extension puppet-agent-<VERSION NUMBER>-eos-4-i386.swixコマンドを実行します。 これでEOSインスタンス上にPuppet agentがインストールされます。

    f. 管理者ユーザとしてログアウトし、rootとしてEOSインスタンスに再度ログインします。

    g. rootユーザおよびグループとしてPuppetを実行するために、以下のコマンドを実行します。

    /opt/puppetlabs/bin/puppet config --confdir /persist/sys/etc/puppetlabs/puppet set user root
    /opt/puppetlabs/bin/puppet config --confdir /persist/sys/etc/puppetlabs/puppet set group root 
    

    h. puppet config set server <PUPPET MASTER FQDN>コマンドを実行します。 これでagentとPuppet masterの接続が設定されます。

    i. puppet agent --testコマンドを実行します。 これでagentがPuppet masterに接続し、Puppet masterの証明書オーソリティ(CA)で新規agentの証明書署名要求(CSR)が作成されます。

  3. Puppet master上で、EOSインスタンスの証明書に署名します。 puppet cert sign <EOS INSTANCE FQDN>コマンドを実行します。

  4. EOSインスタンス上でpuppet agent -tコマンドを実行します。

    Puppet agentがカタログを取得し、全面的に機能するようになります。 以下のようなメッセージが表示されます。

    Info: Retrieving pluginfacts
    Info: Retrieving plugin
    Info: Loading facts
    Info: Caching catalog for <EOS INSTANCE FQDN>
    Info: Applying configuration version '1424214157'
    Notice: Finished catalog run in 0.46 seconds
    

EOSインスタンスからのPuppet agentのアンインストール

テスト目的でPuppet agentをアンインストール/再インストールする場合は、再インストール時にSSLの衝突が起きないようにするために、以下の説明に従う必要があります。

  1. 管理者ユーザとしてEOSインスタンスにアクセスします。
  2. enableコマンドを実行し、Privileged EXECモードを有効にします。
  3. 以下のコマンドを実行します。

     no extension puppet-enterprise-<VERSION NUMBER>-eos-4-i386.swix
     delete extension:puppet-enterprise-<VERSION NUMBER>-eos-4-i386.swix
    
  4. EOSインスタンスからSSLキーを削除します。bash sudo rm -rf /persist/sys/etc/puppetlabs/コマンドを実行します。
  5. Puppet master上で、EOSインスタンスのPuppet agentの証明書を無効にします。 puppet cert clean <EOS INSTANCE FQDN>コマンドを実行します。

    これでagentの証明書が無効になり、Puppet master上の関連ファイルが削除されます。 以下のようなメッセージが表示されます。

    Notice: Revoked certificate with serial 10
    Notice: Removing file Puppet::SSL::Certificate <EOS INSTANCE FQDN> at '/etc/puppetlabs/puppet/ssl/ca/signed/<EOS INSTANCE FQDN>.pem'
    Notice: Removing file Puppet::SSL::Certificate <EOS INSTANCE FQDN> at '/etc/puppetlabs/puppet/ssl/certs/<EOS INSTANCE FQDN>.pem'
    
Back to top