GNU/Linux >> Belajar Linux >  >> Cent OS

Cara menginstal Spacewalk di CentOS

Spacewalk mengelola pembaruan konten perangkat lunak untuk distribusi turunan Red Hat seperti Fedora, CentOS, dan Scientific Linux, di belakang firewall Anda. Ini adalah versi open source dari satelit RedHat 5. Kami memiliki satelit RedHat 6 dan versi open source adalah katello. Saya akan menunjukkan kepada Anda secara rinci tentang cara mengkonfigurasinya secara rinci di tutorial saya berikutnya. Spacewalk adalah alat yang sangat kuat dalam hal mengelola infrastruktur dan benar-benar stabil dan dibangun dengan baik.

Saya akan melalui instalasi Spacewalk dan akan menunjukkan kepada Anda secara rinci cara mengkonfigurasinya agar siap produksi bersama dengan semua fitur yang dapat kita gunakan dengannya. Saya menggunakan instalasi Postgres yang disematkan.

Dalam tutorial ini, saya akan menggunakan 3 server:

  • 192.168.1.20 - Server spacewalk - centos 7
  • 192.168.1.21 - klien spacewalk - centos 6
  • 192.168.1.22 - klien space walk - centos 7

Persyaratan

CentOS 7 dengan instalasi minimum:

cat /etc/redhat-release

Hasil:

Rilis CentOS Linux 7.3.1611(Core)

SELinux dalam mode yang diberlakukan:

status
Status SELinux:diaktifkan 
mount SELinuxfs:/sys/fs/selinux
direktori root SELinux:/etc/selinux
Nama kebijakan yang dimuat:ditargetkan
Mode saat ini:menegakkan
Mode dari file konfigurasi:menegakkan
Status MLS Kebijakan:diaktifkan
Status penolakan_ kebijakan tidak diketahui:diizinkan
Versi kebijakan kernel maks:28
[[dilindungi email] ~]#

Tambahkan entri host/etc/hosts

192.168.1.20 spacewalk.sunil.cc spacewalk

Pemasangan Server Spacewalk

Memasang repo CentOS Spacewalk.

rpm -Uvh http://yum.spacewalkproject.org/2.6/RHEL/7/x86_64/spacewalk-repo-2.6-0.el7.noarch.rpm
cat> /etc/yum.repos.d/jpackage-generic.repo <[jpackage-generic]
name=JPackage generic
baseurl=http://vesta .informatik.rwth-aachen.de/ftp/pub/comp/Linux/jpackage/5.0/generic/free/
#mirrorlist=http://www.jpackage.org/mirrorlist.php?dist=generic&type=free&release=5.0
enabled=1
gpgcheck=1
gpgkey=http://www.jpackage.org/jpackage.asc
EOF
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Menginstal PostgreSQL untuk spacewalk:

yum install -y spacewalk-setup-postgresql spacewalk-postgresql

Menambahkan aturan Firewall.

firewall-cmd --add-service=http --permanent; firewall-cmd --add-service=https --permanen; firewall-cmd --add-port=5222/tcp --permanent;firewall-cmd --add-port=5269/tcp --permanent;firewall-cmd --add-port=69 â??permanent; firewall-cmd --add-port=5222/udp --permanent;firewall-cmd --add-port=5269/udp --permanent

Dan muat ulang firewall.

firewall-cmd --reload

Aktifkan Firewalld.

systemctl aktifkan firewalld
systemctl restart firewalld

Konfigurasikan server PostgreSQL.

Disini saya telah memberikan nama DB menjadi spacewalk, username menjadi spacewalkuser dan password spacewalkuser.

spacewalk-setup-postgresql create --db spacewalk --user spacewalkuser --password spacewalkuser
/usr/bin/spacewalk-setup-postgresql:baris 87:isSUSE:perintah tidak ditemukan/usr/bin/spacewalk-setup-postgresql:baris 100:isSUSE:perintah tidak ditemukanCatatan:Meneruskan permintaan ke 'systemctl mengaktifkan postgresql. service'.Membuat symlink dari /etc/systemd/system/multi-user.target.wants/postgresql.service ke /usr/lib/systemd/system/postgresql.service.Hint:cara yang lebih disukai untuk melakukan ini sekarang adalah "postgresql -setup initdb"Menginisialisasi database ... OK/usr/bin/spacewalk-setup-postgresql:baris 154:[:018446744073692774399:ekspresi integer diharapkanMengalihkan ke /bin/systemctl start postgresql.serviceMengalihkan ke /bin/systemctl reload postgresql.service 

Penyiapan server Spacewalk.

spacewalk-setup --skip-db-install
* Menyiapkan SELinux..** Basis Data:Menyiapkan koneksi basis data untuk backend PostgreSQL.** Basis Data:Instalasi basis data tertanam SKIPPED.Tidak dapat terhubung ke basis data. Informasi koneksi Anda mungkin salah. Kesalahan:DBI connect('dbname=rhnschema','rhnuser',...) gagal:FATAL:tidak ada entri pg_hba.conf untuk host "[local]", pengguna "rhnuser", database "rhnschema", SSL mati di / usr/share/perl5/vendor_perl/Spacewalk/Setup.pm baris 1686.Hostname (biarkan kosong untuk lokal)?Database? nama pengguna spacewalk? spacewalkuserPassword?** Database:Mengisi database.*** Kemajuan:##########################* Mengonfigurasi Tomcat.* Menyiapkan pengguna dan groups.** GPG:Menginisialisasi GPG dan mengimpor kunci.** GPG:Membuat direktori /root/.gnupgAnda harus memasukkan alamat email.Admin Email Address? [email protected]* Melakukan konfigurasi awal.* Mengonfigurasi host virtual SSL apache.Haruskah setup mengkonfigurasi server ssl default Apache untuk Anda (menyimpan ssl.conf asli) [Y]?** /etc/httpd/conf.d/ssl.conf telah dicadangkan ke ssl.conf-swsave* Mengonfigurasi jabberd.* Membuat sertifikat SSL.Kata sandi sertifikat CA?Anda harus memasukkan kata sandi.Kata sandi sertifikat CA?Masukkan kembali kata sandi sertifikat CA?Organisasi? ITOrganization Unit [spacewalk.sunil.cc]?Alamat Email [[email protected]]?Kota? Negara Bagian Den Haag? Negara Bagian? Kode Zuid-HollandCountry (Contoh:"US", "JP", "IN", atau ketik "?" untuk melihat daftar)? NL** SSL:Membuat sertifikat CA.** SSL:Menyebarkan sertifikat CA.** SSL:Membuat sertifikat server.** SSL:Menyimpan sertifikat SSL.* Menyebarkan file konfigurasi.* Memperbarui konfigurasi di database.* Menyiapkan Cobbler.. Cobbler mengharuskan layanan tftp dan xinetd diaktifkan untuk fungsionalitas penyediaan PXE. Aktifkan layanan ini [Y]? Y* Memulai ulang layanan.Instalasi selesai.Kunjungi https://spacewalk.sunil.cc untuk membuat akun administrator Spacewalk.[[email protected] ~]#

Mulai ulang Spacewalk.

layanan spacewalk dimulai ulang
Mematikan layanan spacewalk...Mengalihkan ke /bin/systemctl stop taskomatic.serviceMenghentikan cobblerd (via systemctl):[ OK ]Mengalihkan ke /bin/systemctl stop rhn-search.serviceMengalihkan ke /bin/systemctl stop osa-dispatcher .serviceMengalihkan ke /bin/systemctl stop httpd.serviceMengalihkan ke /bin/systemctl stop Tomcat.serviceMengalihkan ke /bin/systemctl stop jabberd.serviceMengalihkan ke /bin/systemctl stop postgresql.serviceDone.Memulai layanan spacewalk...Mengalihkan ke /bin/ systemctl start postgresql.serviceMengalihkan ke /bin/systemctl start jabberd.serviceMengalihkan ke /bin/systemctl start Tomcat.serviceMenunggu Tomcat siap ...Mengalihkan ke /bin/systemctl start httpd.serviceMengalihkan ke /bin/systemctl start osa-dispatcher .serviceMengalihkan ke /bin/systemctl start rhn-search.serviceMemulai cobblerd (via systemctl):[ OK ]Mengalihkan ke /bin/systemctl start taskomatic.serviceDone.[[ema] il dilindungi] ~]# 

Konfigurasikan Pengguna Spacewalk

Akses URL dari browser http://192.168.1.20

Isi detail organisasi.

Spacewalk berhasil dipasang.

Pembuatan saluran spacewalk

Klik saluran -> kelola saluran Perangkat Lunak -> buat saluran

Buat saluran induk -> centos6.8-parent

Sekarang kita perlu membuat saluran anak

Saluran -> kelola saluran -> buat saluran

Pilih saluran induk untuk menjadi centos-6.8-parent

Sekarang kita akan membuat repo untuk centos 6.8

Menautkan repo ke saluran anak yang kita buat sebelumnya

Perlu meniru langkah yang sama untuk pembuatan saluran di centos 7.

 

Sekarang kita perlu mengunduh paket dari repo. Kita dapat melakukannya melalui baris perintah atau dari dasbor.

baris perintah

[[dilindungi email] ~]# spacewalk-repo-sync --list00:01:23 ====================================00:01:23 | Label Saluran | Repositori |00:01:23 ====================================00:01:23 centos-7-anak | http://mirror.centos.org/centos/7.3.1611/os/x86_64/00:01:23 centos-6.8 | http://mirror.centos.org/centos/6.8/os/x86_64/00:01:23 centos-7 | Tidak ada repositori set00:01:23 centos-6.8-parent | Tidak ada kumpulan repositori[[email protected] ~]#[[email protected] ~]# spacewalk-repo-sync -c centos-6.800:02:18 ======================================00:02:18 | Saluran:centos-6.800:02:18 ======================================00:02 :18 Sinkronisasi saluran dimulai.00:02:18 URL Repo:http://mirror.centos.org/centos/6.8/os/x86_64/00:02:30 Paket dalam repo:669600:02:40 Paket sudah disinkronkan :000:02:40 Paket yang akan disinkronkan:669600:02:40 1/6696 :389-ds-base-1.2.11.15-74.el6-0.x86_6400:02:43 2/6696 :389-ds-base- devel-1.2.11.15-74.el6-0.i68600:02:43 3/6696 :389-ds-base-devel-1.2.11.15-74.el6-0.x86_6400:02:44 4/6696 :389- ds-base-libs-1.2.11.15-74.el6-0.i68600:02:45 5/6696 :389-ds-base-libs-1.2.11.15-74.el6-0.x86_6400:02:46 6/ 6696 :ConsoleKit-0.4.1-6.el6-0.x86_6400:02:47 7/6696 :ConsoleKit-devel-0.4.1-6.el6-0.x86_64

Setelah selesai akan terlihat seperti ini

[[email protected] ~]# spacewalk-repo-sync -c centos-6.808:44:57 ======================================08:44:57 | Channel:centos-6.808:44:57 ====================================08:44 :57 Sinkronisasi saluran dimulai.08:44:57 URL Repo:http://mirror.centos.org/centos/6.8/os/x86_64/08:44:58 Paket dalam repo:669608:45:47 Tidak ada paket baru untuk sync.08:45:47 Repo http://mirror.centos.org/centos/6.8/os/x86_64/ memiliki file comps comps.xml.08:45:47 Repo http://mirror.centos.org/ centos/6.8/os/x86_64/ memiliki 0 errata.08:45:47 Sinkronisasi saluran selesai dalam 0:00:49.08:45:47 Total waktu:0:00:49[[email protected] ~]#

Dari browser Web

Anda juga dapat menjadwalkan sinkronisasi harian atau mingguan untuk sinkronisasi otomatis di halaman ini dan juga memilih paket terbaru sinkron saja

Membuat kunci Aktivasi untuk host Centos 6 dan centos 7 untuk otentikasi dengan server spacewalk

Buka Sistem -> Kunci Aktivasi -> Buat kunci

Sekarang kita perlu membuat kunci untuk centos 6 , di sini saya menggunakan kunci sebagai centos-6 dan memilih saluran induk yang saya buat sebelumnya centos-6.8-parent

Lakukan hal yang sama untuk centos 7

Anda akan melihat dua kunci satu untuk centos 6 dan lainnya untuk centos 7

Konfigurasi Klien

Dalam bab ini, saya akan menunjukkan cara menginstal dan mengkonfigurasi klien dengan server spacewalk.

Cento6 - 192.168.1.21

Cento7 - 192.168.1.22

Konfigurasikan repo klien yum

Centos 6

[[email protected] ~]# rpm -Uvh http://yum.spacewalkproject.org/2.6-client/RHEL/6/x86_64/spacewalk-client-repo-2.6-0.el6.noarch.rpm 

Centos 7

[[email protected] ~]# rpm -Uvh http://yum.spacewalkproject.org/2.6-client/RHEL/7/x86_64/spacewalk-client-repo-2.6-0.el7.noarch.rpm 

Menginstal paket yang diperlukan.

Centos 6

Instal kedua epel repo dan paket-paket berikut pada node centos6 dan centos7.

Aktifkan repo epel

[[email protected] ~]# yum install epel-release -y 
[[email protected] ~]# yum install rhn-client-tools rhn-check rhn-setup rhnsd m2crypto yum-rhn-plugin osad rhncfg-actions rhncfg-management -y

Daftar dengan Server Spacewalk

Sebelum terhubung dengan server spacewalk, kita perlu mengunduh sertifikat ssl dari server spacewalk.

[[email protected] ~]# wget -O /usr/share/rhn/RHN-ORG-TRUSTED-SSL-CERT http://spacewalk.sunil.cc/pub/RHN-ORG-TRUSTED-SSL- CERT--2017-03-04 21:54:16-- http://spacewalk.sunil.cc/pub/RHN-ORG-TRUSTED-SSL-CERTMenyelesaikan spacewalk.sunil.cc... 192.168.1.20Menghubungkan ke spacewalk .sunil.cc|192.168.1.20|:80... terhubung.Permintaan HTTP terkirim, menunggu tanggapan... 200 OKPanjang:5291 (5.2K)Menyimpan ke:/usr/share/rhn/RHN-ORG-TRUSTED-SSL -CERT100%[===================================================================================================================>] 5,291 --.-K/s in 0s2017-04-04 21:54:17 (630 MB/s) - /usr/ share/rhn/RHN-ORG-TRUSTED-SSL-CERT disimpan [5291/5291][[email protected] ~]#

Sekarang kita perlu mendaftar dengan kunci aktivasi yang kita buat sebelumnya, kita buat 1-centos6 untuk centos6 dan 1-centos7 untuk centos7.

Centos 6

[[email protected] ~]# rhnreg_ks --force --activationkey="1-centos6" --serverUrl=http://spacewalk.sunil.cc/XMLRPC --sslCACert=/usr/share/rhn/ RHN-ORG-TRUSTED-SSL-CERT --profilename=$HOSTNAME

Centos 7

[[email protected] ~]# rhnreg_ks --force --activationkey="1-centos7" --serverUrl=http://spacewalk.sunil.cc/XMLRPC --sslCACert=/usr/share/rhn/ RHN-ORG-TRUSTED-SSL-CERT --profilename=$HOSTNAME

Menyinkronkan profil dengan spacewalk, jalankan di node centos6 dan centos7.

[[email protected] ~]# rhn-profile-sync

Ini dapat digunakan untuk menjalankan perintah jarak jauh dan transfer file dari spacewalk dan salah satu fitur keren menggunakan server spacewalk.

 [[email protected] ~]# chkconfig osad on[[email protected] ~]# service osad restartMematikan osad:[ OK ]Memulai osad:[ OK ][[email protected] ~]# rhn-actions-control --enable-all[[email protected] ~]# 
[[email protected] ~]# systemctl mengaktifkan osadCreated symlink dari /etc/systemd/system/multi-user.target.wants/osad.service ke /usr/lib/systemd/system/osad.service.[[ email protected] ~]# systemctl restart osad[[email protected] ~]# rhn-actions-control --enable-all[[email protected] ~]#

Sekarang kita dapat melakukan sinkronisasi profil.

 [[email protected] ~]# rhn-profile-syncMemperbarui profil paket...Memperbarui profil perangkat keras...[[email protected] ~]# [[email protected] ~]# rhn-profile-syncMemperbarui profil paket ...Memperbarui profil perangkat keras...[[email protected] ~]# 

Sekarang dapat memeriksa hal yang sama di dasbor spacewalk.

Menjalankan perintah Jarak Jauh dan mengelola file melalui spacewalk.

Dalam bab ini, kita akan melihat betapa hebatnya spacewalk dalam menjalankan perintah jarak jauh dan mengelola file konfigurasi.

Untuk Menjalankan Perintah Jarak Jauh, masuk ke dasbor spacewalk dan cari host tempat kita perlu menjalankan perintah jarak jauh.

Klik perintah jarak jauh dan ketik perintah yang Anda perlukan untuk dijalankan.

Setelah dijadwalkan, Anda dapat membuka tab terjadwal dan memeriksa statusnya.

Klik pada host untuk melihat hasilnya.

Menjalankan perintah jarak jauh dari spacewalk.

Kita perlu menginstal spacecmd untuk menjalankan perintah jarak jauh.

[[email protected] ~]# yum install spacecmd -y

pertama-tama kami akan menambahkan sistem menggunakan ssm dan sebelum itu memungkinkan login, Anda dapat menggunakan kredensial yang sama seperti frontend.

[[email protected] ~]# spacecmdSelamat datang di spacecmd, antarmuka baris perintah untuk Spacewalk. Ketik:'help' untuk daftar perintah 'help ' untuk bantuan khusus perintah 'quit' to quitSpacewalk Nama pengguna:administratorSandi Spacewalk :INFO:Terhubung ke https://spacewalk.sunil.cc/rpc/api sebagai administratorspacecmd {SSM:0}> system_listcentos6.sunil.cccentos7.sunil.cccentos7test.sunil.ccspacecmd {SSM:0}> ssm_add centos6.sunil. ccspacecmd {SSM:1}> ssm_listcentos6.sunil.ccspacecmd {SSM:1}> keluar 

buat skrip yang disebut dengan nama apa pun di sini saya beri nama ff.sh.

 [[email protected] ~]# cat ff.sh#!/bin/bashcat /etc/redhat-release[[email protected] ~]# 

Sekarang untuk menjalankan perintah jarak jauh.

[[email protected] ~]# spacecmd -y system_runscript "ssm -f ff.sh"INFO:Terhubung ke https://spacewalk.sunil.cc/rpc/api sebagai administratorUser:rootGroup:rootTimeout:600 detikWaktu Mulai :20170305T12:16:17pIsi Skrip---------------#!/bin/bashcat /etc/redhat-releaseSystems-------centos6.sunil.ccINFO:ID Tindakan:33INFO:Dijadwalkan:1 sistem[[email protected] ~]# 

Untuk memeriksa output Anda dapat menjalankan perintah di bawah ini.

 [[email protected] ~]# spacecmd schedule_getoutput 33INFO:Terhubung ke https://spacewalk.sunil.cc/rpc/api sebagai administratorSistem:centos6.sunil.ccWaktu Mulai:20170305T12:16:19Waktu Berhenti:20170305T12:16 :19Kode Pengembalian:0Output------CentOS rilis 6.8 (Final)[[email protected] ~]# 

Pemecahan masalah

Jika Anda melihat perintah dalam status tertunda untuk waktu yang lama, langkah-langkah berikut dapat dilakukan untuk memperbaiki masalah ini.

Pastikan osa-dispatcher berjalan di server spacewalk.

 [[email protected] ~]# systemctl status osa-dispatcher? osa-dispatcher.service - daemon OSA Dispatcher Dimuat:dimuat (/usr/lib/systemd/system/osa-dispatcher.service; diaktifkan; preset vendor:dinonaktifkan) Aktif:aktif (berjalan) sejak Sun 2017-03-05 09:59:55 CET; 2 jam 21 menit yang lalu Proses:3470 ExecStart=/usr/sbin/osa-dispatcher --pid-file /var/run/osa-dispatcher.pid (code=exited, status=0/SUCCESS) Proses:3469 ExecStartPre=/bin/ rm -f /var/run/osa-dispatcher.pid (kode=keluar, status=0/SUCCESS) PID Utama:3474 (osa-dispatcher) CGroup:/system.slice/osa-dispatcher.service ??3474 /usr /bin/python -s /usr/sbin/osa-dispatcher --pid-file /var/run/osa-dispatcher.pidMar 05 09:59:55 spacewalk.sunil.cc systemd[1]:Memulai daemon OSA Dispatcher. ..05 Mar 09:59:55 spacewalk.sunil.cc systemd[1]:File PID /var/run/osa-dispatcher.pid tidak dapat dibaca (belum?) setelah start.05 Mar 09:59:55 spacewalk.sunil .cc systemd[1]:Memulai daemon OSA Dispatcher.[[email protected] ~]# 

Jika tidak berjalan, mulai ulang layanan spacewalk.

 [[email protected] ~]# spacewalk-service restart 

Pastikan port firewall dibuka untuk 5222.

Silakan lakukan langkah-langkah berikut di sisi klien.

 [[email protected] ~]# systemctl stop osad [[email protected] ~]# rm -rf /etc/sysconfig/rhn/osad-auth.conf [[email protected] ~]# rhn_check -vvv[[ email dilindungi] ~]# systemctl start osad[[email protected] ~]# systemctl status osad? osad.service - daemon OSAD Dimuat:dimuat (/usr/lib/systemd/system/osad.service; diaktifkan; preset vendor:dinonaktifkan) Aktif:aktif (berjalan) sejak Sun 2017-03-05 13:54:46 CET; 26 detik yang lalu Proses:18696 ExecStart=/usr/sbin/osad --pid-file /var/run/osad.pid (code=exited, status=0/SUCCESS) PID Utama:18697 (osad) CGroup:/system.slice /osad.service ??18697 /usr/bin/python -s /usr/sbin/osad --pid-file /var/run/osad.pidMar 05 13:54:46 centos7test.sunil.cc systemd[1]:Memulai daemon OSAD...05 Mar 13:54:46 centos7test.sunil.cc systemd[1]:File PID /var/run/osad.pid tidak dapat dibaca (belum?) setelah start.05 Mar 13:54:46 centos7test .sunil.cc systemd[1]:Menjalankan daemon OSAD.[[email protected] ~]# netstat -aunltp|grep 5222tcp 1698 0 192.168.1.23:48127 192.168.1.20:5222 ESTABLISHED 18697/python[[email protected] ~] #

Menyebarkan file melalui spacewalk.

Dalam contoh ini, saya akan mengubah motd server centos 6.

Saya akan membuat saluran konfigurasi terlebih dahulu.



Membuat file dengan konten di bawah ini.

Sekarang kita perlu berlangganan saluran ke server mana itu perlu digunakan.


File dapat ditarik dari klien.

 [[email protected] ~]# rhncfg-client channelsMenggunakan nama server spacewalk.sunil.ccConfig channels:Label Name----- ----motd-change motd[[email protected] ~]#[[email protected] ~]# rhncfg-client getMenggunakan nama server spacewalk.sunil.ccMenyebarkan /etc/motd[[email protected] ~]#[[email protected] ~]# ls -l /etc/motd-rw-r--r -- 1 root root 760 Mar 5 14:29 /etc/motd[[email protected] ~]# cat /etc/motd********************** *********************************************** ** Ini sistem adalah untuk penggunaan pengguna yang berwenang saja. Penggunaan ** sistem ini dapat dipantau dan dicatat oleh personel sistem. ** ** Siapa pun yang menggunakan sistem ini secara tegas menyetujui pemantauan tersebut ** dan disarankan bahwa jika pemantauan tersebut mengungkapkan kemungkinan ** bukti aktivitas kriminal, personel sistem dapat memberikan ** bukti dari pemantauan tersebut kepada petugas penegak hukum. ************************************************** *********************[[email protected] ~]# 

Cent OS
  1. Cara Menginstal Server Database MySQL 8 di CentOS 8

  2. Cara Menginstal Mediawiki di Server CentOS

  3. Cara Menginstal AIDE di CentOS 7

  1. Bagaimana cara menginstal wordpress di CentOS 6

  2. Cara Menginstal SpaceWalk di CentOS 6 / RHEL 6

  3. Cara Menginstal PostgreSQL di CentOS 7 / RHEL 7

  1. Cara Menginstal SpaceWalk di CentOS 7 / RHEL 7

  2. Cara Menginstal MariaDB 10.4 di CentOS 8 &RHEL 8

  3. Cara Menginstal MySQL 8.0 di CentOS/RHEL 8