Cara Instalasi CKAN sebagai Portal Open Data pada Ubuntu 22.04

Cara Instalasi CKAN sebagai Portal Open Data pada Ubuntu 22.04

Pendahuluan

Kebutuhan akan data yang terbuka dan mudah diakses terus meningkat, baik di lingkungan pemerintahan, perguruan tinggi, perusahaan, maupun organisasi. Dengan adanya portal open data, berbagai dataset dapat dipublikasikan secara terstruktur sehingga lebih mudah dicari, dianalisis, dan dimanfaatkan oleh masyarakat maupun pengembang aplikasi. Kehadiran portal data yang terpusat juga membantu meningkatkan transparansi serta memudahkan proses berbagi informasi antarinstansi.

Salah satu platform open source yang banyak digunakan untuk membangun portal data adalah CKAN (Comprehensive Knowledge Archive Network). Platform ini menyediakan berbagai fitur untuk mengelola dataset, metadata, organisasi, serta API yang memungkinkan integrasi dengan sistem lain. Berkat fleksibilitas dan dukungan komunitas yang aktif, CKAN telah digunakan oleh banyak institusi di berbagai negara sebagai fondasi portal data.

Persiapan Sebelum Instalasi

Sebelum memulai instalasi, pastikan server telah memenuhi kebutuhan berikut.

Sistem Operasi

  • Ubuntu 22.04 LTS.

Spesifikasi Minimum

  • CPU 2 Core (disarankan 4+ Core).
  • RAM minimal 2 GB (disarankan 4 GB atau lebih).
  • Storage minimal 60 GB (disarankan 100 GB+).

Mengenal Komponen yang Dibutuhkan CKAN

CKAN memerlukan beberapa layanan pendukung agar dapat berjalan dengan baik. Setiap layanan memiliki fungsi yang berbeda dan saling terintegrasi.

  • PostgreSQL digunakan sebagai database utama untuk menyimpan data dan metadata.
  • Solr digunakan sebagai mesin pencarian dataset.
  • Redis digunakan untuk cache dan session.
  • Python digunakan sebagai lingkungan aplikasi CKAN.
  • Nginx digunakan sebagai reverse proxy untuk melayani akses pengguna.

Seluruh komponen tersebut akan diinstal dan dikonfigurasi secara bertahap pada panduan ini.

Instalasi Dependensi

  1. Menginstal Paket Pendukung
    Sebelum menginstal CKAN, pasang terlebih dahulu beberapa paket yang dibutuhkan.
    sudo apt install -y python3-dev python3-pip python3-venv \
    git libpq-dev redis-server nginx openjdk-11-jdk
    Keterangan:
    Paket tersebut diperlukan untuk menjalankan lingkungan Python, Redis, Nginx, serta Java yang digunakan oleh Solr.
  2. Mengaktifkan Redis
    Setelah proses instalasi selesai, aktifkan layanan Redis agar berjalan secara otomatis saat server dinyalakan ulang.
    sudo systemctl enable redis-server
    sudo systemctl start redis-server
    Keterangan:
    Redis digunakan oleh CKAN untuk kebutuhan cache dan session.
  3. Memastikan Redis Berjalan
    Pastikan layanan Redis telah aktif dengan menjalankan perintah berikut:
    sudo systemctl status redis-server

    Apabila berhasil, status layanan akan menampilkan:

    active (running)
    Keterangan:
    Status active (running) menunjukkan bahwa Redis telah berjalan dengan normal dan siap digunakan oleh CKAN.

Instalasi PostgreSQL

  1. Menginstal PostgreSQL
    CKAN menggunakan PostgreSQL sebagai database utama untuk menyimpan data dan metadata.
    sudo apt install -y postgresql
    Keterangan:
    PostgreSQL merupakan database yang direkomendasikan untuk CKAN dan digunakan secara luas pada lingkungan produksi.
  2. Masuk ke User PostgreSQL
    Selanjutnya, masuk ke akun postgres untuk membuat user dan database yang akan digunakan oleh CKAN.
    sudo -i -u postgres
    Keterangan:
    User postgres memiliki hak akses administratif terhadap layanan PostgreSQL.
  3. Membuat User Database
    Buat user khusus untuk CKAN menggunakan perintah berikut:
    createuser -S -D -R -P ckan_default

    Masukkan kata sandi sesuai keinginan ketika diminta.

    Keterangan:
    User ckan_default akan digunakan oleh aplikasi CKAN untuk terhubung ke database.
  4. Membuat Database CKAN
    Setelah user berhasil dibuat, buat database baru menggunakan perintah berikut:
    createdb -O ckan_default ckan_default
    Keterangan:
    Database ckan_default akan digunakan untuk menyimpan seluruh data yang dikelola oleh CKAN.
  5. Keluar dari User PostgreSQL
    Setelah proses pembuatan user dan database selesai, keluar dari akun postgres.
    exit
    Keterangan:
    Database PostgreSQL kini telah siap digunakan untuk proses instalasi CKAN berikutnya.

Instalasi Apache Solr

  1. Menginstal Apache Solr
    Apache Solr digunakan sebagai mesin pencarian yang memungkinkan CKAN melakukan proses indeks dan pencarian dataset dengan cepat.

    Unduh Apache Solr menggunakan perintah berikut:

    wget https://archive.apache.org/dist/solr/solr/9.9.0/solr-9.9.0.tgz

    Ekstrak file yang telah diunduh:

    tar xzf solr-9.9.0.tgz

    Selanjutnya, instal Solr sebagai service menggunakan perintah berikut:

    sudo bash solr-9.9.0/bin/install_solr_service.sh solr-9.9.0.tgz
    Keterangan:
    Apache Solr akan dipasang sebagai service systemd sehingga dapat berjalan secara otomatis setiap kali server dinyalakan. Solr nantinya digunakan oleh CKAN untuk melakukan proses pengindeksan dan pencarian dataset secara efisien.

Membuat Virtual Environment Python

  1. Membuat Direktori Instalasi CKAN
    Buat direktori yang akan digunakan sebagai lokasi instalasi CKAN.
    sudo mkdir -p /usr/lib/ckan/default

    Masuk ke direktori tersebut:

    cd /usr/lib/ckan/default
    Keterangan:
    Direktori ini akan digunakan untuk menyimpan virtual environment dan file aplikasi CKAN.
  2. Membuat Virtual Environment
    Buat virtual environment Python menggunakan perintah berikut:
    python3 -m venv venv

    Aktifkan virtual environment:

    source venv/bin/activate
    Keterangan:
    Virtual environment digunakan untuk memisahkan dependensi CKAN dari package Python yang terdapat pada sistem sehingga lebih mudah dikelola.
  3. Memperbarui Pip dan Setuptools
    Setelah virtual environment aktif, perbarui Pip dan package pendukung lainnya.
    pip install --upgrade pip setuptools wheel
    Keterangan:
    Memperbarui Pip, Setuptools, dan Wheel membantu memastikan proses instalasi package CKAN dapat berjalan dengan lebih lancar.

Instalasi CKAN

  1. Menginstal CKAN dari Source Code
    Setelah virtual environment aktif, unduh source code CKAN versi 2.11.5 dari repositori resmi GitHub.
    git clone -b ckan-2.11.5 https://github.com/ckan/ckan.git

    Masuk ke direktori CKAN:

    cd ckan

    Install CKAN dalam mode editable:

    pip install -e .

    Kemudian instal seluruh dependensi yang diperlukan:

    pip install -r requirements.txt
    Keterangan:
    CKAN 2.11 lebih disarankan diinstal melalui source code resmi dibandingkan menggunakan pip install ckan. Metode ini memastikan seluruh package dan dependensi Python dapat terpasang dengan baik sehingga mengurangi kemungkinan terjadinya error akibat modul yang tidak ditemukan saat menjalankan CKAN.
  2. Membuat Direktori Konfigurasi
    Buat direktori yang akan digunakan untuk menyimpan file konfigurasi CKAN.
    sudo mkdir -p /etc/ckan/default
    Keterangan:
    Direktori ini digunakan untuk menyimpan file konfigurasi utama CKAN yang akan digunakan ketika aplikasi dijalankan.
  3. Membuat File Konfigurasi CKAN
    Generate file konfigurasi bawaan menggunakan perintah berikut:
    ckan generate config /etc/ckan/default/ckan.ini
    Keterangan:
    File ckan.ini berisi berbagai konfigurasi penting seperti koneksi PostgreSQL, Redis, Solr, plugin CKAN, serta pengaturan aplikasi lainnya. File ini akan digunakan pada proses inisialisasi database dan saat menjalankan CKAN.

Konfigurasi Database CKAN

  1. Mengonfigurasi Koneksi Database PostgreSQL
    Edit file konfigurasi CKAN menggunakan perintah berikut:
    sudo nano /etc/ckan/default/ckan.ini

    Cari baris berikut:

    sqlalchemy.url =

    Ubah menjadi:

    sqlalchemy.url = postgresql://ckan_default:password@localhost/ckan_default

    Ganti password dengan kata sandi PostgreSQL yang telah dibuat sebelumnya.

    Keterangan:
    Parameter sqlalchemy.url digunakan oleh CKAN untuk terhubung ke database PostgreSQL. Untuk menghindari masalah parsing URL, sebaiknya hindari penggunaan karakter khusus seperti #, %, @, atau : pada kata sandi PostgreSQL.

Konfigurasi Solr

  1. Mengonfigurasi Solr
    Masih pada file /etc/ckan/default/ckan.ini, cari bagian berikut:
    solr_url =

    Ubah menjadi:

    solr_url = http://127.0.0.1:8983/solr/ckan

    Setelah selesai, simpan perubahan pada file konfigurasi.

    Keterangan:
    Parameter solr_url digunakan oleh CKAN untuk terhubung ke layanan Apache Solr yang berfungsi sebagai mesin pencarian dataset. Pastikan alamat tersebut sesuai dengan konfigurasi core Solr yang telah dibuat sebelumnya.

Memasang Schema CKAN pada Solr

  1. Mengganti Schema Solr dengan Schema Bawaan CKAN
    Masuk ke direktori source code CKAN:
    cd /usr/lib/ckan/default/ckan

    Salin file schema bawaan CKAN ke direktori konfigurasi Solr:

    sudo cp ckan/config/solr/schema.xml /var/solr/data/ckan/conf/managed-schema.xml

    Ubah kepemilikan file agar dapat diakses oleh service Solr:

    sudo chown solr:solr /var/solr/data/ckan/conf/managed-schema.xml

    Selanjutnya, restart layanan Solr:

    sudo systemctl restart solr
    Keterangan:
    Schema bawaan Apache Solr tidak sepenuhnya kompatibel dengan CKAN 2.11. Oleh karena itu, schema tersebut perlu diganti menggunakan schema yang disediakan oleh CKAN agar proses pengindeksan dan pencarian dataset dapat berjalan dengan baik.

Inisialisasi Database CKAN

  1. Menginisialisasi Database CKAN
    Aktifkan virtual environment CKAN terlebih dahulu dengan menjalankan perintah berikut:
    source /usr/lib/ckan/default/venv/bin/activate

    Selanjutnya, jalankan perintah berikut untuk membuat struktur database CKAN:

    ckan -c /etc/ckan/default/ckan.ini db init
    Keterangan:
    Perintah ini akan membuat seluruh tabel dan struktur database yang diperlukan oleh CKAN pada PostgreSQL. Jika proses selesai tanpa error, berarti database CKAN telah berhasil diinisialisasi dan siap digunakan.

Membuat User Administrator

  1. Membuat User Administrator CKAN
    Setelah database berhasil diinisialisasi, buat akun administrator menggunakan perintah berikut:
    ckan -c /etc/ckan/default/ckan.ini user add admin

    Sistem akan meminta Anda memasukkan beberapa informasi, seperti:

    • Username.
    • Password.
    • Alamat email.

    Selanjutnya, tambahkan hak administrator pada akun tersebut dengan menjalankan perintah berikut:

    ckan -c /etc/ckan/default/ckan.ini sysadmin add admin
    Keterangan:
    User admin akan memiliki hak akses penuh untuk mengelola CKAN, termasuk membuat organisasi, dataset, pengguna, serta melakukan konfigurasi melalui antarmuka web.

Mengatur URL Situs CKAN

  1. Mengonfigurasi Alamat Situs CKAN
    Edit file konfigurasi CKAN menggunakan perintah berikut:
    sudo nano /etc/ckan/default/ckan.ini

    Cari bagian berikut:

    ckan.site_url =

    Ubah menjadi:

    ckan.site_url = http://IP_SERVER:5000

    Contoh:

    ckan.site_url = http://103.151.140.83:5000
    Keterangan:
    Pengaturan ckan.site_url digunakan untuk menentukan alamat utama CKAN. Konfigurasi ini penting agar menu seperti Dashboard, Login, dan Logout tidak mengarah ke localhost, melainkan ke alamat server yang dapat diakses oleh pengguna.

Menjalankan CKAN

  1. Menginstal Gunicorn
    Aktifkan virtual environment CKAN:
    source /usr/lib/ckan/default/venv/bin/activate

    Install Gunicorn:

    pip install gunicorn

    Pastikan Gunicorn berhasil terpasang:

    which gunicorn

    Contoh output:

    /usr/lib/ckan/default/venv/bin/gunicorn
    Keterangan:
    Gunicorn berfungsi sebagai WSGI server yang digunakan untuk menjalankan aplikasi CKAN pada lingkungan produksi.
  2. Membuat Service CKAN
    Buat file service systemd:
    sudo nano /etc/systemd/system/ckan.service

    Isi dengan konfigurasi berikut:

    [Unit]
    Description=CKAN Application
    After=network.target
    
    [Service]
    User=root
    Group=root
    WorkingDirectory=/usr/lib/ckan/default/ckan
    Environment="CKAN_INI=/etc/ckan/default/ckan.ini"
    
    ExecStart=/usr/lib/ckan/default/venv/bin/gunicorn \
        --workers 4 \
        --bind 127.0.0.1:8000 \
        wsgi:application
    
    Restart=always
    RestartSec=5
    
    [Install]
    WantedBy=multi-user.target
    Keterangan:
    Service ini memungkinkan CKAN berjalan secara otomatis ketika server dinyalakan tanpa perlu menjalankannya secara manual melalui terminal.
  3. Mengaktifkan Service CKAN
    Muat ulang konfigurasi systemd:
    sudo systemctl daemon-reload

    Aktifkan service:

    sudo systemctl enable ckan
    sudo systemctl start ckan

    Periksa status service:

    sudo systemctl status ckan

    Status yang diharapkan:

    active (running)
    Keterangan:
    Status active (running) menunjukkan bahwa aplikasi CKAN telah berjalan dengan baik melalui Gunicorn.
  4. Mengonfigurasi Nginx sebagai Reverse Proxy
    Buat file konfigurasi:
    sudo nano /etc/nginx/sites-available/ckan

    Isi dengan konfigurasi berikut:

    server {
        listen 80;
        server_name IP_SERVER;
    
        client_max_body_size 100M;
    
        location / {
            proxy_pass http://127.0.0.1:8000;
    
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Real-IP $remote_addr;
        }
    }

    Ganti IP_SERVER dengan domain atau alamat IP VPS yang digunakan.

    Contoh:

    server_name 103.151.140.83;
    Keterangan:
    Nginx akan meneruskan seluruh permintaan pengguna ke Gunicorn yang berjalan pada port 8000.
  5. Mengaktifkan Konfigurasi Nginx
    sudo ln -s /etc/nginx/sites-available/ckan /etc/nginx/sites-enabled/

    Periksa konfigurasi Nginx:

    sudo nginx -t

    Restart Nginx:

    sudo systemctl restart nginx
    Keterangan:
    Apabila tidak ditemukan kesalahan konfigurasi, Nginx akan mulai melayani akses ke CKAN melalui port 80.
  6. Mengakses CKAN
    Setelah seluruh konfigurasi selesai, CKAN dapat diakses melalui:
    http://IP_SERVER

    Atau apabila menggunakan domain:

    http://data.domainanda.com

    Output:

    Keterangan:
    Anda tidak perlu lagi menjalankan perintah ckan run --host 0.0.0.0 karena CKAN telah dijalankan sebagai service systemd menggunakan Gunicorn dan diteruskan oleh Nginx sebagai reverse proxy.

Kesimpulan

CKAN merupakan salah satu platform open source terbaik untuk membangun portal open data. Dengan dukungan pengelolaan dataset, mesin pencarian yang andal, serta API yang fleksibel, CKAN banyak digunakan oleh instansi pemerintah, perguruan tinggi, maupun organisasi yang ingin menyediakan data secara terbuka dan terstruktur.

Melalui panduan ini, Anda telah mempelajari cara menginstal CKAN di Ubuntu 22.04, mulai dari pemasangan PostgreSQL, Redis, dan Apache Solr, hingga menjalankan aplikasi menggunakan Gunicorn dan Nginx sebagai reverse proxy. Setelah CKAN berhasil berjalan, Anda dapat melanjutkan konfigurasi HTTPS, menambahkan organisasi dan dataset, serta melakukan optimasi agar portal open data dapat digunakan secara optimal pada lingkungan produksi.


Artikel Lain

WhatsApp Kami

Support : +6282138153600

Finance : +6285191239466