style95 commented on a change in pull request #5194:
URL: https://github.com/apache/openwhisk/pull/5194#discussion_r790245970
##########
File path: ansible/roles/schedulers/tasks/deploy.yml
##########
@@ -0,0 +1,362 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
contributor
+# license agreements; and to You under the Apache License, Version 2.0.
+---
+# This role will install Scheduler in group 'schedulers' in the environment
+# inventory
+
+- import_tasks: docker_login.yml
+
+- name: get scheduler name and index
+ set_fact:
+ scheduler_name: "{{ name_prefix ~ host_group.index(inventory_hostname) }}"
+ scheduler_index:
+ "{{ (scheduler_index_base|int) + host_group.index(inventory_hostname) }}"
+
+- name: "pull the {{ docker.image.tag }} image of scheduler"
+ shell: "docker pull {{docker_registry}}{{ docker.image.prefix
}}/scheduler:{{docker.image.tag}}"
+ when: docker_registry != ""
+ register: result
+ until: (result.rc == 0)
+ retries: "{{ docker.pull.retries }}"
+ delay: "{{ docker.pull.delay }}"
+
+- name: ensure scheduler log directory is created with permissions
+ file:
+ path: "{{ whisk_logs_dir }}/{{ scheduler_name }}"
+ state: directory
+ mode: 0777
+ become: "{{ logs.dir.become }}"
+
+# We need to create the file with proper permissions because the dir creation
above
+# does not result in a dir with full permissions in docker machine especially
with macos mounts
+- name: ensure scheduler log file is created with permissions
+ file:
+ path: "{{ whisk_logs_dir }}/{{ scheduler_name }}/{{ scheduler_name
}}_logs.log"
+ state: touch
+ mode: 0777
+ when: environment_type is defined and environment_type == "docker-machine"
+
+- name: ensure scheduler config directory is created with permissions
+ file:
+ path: "{{ scheduler.confdir }}/{{ scheduler_name }}"
+ state: directory
+ mode: 0777
+ become: "{{ scheduler.dir.become }}"
+
+- name: check, that required databases exist
+ include_tasks: "{{ openwhisk_home }}/ansible/tasks/db/checkDb.yml"
+ vars:
+ dbName: "{{ item }}"
+ dbUser: "{{ db.credentials.scheduler.user }}"
+ dbPass: "{{ db.credentials.scheduler.pass }}"
+ with_items:
+ - "{{ db.whisk.auth }}"
+
+- name: copy jmxremote password file
+ when: jmx.enabled
+ template:
+ src: "jmxremote.password.j2"
+ dest: "{{ scheduler.confdir }}/{{ scheduler_name }}/jmxremote.password"
+ mode: 0777
+
+- name: copy jmxremote access file
+ when: jmx.enabled
+ template:
+ src: "jmxremote.access.j2"
+ dest: "{{ scheduler.confdir }}/{{ scheduler_name }}/jmxremote.access"
+ mode: 0777
+
+- name: prepare scheduler port
+ set_fact:
+ scheduler_port: "{{ scheduler.basePort + (scheduler_index | int) }}"
+ ports_to_expose:
+ - "{{ scheduler.grpc.basePort + (scheduler_index | int) }}:{{
scheduler.grpc.basePort + (scheduler_index | int) }}"
+ - "{{ scheduler.basePort + (scheduler_index | int) }}:8080"
+
+- name: expose additional ports if jmxremote is enabled
+ when: jmx.enabled
+ vars:
+ jmx_remote_port: "{{ jmx.basePortScheduler + (scheduler_index|int) }}"
+ jmx_remote_rmi_port:
+ "{{ jmx.rmiBasePortScheduler + (scheduler_index|int) }}"
+ set_fact:
+ ports_to_expose: >-
+ {{ ports_to_expose }} +
+ [ '{{ jmx_remote_port }}:{{ jmx_remote_port }}' ] +
+ [ '{{ jmx_remote_rmi_port }}:{{ jmx_remote_rmi_port }}' ]
+ scheduler_args: >-
+ {{ scheduler.arguments }}
+ {{ jmx.jvmCommonArgs }}
+ -Djava.rmi.server.hostname={{ ansible_host }}
+ -Dcom.sun.management.jmxremote.rmi.port={{ jmx_remote_rmi_port }}
+ -Dcom.sun.management.jmxremote.port={{ jmx_remote_port }}
+
+- name: populate environment variables for scheduler
+ set_fact:
+ env:
Review comment:
I would review all configurations again.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]