GuillaumeSmaha.gluu-setup

Ansible Gluu: セットアップロール

gluu-setup は、Gluuサーバー、そのモジュール、および証明書を簡単にインストールするためのAnsibleロールです。

クラスターモードでは、ロールはクラスター管理者によるアクセスを許可するためにSSHキーをインストールし、すべてのサーバー間で公開証明書を配布し、LDAPサーバーを外部接続を受け入れるように更新し、すべてのLDAPサーバーを使用するように構成を更新します。

このロールのクラスターモードの機能を使用するには、すべてのGluuサーバーがグループ gluu-servers にあり、Gluuクラスター管理者がグループ gluu-cluster-manager にいる必要があります。

履歴

Gluuのオープンソース認証およびAPIアクセス管理サーバーは、組織にシングルサインオン、強力な認証、および集中管理を提供します。

要件

デプロイするには、以下が必要です:

  • デプロイヤーマシンにAnsible
  • 次のPython依存関係もインストールする必要があります:
    • dnspython
$ pip install -r requirements.txt

インストール

gluu-setup は、Ansible Galaxyを使用してグローバルに配布されるAnsibleロールです。gluu-setupロールをインストールするには、以下のコマンドを使用します。

$ ansible-galaxy install GuillaumeSmaha.gluu-setup

更新

ロールを更新したい場合は、インストール時に --force パラメーターを指定する必要があります。以下のコマンドを確認してください:

$ ansible-galaxy install --force GuillaumeSmaha.gluu-setup

ロール変数

vars:

  # ===================================
  # シングルノードでのGluu
  # ===================================

  # インストールするパッケージのカスタムバージョンを定義します。
  # 利用可能なパッケージバージョンのリストは次のURLを訪問してください: https://gluu.org/docs/ce/
  gluu_version: 3.1.7

  # Gluuで使用されるホスト名を定義します。
  gluu_hostname: '{{ ansible_ssh_host }}'

  # ホストのIPアドレス。
  gluu_ip: '{{ lookup("dig", "{{ gluu_internal_hostname }}.") | regex_replace("^NXDOMAIN$", "") | default(gluu_internal_hostname, true) }}'

  # インストールするモジュールのリスト
  gluu_modules:
  - oxauth
  - oxtrust
  - ldap
  - httpd

  # Gluu用の証明書の辞書。
  # 追加したいキーを加えることができます。
  # 各キーは `publicKey` を含み、オプションで証明書ファイルのパスを含む `privateKey` を持つ必要があります。
  gluu_certificates:

  # LDAPサーバーのタイプ
  gluu_ldap_server: openldap

  # LDAPサーバーとクライアント用のカスタム証明書
  gluu_ldap_certificate:
    cert_ca_file:
    cert_file:
    cert_key_file:

  # LDAPスキーマをカスタマイズするためのファイル
  gluu_ldap_custom_schema_file: custom_schema.json.default

  # LDAPパスワードを設定できます。
  gluu_ldap_password:

  # Gluuのベースインム
  gluu_inum_base:

  # 組織インム
  gluu_inum_org:

  # 機器インム
  gluu_inum_appliance:

  # 自己署名の証明書のプロパティ
  gluu_certificate_properties:
    org_name: Organization
    country_code: CA
    city: Montreal
    state: QC

  # ===================================
  # 複数ノードでのGluu(クラスター)
  # ===================================

  # サーバーがクラスターにあるかどうかを定義します。
  gluu_cluster: False

  # gluu_cluster = True の場合のみ。
  gluu_internal_hostname: '{{ gluu_hostname }}'

  # LDAPサーバーのレプリケーションに関する定義
  gluu_cluster_ldap_replication: False

  # LDAP構成がAnsibleまたはクラスター管理者のWeb GUIによって設定されるかどうかを定義します。
  gluu_cluster_ldap_replication_without_cluster_manager: False

  # デフォルト構成を別のホスト構成として設定できます。
  gluu_install_from: main

  # Gluuの外部LDAPサーバーのホスト名を設定できます。
  gluu_ldap_hostname:

デプロイ

デプロイするには、いくつかの手順を実行する必要があります:

  • 新しい hosts ファイルを作成します。必要に応じて、ansibleインベントリドキュメントをチェックしてください。
  • アプリをデプロイするための新しいプレイブックを作成します。例: deploy.yml
  • ロール変数を設定します(ロール変数を参照)。
  • プレイの一部として GuillaumeSmaha.gluu-setup ロールを含めます。
  • デプロイプレイブックを実行します。

ansible-playbook -i hosts deploy.yml

すべてが正しく設定されていれば、このコマンドはホストにGluuクラスター管理者をインストールします。

例のプレイブック

フォルダー内の例をチェックすると、どのようにデプロイするかの例プロジェクトを確認できます。

実行するには、Vagrantとロールがインストールされている必要があります。詳細はhttps://www.vagrantup.comを確認してください。

$ cd example
$ vagrant plugin install vagrant-lxc
$ vagrant plugin install vagrant-hostmanager
$ vagrant up --provider=lxc
$ ansible-galaxy install GuillaumeSmaha.gluu-setup
$ ansible-playbook -i env/ubuntu deploy.yml
$ ansible-playbook -i env/centos deploy.yml

Gluuにアクセスするには、以下のURLにアクセスします:

https://gluu-setup-ubuntu/

または

https://gluu-setup-centos/

サンプルプロジェクト

こちらでプレイブックの完全な例を見つけることができます:

https://github.com/GuillaumeSmaha/ansible-gluu-playbook

プロジェクトについて

Gluu Setup for RHEL/CentOS and Ubuntu

インストール
ansible-galaxy install GuillaumeSmaha.gluu-setup
ライセンス
gpl-3.0
ダウンロード
205
所有者