Puppetのインストール–4つの簡単なステップでPuppetをインストールします



このブログは、PuppetMasterとPuppetAgentのインストール方法に関するガイドです。また、PuppetTomcatモジュールを使用してApacheTomcatをデプロイする例も含まれています。

Puppetをインストールする

このブログは、CentOSマシンにPuppetMasterとPuppetAgent(Slave)をインストールする方法に関するガイドです。また、Puppetを使用してApacheTomcatをデプロイするPuppetの例も見ていきます。 2つのCentOS仮想イメージを使用しています。1つはPuppetMaster用で、もう1つはPuppetAgent用です。

Puppetをインストールする手順は次のとおりです。-





  1. PuppetMasterとPuppetAgentをインストールします
  2. PuppetマスターとエージェントでホストとPuppet構成ファイルを編集します
  3. PuppetMasterとPuppetAgent間の安全な接続を確立する
  4. Puppetを使用してApacheTomcatをデプロイする

Puppetをインストールする前に、いくつかの前提条件を見てみましょう。

前提条件

私は2つの仮想イメージを使用しているので、そのうちの1つをPuppet Masterとして選択し、もう1つをPuppetAgentと呼ぶことができます。



まず、PuppetMasterとPuppetAgentからすべてのファイアウォールルールを削除する必要があります。 Iptablesは、ほとんどのLinuxディストリビューションでデフォルトで使用できるデフォルトのファイアウォールです。

人工知能論争の賛否両論

これを実行します:

iptables -F

次に、これらの構成を保存する必要があります。



これを実行します:

service iptables save

PuppetMasterとPuppetAgentの両方で公式のPuppetLabsコレクションリポジトリを有効にする必要があります。このリポジトリを取得するには、リンクにアクセスしてください yum.puppetlabs.com

Puppetリポジトリ-Puppetのインストール-Edurekaここで、使用しているCentOSのバージョンに応じてリポジトリのリンクの場所をコピーします。 CentOS6を使用しています。

このリポジトリを取得するには、両方の仮想イメージで次のコマンドを実行します。

これを実行します:

rpm -ivh http://yum.puppetlabs.com/puppetlabs-release-el-6.noarch.rpm

前提条件はこれで完了です。Puppetのインストールに移行する前に、このPuppetのインストールビデオを確認してください。

Puppetインストールチュートリアル| Puppetのインストール–Tomcatのデプロイ| DevOpsツール|エドゥレカ

1. PuppetMasterとPuppetAgentをインストールします

1.1。 PuppetMasterをインストールします

Puppet Masterをインストールするには、以下のコマンドを実行します。

これを(マスターで)実行します:

yum install puppet-server

1.2。 PuppetAgentをインストールします

Puppet Agentをインストールするには、以下のコマンドを実行します。

これを(エージェントで)実行します。

yum install puppet

2.PuppetマスターとエージェントでホストとPuppet構成ファイルを編集します

2.1。 PuppetMasterでホストとPuppet構成ファイルを編集します

まず、Puppet Master仮想イメージで、viエディターを使用してhostsファイルを編集します。 vim、geditなどの他のエディターも使用できます。

これを(マスターで)実行します:

vi / etc / hosts

マシンのIPアドレスを入力し、ドメイン名を指定するだけです。上のスクリーンショットでは、192.168.1.182が私のマシンのIPアドレスであり、ドメイン名を割り当てていることがわかります。 puppet puppet.edureka.co

マシンのIPアドレスを知るには、次のコマンドを使用します。

これを(マスターで)実行します:

ifconfig

次に、Puppet構成ファイルを編集します。viエディターを使用します。

これを(マスターで)実行します:

vi /etc/puppet/puppet.conf

ここのマスターセクションで、サーバーが応答するDNS名を指定します(Puppetマスターに指定したドメイン名を入力します)。 DNSは、ノードがIPアドレスではなくフレンドリ名を使用して通信できるようにするための重要な要素です。

dns_alt_names = puppet、puppet.edureka.co

証明書名も指定する必要があります

certname = puppet

2.2。 PuppetでホストとPuppet構成ファイルを編集します エージェント

ここのPuppetAgent仮想イメージのPuppetMasterと同様に、最初にviエディターを使用してhostsファイルを編集します。

これを(エージェントで)実行します。

vi / etc / hosts

次に、Puppet AgentのIPアドレスを入力し、それにドメイン名を付けます。 puppetagent ’。また、PuppetMasterのIPアドレスとそれに接続されているドメイン名を指定する必要があります。

192.168.1.119 puppetagent
192.168.1.182 puppet puppet.edureka.co

Puppet構成ファイルを編集してみましょう。

これを(エージェントで)実行します。

vi /etc/puppet/puppet.conf

次に、エージェントセクションでサーバー名を割り当てます。
PuppetMasterのドメイン名を入力します。ドメイン名を指定すると、hostsファイルに移動し、そのドメイン名に添付されているIPアドレスを確認するため、これは非常に重要な手順です。正しいドメイン名を入力したことを確認してください。

サーバー= puppet.edureka.co

3. PuppetMasterとPuppetAgentの間に安全な接続を確立します

PuppetAgentはPuppetMasterに証明書を要求します。 Puppet Masterが証明書を送信すると、PuppetAgentは独自の証明書を生成します。次に、PuppetMasterにこの証明書に署名するように要求します。マスターがこの証明書に署名すると、PuppetMasterとPuppetAgentの間に安全な接続が確立されます。

3.1。 Puppetマスター証明書を生成する

Puppet Master仮想イメージで、PuppetMasterマシンでCA証明書とPuppetMaster証明書を生成するには、次のコマンドを実行します。

これを(マスターで)実行します:

sudo -u puppet puppet master --no-daemonize --verbose

このコマンドは、適切なDNS名が含まれているCA証明書とPuppetマスター証明書を作成します。を使用してPuppetのバージョンが表示されたら停止します ctrl + c 今は操り人形マスターを始めることができないからです。

今、私は操り人形マスターを始めます。

これを(マスターで)実行します:

puppetリソースサービスpuppetmasterensure = running

3.2。 PuppetAgentからPuppetMasterに証明書署名要求を送信します

ここPuppetAgent仮想イメージでは、証明書署名要求をPuppetMasterに送信する必要があります。

javascriptとjqueryの違いは何ですか

これを(エージェントで)実行します。

人形エージェント-t

3.3。 PuppetMasterでPuppetエージェント証明書に署名する

Puppet Master仮想イメージでは、PuppetAgentによって要求された証明書に署名する必要があります。証明書のリストを取得するには、次のコマンドを実行します。

これを(マスターで)実行します:

人形証明書リスト

ご覧のとおり、puppetagentという名前で保留中の証明書署名要求があります。その証明書に署名するには、次のコマンドを実行します。

これを(マスターで)実行します:

puppet cert sign puppetagent

ここでは、証明書署名要求がPuppet Agentによって送信されたため、その特定の証明書に署名しました。上のスクリーンショットを参照してください。

3.4。 Puppetエージェントを更新する

まず、PuppetAgentを起動する必要があります。

これを(エージェントで)実行します。

puppetリソースサービスpuppetensure = running

次に、PuppetMasterで行った変更でPuppetAgentを更新する必要があります。マスターは最近証明書に署名したので、それを更新します。

これを(エージェントで)実行します。

人形エージェント-t

スナップショットからec2インスタンスを作成する

おめでとう! これで、PuppetMasterとPuppetAgentの間に安全な接続が確立されました。ここで、Puppetを使用してApacheTomcatをデプロイするPuppetの例を見てみましょう。

4.Puppetを使用してApacheTomcatをデプロイします

4.1。 PuppetMasterで構成を定義する

Puppet Master仮想イメージでは、Tomcat9をインストールする前にJava8をインストールする必要があります。Tomcat9はJava8またはJava8以降にリリースされたJavaのバージョンとのみ互換性があるためです。

4.1.1。 JavaとTomcatモジュールをインストールする

JavaをインストールするにはJavaモジュールをインストールする必要があります。このモジュールはJavaJDKを自動的にインストールし、Puppetを使用してJavaのインストールを簡素化します。

これを(マスターで)実行します:

puppetモジュールinstallpuppetlabs-java

このコマンドは、互換性のある最新バージョンのJavaモジュールをインストールします。

次に、Tomcatモジュールをインストールします。 Puppetを使用してTomcatをインストールし、その構成ファイルを管理し、それにWebアプリをデプロイすることができます。

Tomcatモジュールの最新の互換性のあるバージョンをインストールするには:

これを(マスターで)実行します:

puppetモジュールはpuppetlabsをインストールします-tomcat

4.1.2。 Puppetマニフェストでsite.ppファイルを編集する

お気に入りのエディターを使用してPuppetマニフェストのsite.ppファイルを編集します。viエディターを使用して、マニフェストの詳細を確認します。 Puppetチュートリアル ブログ。

これを(マスターで)実行します:

vi /etc/puppet/manifests/site.pp

ここに以下が含まれます:

class {'java':package =&gt'java-1.8.0-openjdk-devel ':} tomcat :: install {' / opt / tomcat ':source_url =&gt'http://redrockdigimark.com/apachemirror/tomcat/ tomcat-9 / v9.0.0.M13 / bin / apache-tomcat-9.0.0.M13.tar.gz '、} tomcat :: instance {' default ':catalana_home =&gt' / opt / tomcat '、}

site.ppファイルは次のようになります。

ファイルを保存し、viエディターを終了します。

4.2。 Puppetエージェントを更新する

Puppet Agentは、定期的に(30分ごとに)マスターから構成をプルします。メインマニフェストを評価し、Tomcatセットアップを指定するモジュールを適用します。すぐに試してみたい場合は、すべてのエージェントノードで次のコマンドを実行する必要があります。

これを(エージェントで)実行します。

人形エージェント-t

ApacheTomcatがPuppetAgentで機能しているかどうかを見てみましょう。 Puppet Agent仮想イメージのブラウザーでlocalhost:8080を開くことを確認します(ポート8080はApache Tomcatのデフォルトポートです)。

Puppetを使用してApacheTomcatを正常にインストールしました。同様に、数百のエージェントを含む大規模なインフラストラクチャは、Puppetを使用して自動的に管理でき、DevOpsを実現する上で重要な役割を果たします。

Puppetインストールガイドに従うことができたと思います。これで、Puppetがマシン上で稼働している必要があります。 チェックアウト 25万人以上の満足した学習者のネットワークを持つ信頼できるオンライン学習会社であるEdurekaが世界中に広がっています。 Edureka DevOps認定トレーニングコースは、学習者がSDLCの複数のステップを自動化するためのPuppet、Jenkins、Nagios、GITなどのさまざまなDevOpsプロセスとツールに関する専門知識を習得するのに役立ちます。