Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle Linux Automation Manager (उर्फ "Oracle Ansible Tower") कैसे स्थापित करें

यदि आप सही Oracle लोगों का अनुसरण करते हैं, तो आप शायद पहले से ही जानते हैं कि Oracle ने अभी Oracle Linux Automation Manager जारी किया है:

<ब्लॉकक्वॉट>

आपका #Ansible ऑटोमेशन इंजन पहले से मौजूद हो सकता है, जिसमें आपकी Oracle Linux सदस्यता शामिल है... https://t.co/RPZw37yOvs pic.twitter.com/aQZInFcUsv

- लुडोविको काल्डारा (@ludodba) सितंबर 6, 2021

मेरी समझ यह थी कि उस तक पहुंच के लिए ULN पहुंच की आवश्यकता होती है, इसलिए घर पर केवल एक त्वरित VM को स्पिन करने और इसे आज़माने का कोई तरीका नहीं था... लेकिन मैं गलत था।

जैसा कि लुडोविको ने पुष्टि की है, सार्वजनिक पहुंच है:

<ब्लॉककोट डेटा-वार्तालाप ="कोई नहीं">

हो सकता है कि मैंने बहुत जल्दी बात कर ली हो, ऐसा लगता है कि एक सार्वजनिक रेपो भी उपलब्ध है:https://t.co/XxZhs9oFDi

- लुडोविको काल्डारा (@ludodba) 7 सितंबर, 2021

मैंने सोचा कि मैं इसे अभी के लिए सरल रखूंगा, इसलिए मैंने अभी-अभी वैग्रांट के साथ एक VM बनाया है और पुष्टि की है कि आप उस सार्वजनिक रिपॉजिटरी से घर से इसका परीक्षण कर सकते हैं।

सबसे पहले, अपने सिस्टम में ऑटोमेशन पब्लिक रिपोजिटरी जोड़ें और सक्षम करें:

[root@OracleAuto ~]# dnf config-manager --add-repo http://yum.oracle.com/repo/OracleLinux/OL8/automation/x86_64
Adding repo from: http://yum.oracle.com/repo/OracleLinux/OL8/automation/x86_64


[root@OracleAuto ~]#  dnf repolist
repo id                                                       repo name
ol8_UEKR6                                                     Latest Unbreakable Enterprise Kernel Release 6 for Oracle Linux 8 (x86_64)
ol8_appstream                                                 Oracle Linux 8 Application Stream (x86_64)
ol8_baseos_latest                                             Oracle Linux 8 BaseOS Latest (x86_64)
yum.oracle.com_repo_OracleLinux_OL8_automation_x86_64         created by dnf config-manager from http://yum.oracle.com/repo/OracleLinux/OL8/automation/x86_64
[root@OracleAuto ~]# dnf config-manager --set-enabled yum.oracle.com_repo_OracleLinux_OL8_automation_x86_64


[root@OracleAuto ~]# dnf update
created by dnf config-manager from http://yum.oracle.com/repo/OracleLinux/OL8/automation/x86_64                                      108 kB/s | 437 kB     00:04
Last metadata expiration check: 0:00:01 ago on Tue 07 Sep 2021 07:35:18 PM UTC.
Dependencies resolved.
=====================================================================================================================================================================
 Package                                     Architecture            Version                                                Repository                          Size
=====================================================================================================================================================================
Installing:
 kernel-uek                                  x86_64                  5.4.17-2102.204.4.4.el8uek                             ol8_UEKR6                           66 M
Upgrading:
 NetworkManager                              x86_64                  1:1.30.0-10.0.1.el8_4                                  ol8_baseos_latest                  2.6 M
 NetworkManager-libnm                        x86_64                  1:1.30.0-10.0.1.el8_4                                  ol8_baseos_latest                  1.8 M
 btrfs-progs                                 x86_64                  5.12.1-1.el8                                           ol8_UEKR6                          858 k
 dhcp-client                                 x86_64                  12:4.3.6-44.el8_4.1                                    ol8_baseos_latest                  318 k
 dhcp-common                                 noarch                  12:4.3.6-44.el8_4.1                                    ol8_baseos_latest                  207 k
 dhcp-libs                                   x86_64                  12:4.3.6-44.el8_4.1                                    ol8_baseos_latest                  148 k
 dmidecode                                   x86_64                  1:3.2-8.0.2.el8                                        ol8_baseos_latest                   92 k
[....]
  nvme-cli-1.12-4.el8_4.x86_64                               openldap-2.4.46-17.el8_4.x86_64                        oraclelinux-release-el8-1.0-19.el8.x86_64
  procps-ng-3.3.15-6.0.1.el8.x86_64                          python3-firewall-0.8.2-7.0.1.el8_4.noarch              python3-rpm-4.14.3-14.el8_4.x86_64
  rpm-4.14.3-14.el8_4.x86_64                                 rpm-build-libs-4.14.3-14.el8_4.x86_64                  rpm-libs-4.14.3-14.el8_4.x86_64
  rpm-plugin-selinux-4.14.3-14.el8_4.x86_64                  rpm-plugin-systemd-inhibit-4.14.3-14.el8_4.x86_64      rsyslog-8.1911.0-7.0.1.el8_4.2.x86_64
  selinux-policy-3.14.3-67.0.6.el8_4.1.noarch                selinux-policy-targeted-3.14.3-67.0.6.el8_4.1.noarch   systemd-239-45.0.2.el8_4.3.x86_64
  systemd-libs-239-45.0.2.el8_4.3.x86_64                     systemd-pam-239-45.0.2.el8_4.3.x86_64                  systemd-udev-239-45.0.2.el8_4.3.x86_64
  virt-what-1.18-9.el8_4.x86_64
Installed:
  kernel-uek-5.4.17-2102.204.4.4.el8uek.x86_64

Complete!
[root@OracleAuto ~]# 

सिस्टम को अपडेट करने के बाद, हम ऑटोमेशन मैनेजर पैकेज की खोज कर सकते हैं

[root@OracleAuto ~]# dnf search automation-manager
Last metadata expiration check: 0:07:57 ago on Tue 07 Sep 2021 07:35:18 PM UTC.
================================================================= Name Matched: automation-manager ==================================================================
ol-automation-manager.src : Oracle Linux Automation Manager, based on AWX, provides a web-based user interface, REST API, and task engine built on top of Ansible.
ol-automation-manager.x86_64 : Oracle Linux Automation Manager, based on AWX, provides a web-based user interface, REST API, and task engine built on top of Ansible.
oraclelinux-automation-manager-release-el8.src : Oracle Linux Automation Manager yum repository configuration
oraclelinux-automation-manager-release-el8.x86_64 : Oracle Linux Automation Manager yum repository configuration
[root@OracleAuto ~]#

स्वचालन पैकेज की स्थापना काफी सरल है (निश्चित रूप से एक डिफ़ॉल्ट/परीक्षण कॉन्फ़िगरेशन के लिए) और आप नीचे Oracle दस्तावेज़ से कॉपी किया गया एक उदाहरण देख सकते हैं:
Oracle Linux स्वचालन प्रबंधक स्थापित करना

[root@OracleAuto ~]# dnf install ol-automation-manager
Last metadata expiration check: 0:09:39 ago on Tue 07 Sep 2021 07:35:18 PM UTC.
Dependencies resolved.
=====================================================================================================================================================================
 Package                            Architecture Version                                           Repository                                                   Size
=====================================================================================================================================================================
Installing:
 ol-automation-manager              x86_64       1.0.0-1.el8                                       yum.oracle.com_repo_OracleLinux_OL8_automation_x86_64        67 M
Installing dependencies:
 aajohan-comfortaa-fonts            noarch       3.001-2.el8                                       ol8_baseos_latest                                           148 k
 ansible                            noarch       2.9.23-1.el8                                      yum.oracle.com_repo_OracleLinux_OL8_automation_x86_64        17 M
 bzip2                              x86_64       1.0.6-26.el8                                      ol8_baseos_latest                                            60 k
 checkpolicy                        x86_64       2.9-1.el8                                         ol8_baseos_latest                                           346 k
 emacs-filesystem                   noarch       1:26.1-5.el8                                      ol8_baseos_latest                                            69 k
 fontconfig                         x86_64       2.13.1-3.el8                                      ol8_baseos_latest                                           274 k
 fontpackages-filesystem            noarch       1.44-22.el8                                       ol8_baseos_latest                                            16 k
 gd                                 x86_64       2.2.5-7.el8                                       ol8_appstream                                               144 k
[...]

  redis-5.0.3-2.module+el8.0.0.z+5250+19ca22c8.x86_64                                   sos-4.0-11.0.1.el8.noarch
  sshpass-1.06-9.el8.x86_64                                                             supervisor-4.2.2-1.el8.noarch
  uwsgi-2.0.18-4.0.1.el8.x86_64                                                         xmlsec1-1.2.25-4.el8.x86_64
  xmlsec1-openssl-1.2.25-4.el8.x86_64

Complete!
[root@OracleAuto ~]#

इसके बाद, हमें AWX उपयोगकर्ता का उपयोग करके कॉन्फ़िगरेशन सेटअप करने की आवश्यकता है।
दोबारा, दस्तावेज़ीकरण उदाहरण का पालन करते हुए:

[root@OracleAuto ~]# cat /etc/redis.conf
[...]
unixsocket /var/run/redis/redis.sock 
unixsocketperm 775

[root@OracleAuto ~]# /var/lib/ol-automation-manager/ol-automation-manager-DB-init.sh
 * Initializing database in '/var/lib/pgsql/data'
 * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
Database pre-setup is completed
[root@OracleAuto ~]#

[root@OracleAuto ~]# su -l awx -s /bin/bash


[awx@OracleAuto ~]$ awx-manage migrate
Operations to perform:
  Apply all migrations: auth, conf, contenttypes, main, oauth2_provider, sessions, sites, social_django, sso, taggit
Running migrations:
  Applying contenttypes.0001_initial... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying taggit.0001_initial... OK
  Applying taggit.0002_auto_20150616_2121... OK
  Applying auth.0001_initial... OK
  Applying main.0001_initial... OK
  Applying main.0002_squashed_v300_release... OK
  Applying main.0003_squashed_v300_v303_updates... OK
  Applying main.0004_squashed_v310_release... OK
  Applying conf.0001_initial... OK
  Applying conf.0002_v310_copy_tower_settings... OK
  Applying main.0005_squashed_v310_v313_updates... OK
  Applying main.0006_v320_release... OK
  Applying main.0007_v320_data_migrations... OK
  Applying main.0008_v320_drop_v1_credential_fields... OK
  Applying main.0009_v322_add_setting_field_for_activity_stream... OK
[....]

  Applying social_django.0002_add_related_name... OK
  Applying social_django.0003_alter_email_max_length... OK
  Applying social_django.0004_auto_20160423_0400... OK
  Applying social_django.0005_auto_20160727_2333... OK
  Applying social_django.0006_partial... OK
  Applying social_django.0007_code_timestamp... OK
  Applying social_django.0008_partial_timestamp... OK
  Applying sso.0001_initial... OK
  Applying sso.0002_expand_provider_options... OK
  Applying taggit.0003_taggeditem_add_unique_index... OK

आइए अब प्रबंधन उपयोगकर्ता बनाएं और सुनिश्चित करें कि आपने "AWX इंस्टेंस प्रावधान" के लिए सही होस्टनाम/आईपी पता सेट किया है

[awx@OracleAuto ~]$ awx-manage createsuperuser --username admin
Email address: [email protected]
Password:
Password (again):
Superuser created successfully.
[awx@OracleAuto ~]$


[awx@OracleAuto ~]$ awx-manage create_preload_data
Default organization added.
Demo Credential, Inventory, and Job Template added.
(changed: True)
[awx@OracleAuto ~]$ awx-manage provision_instance --hostname=OracleAuto
Successfully registered instance OracleAuto
(changed: True)
[awx@OracleAuto ~]$ awx-manage register_queue --queuename=tower --hostnames=OracleAuto
Creating instance group tower
Added instance OracleAuto to tower
(changed: True)
[awx@OracleAuto ~]$
[awx@OracleAuto ~]$ exit
logout

एक बार यह पूरा हो जाने के बाद, हमें HTTP सर्वर को सेटअप करना होगा।
चूंकि यह सिर्फ एक परीक्षण है, आप अपने प्रबंधन इंटरफ़ेस में लॉगिन करने में आने वाली समस्याओं से बचने के लिए बस एक ssl प्रमाणपत्र बना सकते हैं (कृपया, अपने प्रोडक्शन सिस्टम पर ऐसा न करें :))

[root@OracleAuto ~]# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/tower/tower.key -out /etc/tower/tower.crt
Generating a RSA private key
......+++++
.+++++
writing new private key to '/etc/tower/tower.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:
State or Province Name (full name) []:
Locality Name (eg, city) [Default City]:
Organization Name (eg, company) [Default Company Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:
Email Address []:
[root@OracleAuto ~]#

मुझे यकीन है कि आप वेब सर्वर को अपने पसंदीदा सर्वर में बदल सकते हैं, लेकिन अभी के लिए, हम nginx सर्वर सेट करेंगे जो कि डिफ़ॉल्ट है।
यहां, हमने अभी डिफ़ॉल्ट कॉन्फ़िगरेशन का बैकअप बनाया है और दस्तावेज़ से डिफ़ॉल्ट कॉन्फ़िगरेशन की प्रतिलिपि बनाई है:

[root@OracleAuto ~]# mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bk
[root@OracleAuto ~]# nano /etc/nginx/nginx.conf

[root@OracleAuto ~]# cat /etc/nginx/nginx.conf
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;

events {
    worker_connections 1024;
}

http {
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;

    sendfile            on;
    tcp_nopush          on;
    tcp_nodelay         on;
    keepalive_timeout   65;
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types;
    default_type        application/octet-stream;

    # Load modular configuration files from the /etc/nginx/conf.d directory.
    # See http://nginx.org/en/docs/ngx_core_module.html#include
    # for more information.
    include /etc/nginx/conf.d/*.conf;
}
[root@OracleAuto ~]#

अंतिम चरण, बस टावर सेटिंग फ़ाइल पर कुछ जानकारी बदलें (बस अपना होस्टनाम/आईपी CLUSTER_HOST_ID में जोड़ें) और सिस्टमड के साथ Oracle ऑटोमेशन प्रबंधक सेवा को सक्षम/शुरू करें

[root@OracleAuto ~]# grep -i CLUSTER_HOST_ID /etc/tower/settings.py
CLUSTER_HOST_ID = "OracleAuto"
[root@OracleAuto ~]#

[root@OracleAuto ~]# systemctl enable --now ol-automation-manager.service
Created symlink /etc/systemd/system/multi-user.target.wants/ol-automation-manager.service → /usr/lib/systemd/system/ol-automation-manager.service.
[root@OracleAuto ~]#

और voilà! अब आप सीधे Oracle ऑटोमेशन मैनेजर इंटरफेस से अपनी उत्तरदायी प्लेबुक का प्रबंधन शुरू कर सकते हैं






मुझे वास्तव में Ansible और Automation में और अधिक प्राप्त करने की आवश्यकता है, इसलिए यह Oracle के स्वयं के स्वचालन प्रबंधक का उपयोग शुरू करने का एक अच्छा तरीका हो सकता है :)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle में KEEP के साथ और उसके बिना विभाजन

  2. SQL क्वेरी तुल्यता साबित करना

  3. Oracle.ManagedDataAccess.EntityFramework - ORA-01918:उपयोगकर्ता 'dbo' मौजूद नहीं है

  4. शीर्ष 30 सबसे उपयोगी समवर्ती प्रबंधक प्रश्न

  5. SQL 'कहाँ' खंड में शर्तों का निष्पादन क्रम