Installasi dan konfigurasi

Installasi dan konfigurasi

Bagian ini menjelaskan cara menginstal dan mengkonfigurasi layanan OpenStack Identity, code-named keystone, pada ‘controller node’. Untuk kinerja, konfigurasi ini mengerahkan ‘Fernet token’ dan server Apache HTTP untuk menangani permintaan.

Prasyarat (Prerequisite)

Sebelum kamu melakukan konfigurasi layanan OpenStack Identity, kamu harus membuat sebuah database dan sebuah token administrasi

  1. Untuk membuat database, selesaikan tindakan berikut:

    • Gunakan klien akses database untuk berhubung ke server database sebagai root user:

      $ mysql -u root -p
      
    • Buat database keystone:

      CREATE DATABASE keystone;
      
    • Beri akses yang tepat untuk database keystone:

      GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' \
        IDENTIFIED BY 'KEYSTONE_DBPASS';
      GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' \
        IDENTIFIED BY 'KEYSTONE_DBPASS';
      

      Ganti KEYSTONE_DBPASS dengan password yang sesuai.

    • Keluarlah dari client untuk mengakses database.

  2. Hasilkan nilai acak untuk digunakan sebagai token administrasi dalam konfigurasi awal:

    $ openssl rand -hex 10
    

Instal dan konfigurasi komponen

Catatan

File konfigurasi default bervariasi menurut distribusi. Anda mungkin perlu menambahkan bagian dan opsi ini daripada memodifikasi bagian dan opsi yang ada. Juga, elipsis (`` ... ``) dalam cuplikan konfigurasi menunjukkan opsi konfigurasi default potensial dimana Anda harus mempertahankan.

Catatan

Panduan ini menggunakan server Apache HTTP dengan mod_wsgi untuk melayani permintaan layanan Identity pada port 5000 dan 35357. Secara default, layanan keystone masih mendengarkan pada port ini. Oleh karena itu, buku ini secara manual menonaktifkan layanan keystone.

  1. Jalankan perintah berikut untuk menginstal paket:

    # yum install openstack-keystone httpd mod_wsgi
    
  1. Edit file /etc/keystone/keystone.conf dan selesaikan tindakan berikut:

    • Dalam bagian ``[DEFAULT] ``, tentukan nilai token administration awal:

      [DEFAULT]
      ...
      admin_token = ADMIN_TOKEN
      

      Ganti ADMIN_TOKEN dengan nilai acak yang Anda buat di langkah sebelumnya.

    • Dalam bagian ``[Database] ``, konfigurlah akses database:

      [database]
      ...
      connection = mysql+pymysql://keystone:KEYSTONE_DBPASS@controller/keystone
      

      Ganti ``KEYSTONE_DBPASS``dengan password yang Anda pilih untuk database.

    • Dalam bagian ``[token] ``, lakukan konfigurasi penyedia tanda Fernet:

      [token]
      ...
      provider = fernet
      
  1. Lakukan pengisian database layanan Identity:

    # su -s /bin/sh -c "keystone-manage db_sync" keystone
    

    Catatan

    Mengabaikan semua pesan bantahan dalam output ini.

  2. Inisialisasi key Fernet:

    # keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
    

Lakukan konfigurasi server Apache HTTP

  1. Edit file /etc/httpd/conf/httpd.conf dan konfigurasi opsi ServerName ke referensi controller node:

    ServerName controller
    
  2. Buat file /etc/httpd/conf.d/wsgi-keystone.conf dengan isi sebagai berikut:

    Listen 5000
    Listen 35357
    
    <VirtualHost *:5000>
        WSGIDaemonProcess keystone-public processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
        WSGIProcessGroup keystone-public
        WSGIScriptAlias / /usr/bin/keystone-wsgi-public
        WSGIApplicationGroup %{GLOBAL}
        WSGIPassAuthorization On
        ErrorLogFormat "%{cu}t %M"
        ErrorLog /var/log/httpd/keystone-error.log
        CustomLog /var/log/httpd/keystone-access.log combined
    
        <Directory /usr/bin>
            Require all granted
        </Directory>
    </VirtualHost>
    
    <VirtualHost *:35357>
        WSGIDaemonProcess keystone-admin processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
        WSGIProcessGroup keystone-admin
        WSGIScriptAlias / /usr/bin/keystone-wsgi-admin
        WSGIApplicationGroup %{GLOBAL}
        WSGIPassAuthorization On
        ErrorLogFormat "%{cu}t %M"
        ErrorLog /var/log/httpd/keystone-error.log
        CustomLog /var/log/httpd/keystone-access.log combined
    
        <Directory /usr/bin>
            Require all granted
        </Directory>
    </VirtualHost>
    

Finalisasi instalasi

  • Mulai server Apache HTTP dan mengkonfigurasinya untuk memulai saat booting:

    # systemctl enable httpd.service
    # systemctl start httpd.service
    
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.