現在位置: ホーム / セキュリティ ブログ / Katello/Foremanによる運用管理 (Part1)

Katello/Foremanによる運用管理 (Part1)

今回から数回に分けて、パッチマネージメントと運用に用いることが出来る、OSSのライフサイクルソフトウェアであるKatello/Foremanのインストールと使い方を見ていきます。 CentOS 7を管理対象として実際に見ていきます。

こんにちは。SIOS OSS/セキュリティ エバンジェリストの面です。

今回から数回に分けて、パッチマネージメントと運用に用いることが出来る、OSSのライフサイクルソフトウェアであるKatello/Foremanのインストールと使い方を見ていきます。

CentOS 7を管理対象として実際に見ていきます。


Katelloとは

KatelloとはOS上のソフトウェアライフサイクルを管理する、OSSのシステム管理ツールになります。端的に言うと、Red Hat Satellite 6.0の元になっているOSSのツールです。

Red Hat Satellite 6.0との関係ですが、Red Hat Satellite 6.0は

  • Foreman: プロビジョニングと構成管理

  • Pulp: プロビジョニングと構成管理

  • Candlepin: プロビジョニングと構成管理

  • Katello: ソフトウェアライフサイクル管理

を組み合わせて構成されています。

KatelloとForemanの関係ですが、ここにも書かれている通り、Katelloは実際にはForemanを中核にしており(プラグインのような感じです)、KatelloではForemanの機能に加えてパッケージ管理が出来るようになっています。Katelloのインストール時には、Foremanインストールのコマンドを使用して、Foremanとその他の必要なものをインストールすることになります。また、既存のForemanにKatelloの機能を付け加えることも出来ます

(※)このKatelloでは、CentOS等のディストリビューションのパッケージ管理が出来る様になっています。Debianのパッケージ管理もサポートしていますが、実際には設定は中々難しいようです。

以下、Katelloの簡単な説明とインストールの方法を紹介しますが、KatelloはForemanを中核にしているため、Foremanの説明と被る箇所も有ります(リンク先も、Foremanの文書になっているケースが多々あります)。そのため、用語説明などの際にはKatello/Foremanと併記します。


Katello/ForemanとSmartProxy

Katello/Foremanの基本的なアーキテクチャは、ここにある通りです。

このリンク先のドキュメントにもある通り、Katello/Foremanでは「Smart Proxy」を用いて、様々な機能を提供するサブシステムと連結します。「Smart Proxy」は、Restfull APIを提供するもので、以下のようなサブシステム用のAPIが提供されています。

  • DHCP

  • DNS

  • TFTP

  • Puppet

  • Puppet CA

  • BMC

  • openSCAP


Katelloの必須HWスペック

Katelloサーバをインストールするための必須HW条件は以下になります。

  • CPU: 2CPU以上

  • Memory: 8GB以上

  • HDD: 大きければ大きいほど良いです。

    • /var/lib/pulp以下に管理するOSの更新パッケージが格納されます。一つのOSにつき、30GB以上が必要です。

    • /var/spool/squid以下がテンポラリディレクトリとして使用されます。/var/lib/pulp以下と同じサイズ(一つのOSにつき、30GB以上)を用意しておいたほうが良いです。

    • /var/lib/mongodbは4GB以上必要になります。目安として、/var/lib/pulpの40%程度が最小限になります。

    • /ファイルシステムは20GB以上が必要になります。

  • 許可する必要があるポートの一覧

    • 80/TCP - HTTPがプロビジョニングのために必要になります。

    • 443/TCP - HTTPSが、WebアクセスとAPI間通信のために必要になります。

    • 5647/TCP - qdrouterd がクライアントとcapsule実行のために必要になります。

    • 9090/TCP - HTTPSが、smart proxyの通信のために必要になります。


Katello環境の構築

それでは実際にKatelloをインストールしてみましょう。Katelloは2017年1月時点での最新バージョン(3.2)を使用します。インストールドキュメントがkatelloのサイト(現在はForemanのサイトに統合されています)に詳細含めて載っていますので、基本はこのインストールドキュメントに従って行っていきます。

0. 構成

基本構成は下図のようにします。今回は、VMWareのゲストとして環境を構築しています。

Katello_Foreman_Network_1

  • OS: CentOS 7 (最新バージョンにupdate)

  • ホスト名:katello.localdomain

  • IP: 172.16.148.120 (固定)

  • HW: CPU x2、Memory: 9GB

  • Katello: v3.2 (latest)

  • HDD: 多ければ多いほど(更新パッケージをダウンロードするため)

HWの所で気をつけなくてはいけないところとして、Katelloのインストーラ中で「CPUは2個以上、Memoryは8GB以上」でないとインストーラが終了してしまう所です。

また、今回は通常のKatelloによる各端末の情報取得に加えて、パッケージ更新情報の管理と、SCAPによるセキュリティ構成情報の取得を行うことにします。

1. OSのインストール

  1. CentOS7(latest)をインストールします。今回は、固定IPアドレスでホスト名は「katello.localdomain」としておきます。また、パッケージは「最小限」を選択しています。

  2. OSをインストール後に"yum -y update"で最新の状態にしておきます。

  3. /etc/hostsファイルを編集し

    [root@katello ~]# cat /etc/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    
    172.16.148.120  katello.localdomain     katello
    

    のように登録しておきます。


まとめ

今回はKatelloの簡単な説明と、インストール準備までの話を紹介しました。次回は、引き続きKatelloのインストールを行っていきます。


OSSに関するお困りごとは サイオス OSSよろず相談室まで

サイオスOSSよろず相談室 では、OSSを利用する中で発生する問題に対し、長年培ってきた技術力・サポート力をもって企業のOSS活用を強力に支援します。Red Hat Enterprise Linux のほか、CentOS をご利用されている環境でのサポートも提供いたします。

OSSよろず相談室

サイオスOSSよろず相談室(2)

問い合わせボタン

最新の記事
AppArmorの脆弱性( CVE-2017-6507 ) 2017年03月26日
linux kernelの脆弱性( CVE-2017-7261 ) 2017年03月25日
Sambaに共有以外のファイルにアクセスされる脆弱性(CVE-2017-2619) 2017年03月24日
Subscription-managerの脆弱性( CVE-2017-2663 ) 2017年03月22日
binutilsに複数の脆弱性( CVE-2017-6965, CVE-2017-6966, CVE-2017-6969, CVE-2017-7209 , CVE-2017-7210 , CVE-2017-7223, CVE-2017-7224, CVE-2017-7225, CVE-2017-7226, CVE-2017-7227 ) 2017年03月22日
linux kernelの脆弱性( CVE-2017-7187 ) 2017年03月21日
linux kernelの脆弱性( CVE-2017-6353 , CVE-2017-5986 ) 2017年03月21日
Ubuntu 16.10のkernelの脆弱性( CVE-2017-7184 ) 2017年03月20日
pcreの脆弱性( CVE-2017-7186 ) 2017年03月20日
binutilsの脆弱性( CVE-2017-6965 , CVE-2017-6966 , CVE-2017-6969 ) 2017年03月19日
MySQL(MariaDB) 5.5/5.6のmysql clientの脆弱性( Riddle : CVE-2017-3305 ) 2017年03月18日
linux kernelの脆弱性( CVE-2017-6951 ) 2017年03月17日
Apache Struts2の脆弱性 ( CVE-2017-5638 ) 2017年03月15日
linux kernelの脆弱性( CVE-2017-6874 ) 2017年03月15日
tomcatに情報漏えいの脆弱性( CVE-2016-8747 ) 2017年03月14日
QEMUの脆弱性( CVE-2016-9603 ) (Xen: XSA-211) 2017年03月14日
lxcの脆弱性(CVE-2017-5985) 2017年03月10日
wgetの脆弱性(CVE-2017-6508) 2017年03月08日
linux kernelに特権昇格の脆弱性( CVE-2017-2636 ) 2017年03月08日
( PoC ) linux kernel特権昇格脆弱性( CVE-2017-6074 ) の暫定回避策の確認 2017年03月06日
linux kernelの脆弱性( CVE-2016-9083 , CVE-2016-9084 ) 2017年03月03日
linux kernelに複数の脆弱性( CVE-2017-6345 , CVE-2017-6346 , CVE-2017-6347 , CVE-2017-6348 ) 2017年03月01日
Katello/Foremanによる運用管理 (Part4) 2017年02月28日
util-linux / coreutils の脆弱性(CVE-2017-2616) 2017年02月24日
linux kernelの脆弱性( CVE-2017-6214 ) 2017年02月24日
linux kernelに特権昇格の脆弱性( CVE-2017-6074 ) 2017年02月23日
curlの脆弱性 ( CVE-2017-2629 ) 2017年02月22日
QEMUの脆弱性( CVE-2017-2620 ) (Xen: XSA-209) 2017年02月22日
Tomcatの脆弱性 ( CVE-2017-6056 ) 2017年02月21日
Katello/Foremanによる運用管理 (Part3) 2017年02月21日
OpenSSLの脆弱性 ( CVE-2017-3733 ) 2017年02月16日
linux kernelの脆弱性( CVE-2017-6001 , (was CVE-2016-6786) ) 2017年02月16日
QEMUの脆弱性( CVE-2017-2630 ) 2017年02月15日
glibcの脆弱性(CVE-2015-8982, CVE-2015-8983, CVE-2015-8984) 2017年02月15日
vimの脆弱性 ( CVE-2017-5953 ) 2017年02月14日
Oracle Javaの脆弱性(Oracle Critical Patch Update Advisory - January 2017) 2017年02月14日
libxml2の脆弱性(CVE-2017-5969) 2017年02月13日
「linux kernel-4.9」でのLSMモジュールについて 2017年02月13日
linux kernelの脆弱性( CVE-2017-5970 ) 2017年02月13日
linux kernelの脆弱性( CVE-2016-8636 ) 2017年02月12日
bind 9 に設定依存の脆弱性 ( CVE-2017-3135 ) 2017年02月09日
bashの自動補完機能の脆弱性( CVE-2017-5932 ) 2017年02月08日
spiceの脆弱性( CVE-2016-9577 , CVE-2016-9578 ) 2017年02月08日
QEMUの脆弱性( CVE-2017-5898 ) 2017年02月08日
linux kernelの脆弱性( CVE-2017-5897 ) 2017年02月08日
linux kernelの脆弱性( CVE-2016-10208 ) 2017年02月06日
ntfs-3gの脆弱性(CVE-2017-0358) 2017年02月02日
QEMUの脆弱性( CVE-2017-2615 ) 2017年02月02日
tcpdumpに複数の脆弱性(CVE-2016-7922 等) 2017年01月30日
libgdに複数の脆弱性情報 (CVE-2016-9317, CVE-2016-6912, CVE-2016-10167, CVE-2016-10168, CVE-2016-10169) 2017年01月29日
OpenSSLに複数の脆弱性 ( CVE-2017-3730 , CVE-2017-3731 , CVE-2017-3732 ) 2017年01月27日
RunCに関しての脆弱性( CVE-2016-9962 )のPoCとSELinuxによるリスクの軽減 2017年01月26日
systemdの重要な脆弱性( CVE-2016-10156 ) 2017年01月25日
linux kernelの複数の脆弱性( CVE-2016-10153, CVE-2016-10154, CVE-2017-5547, CVE-2017-5548, CVE-2017-5549, CVE-2017-5550, CVE-2017-5551) 2017年01月25日
Katello/Foremanによる運用管理 (Part2) 2017年01月24日
linux kernel(KVMを有効にしている場合)で複数の脆弱性( CVE-2016-10150, CVE-2017-2583 ) 2017年01月21日
OpenSCAP 1.2.13のリリース情報 2017年01月16日
Oracle Javaの脆弱性(CVE-2016-5542, CVE-2016-5554, CVE-2016-5582, CVE-2016-5597, CVE-2016-5573) 2017年01月13日
bind に複数の脆弱性 ( CVE-2016-9131 , CVE-2016-9147 , CVE-2016-9444 , CVE-2016-9778 ) 2017年01月12日
Dockerに特権昇格の脆弱性 ( CVE-2016-9962 ) 2017年01月11日
最新の記事 - もっと...