Hai,
Saya mencoba menggunakan peran ini untuk menginstal PostgresSQL 9.6 di Centos 7.
Tidak apa-apa melakukan 9.2 yang ada di repositori dasar tetapi saya tidak dapat menemukan cara mengkonfigurasinya untuk menggunakan repositori PostgresSQL YUM untuk mendapatkan 9.6.
Berapa nilai yang perlu dimasukkan dalam variabel postgresql_enablerepo
?
Saya hanya dapat menemukan rpm repositori misalnya https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
Ketika saya mengatur:
postgresql_enablerepo: "https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm"
Ini menghasilkan kesalahan:
"Error setting/accessing repos: Error getting repository data for https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm, repository not found"
Dapatkah Anda melihat apa yang saya lakukan salah?
Terima kasih
Saya _think_ saya telah menjawab ini sendiri.
saya berlari:
yum install https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
Kemudian mencari di /etc/yum.repos.d/pgdg-96-centos.repo
Saya menemukan nama pgdg96
. Menyetel postgresql_enablerepo
ke ini mengakibatkan postgresql96-libs
ditarik dari pgdg96
tetapi yang lainnya ( postgresql
, postgresql-contrib
dll) masih berasal dari updates
.
Jadi saya mengikuti instruksi di https://wiki.postgresql.org/wiki/YUM_Installation untuk mengecualikan postgresql*
dari base
dan updates
.
Saya kemudian menjalankan kembali buku pedoman dengan peran tersebut dan menginstal 9.6.
Untuk melakukan ini di Ansible, saya menambahkan pre_tasks ini:
- ini_file:
path: /etc/yum.repos.d/CentOS-Base.repo
option: exclude
value: postgresql*
section: "{{ item }}"
with_items:
- base
- updates
- yum:
name: https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
state: present
Apakah ini cara yang benar untuk melakukannya atau apakah saya mengatasi ketidakmampuan saya sendiri?
Terima kasih
Hai @worldofchris , saya mengalami masalah yang sama saat mencoba menginstal PostgreSQL 9.6 pada CentOS 7 dan pendekatan Anda membuat saya memulai di jalan yang benar. Namun, saya masih mengalami beberapa masalah karena Postgres tidak diinstal dari paket sistem. Setelah beberapa kali gagal, saya melihat bagian di README yang membahas menggunakan paket non-sistem dan muncul dengan yang berikut:
- hosts: all
gather_facts: true
pre_tasks:
- name: make selinux permissive
selinux:
policy: targeted
state: permissive
become: yes
- name: install PostgreSQL 9.6 repository
yum:
name: https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
state: present
become: yes
tasks:
- name: install system packages
yum:
name: "{{ item }}"
state: installed
with_items:
- "<strong i="7">@Development</strong> tools"
become: yes
roles:
- role: geerlingguy.postgresql
postgresql_enablerepo: "pgdg96"
postgresql_version: 9.6
postgresql_data_dir: /var/lib/pgsql/9.6/data
postgresql_bin_path: /usr/pgsql-9.6/bin
postgresql_config_path: /var/lib/pgsql/9.6/data
postgresql_daemon: postgresql-9.6.service
postgresql_packages:
- postgresql96
- postgresql96-server
- postgresql96-libs
- postgresql96-contrib
- postgresql96-devel
become: yes
Ternyata Anda harus sangat spesifik tentang variabel khusus versi tetapi semuanya tampaknya berfungsi sekarang dan saya tidak perlu membuat perubahan apa pun pada CentOS-Base.repo. Semoga ini membantu Anda.
terima kasih @worldofchris @matthiase keduanya sangat membantu saya!
Bantuan yang luar biasa. Ini harus didokumentasikan dalam wiki atau sesuatu
Jika seseorang ingin menjalankan PostgreSQL 10 dengan peran yang memungkinkan, saya berhasil membuatnya bekerja dengan buku pedoman berikut:
- hosts: all
pre_tasks:
- name: install PostgreSQL 10 repository
yum:
name: https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7.5-x86_64/pgdg-redhat10-10-2.noarch.rpm
state: present
become: yes
tasks:
roles:
- role: geerlingguy.postgresql
postgresql_enablerepo: "pgdg10"
postgresql_version: 10
postgresql_data_dir: /var/lib/pgsql/10/data
postgresql_bin_path: /usr/pgsql-10/bin
postgresql_config_path: /var/lib/pgsql/10/data
postgresql_daemon: postgresql-10.service
postgresql_packages:
- postgresql10
- postgresql10-server
- postgresql10-libs
- postgresql10-contrib
- postgresql10-devel
become: yes
- hosts: db
pre_tasks:
- name: install repository PostgresQL
yum:
name: https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
state: present
become: yes
become: yes
vars_files:
- /home/sane/ansible_roles/pg/geerlingguy.postgresql/defaults/main.yml
roles:
- role: geerlingguy.postgresql
postgresql_enablerepo: "pgdg11"
postgresql_version: 11
postgresql_data_dir: /var/lib/pgsql/11/data
postgresql_bin_path: /usr/pgsql-11/bin
postgresql_config_path: /var/lib/pgsql/11/data
postgresql_daemon: postgresql-11.service
postgresql_packages:
- postgresql11
- postgresql11-server
- postgresql11-libs
- postgresql11-contrib
- postgresql11-devel
become: yes
Masalah ini telah ditandai 'basi' karena kurangnya aktivitas baru-baru ini. Jika tidak ada aktivitas lebih lanjut, masalah akan ditutup dalam 30 hari lagi. Terima kasih atas kontribusi anda!
Silakan baca posting blog ini untuk melihat alasan mengapa saya menandai masalah sebagai basi.
Masalah ini telah ditutup karena tidak aktif. Jika Anda merasa ini adalah kesalahan, silakan buka kembali masalah atau ajukan masalah baru dengan detail yang relevan.
Komentar yang paling membantu
Hai @worldofchris , saya mengalami masalah yang sama saat mencoba menginstal PostgreSQL 9.6 pada CentOS 7 dan pendekatan Anda membuat saya memulai di jalan yang benar. Namun, saya masih mengalami beberapa masalah karena Postgres tidak diinstal dari paket sistem. Setelah beberapa kali gagal, saya melihat bagian di README yang membahas menggunakan paket non-sistem dan muncul dengan yang berikut:
Ternyata Anda harus sangat spesifik tentang variabel khusus versi tetapi semuanya tampaknya berfungsi sekarang dan saya tidak perlu membuat perubahan apa pun pada CentOS-Base.repo. Semoga ini membantu Anda.