You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
89 lines
3.8 KiB
89 lines
3.8 KiB
# Licensed to the Apache Software Foundation (ASF) under one |
|
# or more contributor license agreements. See the NOTICE file |
|
# distributed with this work for additional information |
|
# regarding copyright ownership. The ASF licenses this file |
|
# to you under the Apache License, Version 2.0 (the |
|
# "License"); you may not use this file except in compliance |
|
# with the License. You may obtain a copy of the License at |
|
# |
|
# http://www.apache.org/licenses/LICENSE-2.0 |
|
# |
|
# Unless required by applicable law or agreed to in writing, |
|
# software distributed under the License is distributed on an |
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
|
# KIND, either express or implied. See the License for the |
|
# specific language governing permissions and limitations |
|
# under the License. |
|
|
|
#cloud-config |
|
|
|
groups: |
|
- ds |
|
|
|
users: |
|
- name: ds |
|
shell: /bin/bash |
|
primary_group: ds |
|
sudo: ALL=(ALL) NOPASSWD:ALL |
|
ssh_authorized_keys: |
|
- ${ssh_public_key} |
|
- name: root |
|
ssh_authorized_keys: |
|
- ${ssh_public_key} |
|
|
|
write_files: |
|
- path: /etc/systemd/system/dolphinscheduler-schema.service |
|
content: | |
|
[Unit] |
|
Description=DolphinScheduler service to init database schema |
|
|
|
[Service] |
|
Type=oneshot |
|
RemainAfterExit=yes |
|
Environment="DATABASE=postgresql" |
|
Environment="SPRING_PROFILES_ACTIVE=postgresql" |
|
Environment="SPRING_DATASOURCE_URL=jdbc:postgresql://${database_address}:${database_port}/${database_name}" |
|
Environment="SPRING_DATASOURCE_USERNAME=${database_username}" |
|
Environment="SPRING_DATASOURCE_PASSWORD=${database_password}" |
|
User=ds |
|
WorkingDirectory=/opt/dolphinscheduler |
|
ExecStart=bash -l /opt/dolphinscheduler/tools/bin/upgrade-schema.sh |
|
|
|
[Install] |
|
WantedBy=multi-user.target |
|
- path: /etc/systemd/system/dolphinscheduler.service |
|
content: | |
|
[Unit] |
|
Description=DolphinScheduler Service ${dolphinscheduler_component} |
|
Requires=dolphinscheduler-schema.service |
|
|
|
[Service] |
|
Environment="DATABASE=postgresql" |
|
Environment="SPRING_PROFILES_ACTIVE=postgresql" |
|
Environment="SPRING_DATASOURCE_URL=jdbc:postgresql://${database_address}:${database_port}/${database_name}" |
|
Environment="SPRING_DATASOURCE_USERNAME=${database_username}" |
|
Environment="SPRING_DATASOURCE_PASSWORD=${database_password}" |
|
Environment="REGISTRY_ZOOKEEPER_CONNECT_STRING=${zookeeper_connect_string}" |
|
Environment="WORKER_ALERT_LISTEN_HOST=${alert_server_host}" |
|
User=ds |
|
WorkingDirectory=/opt/dolphinscheduler |
|
ExecStart=bash -l /opt/dolphinscheduler/${dolphinscheduler_component}/bin/start.sh |
|
Restart=always |
|
|
|
[Install] |
|
WantedBy=multi-user.target |
|
|
|
packages: [] |
|
|
|
runcmd: |
|
- chown -R ds:ds /opt/dolphinscheduler |
|
- find /opt/dolphinscheduler/ -name "start.sh" | xargs -I{} chmod +x {} |
|
- find /opt/dolphinscheduler/ -name "common.properties" | xargs -I{} sed -ie "s/^resource.storage.type=.*/resource.storage.type=S3/g" {} |
|
- find /opt/dolphinscheduler/ -name "common.properties" | xargs -I{} sed -ie "s/^resource.aws.access.key.id=.*/resource.aws.access.key.id=${s3_access_key_id}/g" {} |
|
- find /opt/dolphinscheduler/ -name "common.properties" | xargs -I{} sed -ie "s:^resource.aws.secret.access.key=.*:resource.aws.secret.access.key=${s3_secret_access_key}:g" {} |
|
- find /opt/dolphinscheduler/ -name "common.properties" | xargs -I{} sed -ie "s/^resource.aws.region=.*/resource.aws.region=${s3_region}/g" {} |
|
- find /opt/dolphinscheduler/ -name "common.properties" | xargs -I{} sed -ie "s/^resource.aws.s3.bucket.name=.*/resource.aws.s3.bucket.name=${s3_bucket_name}/g" {} |
|
- find /opt/dolphinscheduler/ -name "common.properties" | xargs -I{} sed -ie "s/^resource.aws.s3.endpoint=.*/resource.aws.s3.endpoint=${s3_endpoint}/g" {} |
|
- systemctl enable dolphinscheduler |
|
- systemctl start dolphinscheduler-schema |
|
- systemctl start dolphinscheduler
|
|
|