AnsibleShipyard.mesos

ansible-mesos - MesosのためのAnsible Playbook

ビルドステータス

ansible-mesosロールは、メソスクラスタのインストールと設定をサポートしています。マスター、スレーブ、またはマスター-スレーブセットアップのオプションがあります。UbuntuとRedHat/Centosに対応しています。

特定のスレーブエグゼキュータを設定することができ、ネイティブのDockerサポートで実行できます。

インストール

ansible-galaxy install JasonGiedymin.mesos

依存関係

JavaとZookeeper

要件

Ansibleのバージョンは1.7以上

ロール変数

---
mesos_install_mode: "master" # {master|slave|master-slave}
mesos_version: "1.0.1"

# Debian
mesos_package_version: "2.0.93"
mesos_os_distribution: "{{ ansible_distribution | lower }}"
mesos_os_version: "{{ ansible_distribution_version.split('.') | join('') }}"
mesos_apt_url: "http://{{ mesos_repo_host }}/{{ ansible_distribution | lower }}"
mesos_package_full_version: "{{ mesos_version }}-{{ mesos_package_version }}.{{ mesos_os_distribution }}{{ mesos_os_version }}"
mesos_apt_package: "mesos={{ mesos_package_full_version }}"

# RedHat: EPELとMesosphereのyumリポジトリURL
epel_repo: "https://dl.fedoraproject.org/pub/epel/{{ os_version_major }}/{{ ansible_architecture }}/{{ epel_releases[os_version_major] }}"
mesosphere_yum_repo: "https://repos.mesosphere.com/el/{{ os_version_major }}/noarch/RPMS/{{ mesosphere_releases[os_version_major] }}"

# 設定ファイルの設定
mesos_cluster_name: "mesos_cluster"
mesos_ip: "{{ ansible_default_ipv4.address }}"
mesos_hostname: "{{ ansible_hostname }}"
mesos_master_port: "5050"
mesos_slave_port: "5051"
mesos_log_location: "/var/log/mesos"
mesos_ulimit: "-n 8192"
mesos_work_dir: "/var/mesos"
mesos_quorum: "1"
zookeeper_client_port: "2181"
zookeeper_hostnames: "{{ mesos_hostname }}:{{ zookeeper_client_port }}"
mesos_zookeeper_masters: "zk://{{ zookeeper_hostnames }}/mesos"
mesos_owner: root
mesos_group: root

# コンテナライザー
mesos_containerizers: "docker,mesos"
mesos_executor_timeout: "5mins"

# SSL
mesos_ssl_enabled: false
mesos_ssl_support_downgrade: false
mesos_ssl_key_file: # SSLが有効な場合、このファイルをSSLキーファイルにポイントする必要があります
mesos_ssl_cert_file: # SSLが有効な場合、このファイルをSSL証明書ファイルにポイントする必要があります

mesos_option_prefix: "MESOS_"

# 追加の設定
mesos_additional_configs: []
  # 例:
  # - name: FOO
  #   value: bar

# マスター用の追加設定
mesos_master_additional_configs: []
  # 例:
  # - name: FOO
  #   value: bar

# スレーブ用の追加設定
mesos_slave_additional_configs: []
  # 例:
  # - name: FOO
  #   value: bar

Playbookの例

- name: Java + Zookeeper + Mesos [master-slave]
  hosts: all
  sudo: yes
  roles:
    - role: geerlingguy.java

    - role: AnsibleShipyard.ansible-zookeeper

    - role: ansible-mesos
      mesos_install_mode: master-slave

Dockerはスレーブノードにのみ必要で、デフォルトではインストールされていません。 MesosでDockerを使用するには、スレーブノードにDockerがインストールされていることを確認してください。 その後、スレーブノードのために mesos_containerizers: "docker,mesos" を設定できます。

ライセンス

Apacheライセンス

AnsibleShipyard

関連するプレイブック

  1. ansible-marathon
  2. ansible-chronos
  3. ansible-zookeeper

著者情報

@AnsibleShipyard/developers など。

プロジェクトについて

Ansible NodeJS Playbook Role

インストール
ansible-galaxy install AnsibleShipyard.mesos
ライセンス
apache-2.0
ダウンロード
845
所有者
Ansible Roles with a touch of Docker