31 Mayıs 2013 Cuma

DSpace’de Handle Kullanımı ve Handle Sunucu Kurulumu

Özet
Bu paylaşım, DSpace Kurumsal Açık Erişim Sisteminde Handle (kulp) kullanımı hakkında bilgi vermek ve Dspace'de Handle uygulama adımlarını paylaşmak üzere hazırlanmıştır. Paylaşımda Handle öneki (prefix) alımı için CNRI’ye kayıt, handle sucunu kurulumundan sonra CNRI'ye gönderilecek dosyaların paket olarak hazırlanması, sistemde mevcut olan eski kayıtların handle öneklerinin değiştirilmesi konuları işlenmiştir.

Handle (Kulp)
Handle, ortak kayıt servisi CNRI tarafından verilen tekil kaynak erişim adresidir. Yani kurumsal arşiv sistemine girilen dokümanların DOI numarası benzeri tekil erişim adresiyle uluslararası düzeyde temsil edilmesini sağlar.  Örneğin: http://hdl.handle.net/11376/100 veya  http://hdl.handle.net/20.500.11782/80 şeklindeki bir Handle'da “hdl.handle.net” kayıt servisini, “11376” veya 20.500.11782  bir kurumsal arşive verilen handle önekini (yayıncı ön numarası benzeri bir numarayı), “100”  ise DSpace kurumsal arşiv sisteminin bir öğeye atadığı yerel belirleyiciyi (kayıt sıra numarasını) ifade eder. Örneğin:

Kayıt Servisi        Handle Ön Eki                Yerel Belirleyici      
      http://hdl.handle.net    11376 100
      http://hdl.handle.net    20.500.11782 100

UYARI: 2015 sonuna kadar verilen handle önekleri 11376 şeklindeydi. 2016'dan itibaren 20.500.11376 biçimine dönüştürüldü. Size gelen faturadaki prefix (önek) ne ise konfigürasyon dosyalarında onu kullanmalısınız. 

DSpace’in varsayılan kurulumunda “…/dspace/config/” yolu altındaki “dspace.cfg” dosyasında Handle öneki varsayılan olarak 123456789 şeklinde düzenlenmiştir. DSpace, girilen kayıtlar için http://hdl.handle.net/123456789/100 biçiminde handle oluşturur. Bu adresteki 123456789 şeklindeki handle gerçek değildir ve Global Handle Sistemi bu önekle çalışmaz.

Handle sistemi sunuculardan TCP isteklerini alır. Yapılan bir isteğe karşılık, yerel Handle içeriği sağlamaz ise CNRI’nin sağladığı Handle adresi global sunucu veya hizmetlere yönlendirerek sorunu çözümler.

DSpace’de Handle Sisteminin kullanımı için aşağıdaki süreç izlenmelidir:

1. CNRI Üyeliği ve Ödeme
CNRI’nin Handle Sistemini kullanmak için öncelikle CNRI'ye üye olunarak Handle öneki (prefix) alınmalıdır. Bunun için yapılması gereken;

Confirm your handle prefix request
Your handle prefix request has been received. Please click on the link provided at the end of this email to confirm this request. If you do not click on the link, no further action will be taken by the HNR Administrator.

Send questions to the HNR Administrator at hdladmin@cnri.reston.va.us.

Thank You.
Jane Euler

https://handle.net/PrefixRegistration/Confirmation/t0H57ekNKECqDsJJu3OMyOwdsjw9vK1NuW-twkzoYI_k7mp3SdF8Yg7I9ixAQOl
  • Mesaj içindeki doğrulama kodunu tıklayınca aşağıdaki şekilde bir çıktı alacaksınız.
Confirmed Prefix Registration
Thank you for requesting a prefix. You will receive an email from the HNR Administrator within the next 24 hours which will also include the payment instructions.

Contact the HNR Administrator at hdladmin@cnri.reston.va.us for assistance.
  • CNRI'dan 24 saat içinde ödeme ile ilgili bir e-posta ve ekinde fatura olacaktır. 
  • Fatura varsayılan olarak 1 yıllık gönderilir. hdladmin@cnri.reston.va.us adresine aşağıdaki gibi basit bir  mesaj atarak 5 yıllık alım yapmak istediğinizi ve faturanızın bu şekilde düzenlenerek gönderilmesini isteyiniz. 
Dear Sir/Madam,

We want 5 (five) years of membership for Handle. Please prepare our invoce for 5 years of membership.

Best Regards,
  • 5 yıllık süreli almanızı tavsiye ederim. Handle alım/üyelik bedeli, 50 USD'si bir kereye mahsus CNRI üyelik kaydı olmak üzere toplam 300 USD'dir. Böyele bir fatura aşağıdaki gibidir:   
  • Faturanın ödemesini aşağıdaki hesaba havale yolu ile yapınız ve ödemenin açıklamasında Fatura numaranızı belirtmeyi unutmayınız.
  • Develet üniversitelerinden Handle bedelini 22/b'den  3/5/2/3'ten hatta 260/99'dan ödeyen de var. Handle'ın veri tabanı olmadığını, bilgiye erişim için aracılık eden bir sistem olduğunu muhasebenize iletirseniz en uygun kalemden ödeme yapacaklardır.
Wire Payments: Please use these instructions to wire funds to Access National Bank via the
international SWIFT Network.
FIELD 56A INTERMEDIARY INSTITUTION:
Pacific Coast Bankers' Bank
San Francisco, CA 94104
SWIFT CODE: PCBBUS66
  • Ödemenin CNRI'ye ulaşmasından sonra ön ekiniz aktif hale gelecektir.
2. Firewall Üzerinde Açılması Gereken Portlar
Handle sunucu 8000 ve 2641 portlarını kullanır. Bu portları kurumun firewal (güvenlik duvarı) üzerinde TCP ve UDP olarak açtırınız.

3. DSpace Konfigürasyon Dosyasında Düzenleme

sudo nano /dspace/config/dspace.cfg
komutuyla /dspace/config yolu altındaki dspace.cfg dosyasını açınız. Dosya içinde "Handle Settings" başlığını bulunuz ve aşağıdaki satırları örneğe uygun olarak düzenleyin:

##### Handle settings ######

handle.canonical.prefix = http://hdl.handle.net/

# CNRI Handle prefix
handle.prefix = 20.500.11376


Uyarı:  2016 öncesi alınan önekler 11376 şeklinde olduğundan burada aşağıdaki gibi tanımlanır.
handle.prefix = 11376

# Directory for installing Handle server files
handle.dir = ${dspace.dir}/handle-server


Uyarı: 11376 Doğuş Üniversitesine ait ön ektir. CNRI'den kurumunuz için aldığınız handle önekini yazmalısınız!

sudo /etc/init.d/tomcat7 stop
sudo /etc/init.d/tomcat7 start
komutlarıyla Tomcat sunucuyu yeniden başlatınız

4. Handle Sunucu Kurulumu ve sitebndl.zip Dosyasının Oluşturulması
Uyarı: Sunucunun IP adresini tespit ediniz. Eğer sunucunuz hem iç hem dış IP adresine sahipse bunları not ediniz. Kurulumu dış IP adresi ile yapmanız gerektiğini unutmayın.

sudo /dspace/bin/dspace make-handle-config /dspace/handle-server
komutuyla Handle sunucu kurulumunu başlatın:

Kurulum sorularının Türkçesi ve cevapları için tıklayınız.

5. config.dtc Dosyasının Düzenlenmesi
sudo nano /dspace/handle-server/config.dct
komutu ile config.dct dosyasını açın.
config.dct dosyasının içeriğini "5.1 Örnek config.dct dosyası" başlığı altındaki örneğe göre düzenleyiniz:
Uyarı:
  • config.dct dosyası içinde YOUR_NAMING_AUTHORITY yerine CNRI'dan almış olduğunuz öneki (Ör.: 11376 veya 20.500.11782) yazmalısınız.
  • Eğer sunucunuz iç IP ile hizmet veriyorsa bind_address satırlarında  iç IP adresinizi yazın. 
5.1. Örnek config.dtc Dosyası İçeriği

{
"hdl_http_config" = {
"bind_address" = "172.16.1.47"
"num_threads" = "15"
"bind_port" = "8000"
"backlog" = "5"
"log_accesses" = "no"
}

"server_type" = "server"
"hdl_udp_config" = {
"bind_address" = "172.16.1.47"
"num_threads" = "15"
"bind_port" = "2641"
"log_accesses" = "no"
}

"hdl_tcp_config" = {
"bind_address" = "172.16.1.47"
"num_threads" = "15"
"bind_port" = "2641"
"backlog" = "5"
"log_accesses" = "no"
}

"log_save_config" = {
"log_save_weekday" = "Sunday"
"log_save_time" = "00:00:00"
"log_save_directory" = "/dspace/handle-server"
"log_save_interval" = "Weekly"
}


"no_udp_resolution" = "n"
"interfaces" = (
"hdl_udp"
"hdl_tcp"
"hdl_http"
)

"server_config" = {
"storage_type" = "CUSTOM"
"storage_class" = "org.dspace.handle.HandlePlugin"
"server_admins" = (
"300:0.NA/
20.500.11376"
)


"replication_admins" = (
"300:0.NA/20.500.11376"
)

"max_session_time" = "86400000"
"this_server_id" = "1"
"max_auth_time" = "60000"
"backup_admins" = (
"300:0.NA/20.500.11376"
)

"case_sensitive" = "no"
}

}
 

    6. Handle Sunucunun Başlatılması
    sudo /dspace/bin/start-handle-server


    komutuyla handle sunucuyu başlatınız. 

    netstat -tulpn | grep :2641
    netstat -tulpn | grep :8000

    komutlarıyla handle sunucunun 2641 ve 8000 portlarının dinlediğinden emin olunuz. Komutlardan sonra aşağıdaki gibi çıktı almalısınız.


    8000 portunun tarayıcı üzerinden yanıt verdiğinden emin olunuz. Örneğin: http://openaccess.dogus.edu.tr:8000/ adresine tıklayınca aşağıdaki gibi çıktı almalısınız.



    6.1. Handle Sunucunun Otomatik Olarak Başlatılması:
    Sunucunun yeniden başlatılması durumunda handle sunucunun otomatik olarak başlaması için aşağıdaki adımları izleyiniz:

    sudo nano /etc/rc.local
    komutunu çalıştırınız. "exit 0" etiketinin üstüne handle başlatma komutunu aşağıdaki örneğe uygun düzenleyin.

    # By default this script does nothing.
    /dspace/bin/start-handle-server
    exit 0

    dosyayı kaydedin çıkın.

    7. Eski Kayıtlara Atanan Öneklerin Değşitirilmesi
    Eğer handle almadan önce DSpace’e kayıt girdiyseniz, kurulumda varsayılan olarak atanan 123456789 şeklindeki handle öneklerini CNRI’den aldığınız gerçek handle öneki ile değiştirmeniz gerekecektir.

    sudo /dspace/bin/dspace update-handle-prefix 123456789 11376

    komutuyla 123456789 şeklindeki öneki CNRI'dan aldığınız ön ek ile değiştiriniz.


    sudo /dspace/bin/start-handle-server
    Komutyla Handle Sunucuyu yeniden başlatınız.

    sudo /etc/init.d/tomcat7 stop
    sudo /etc/init.d/tomcat7 start
    komutlarıyla Tomcat sunucuyu yeniden başlatınız
    sudo /dspace/bin/dspace index-discovery -b
    komutuyla indeks dosyasını yeniden oluşturunuz.

    8. sitebndl.zip Dosyasının Güncellenmesi ve CNRI'ya Gönderilmesi

    CNRI’ye gönderilecek sitebndl.zip dosyası kurulumla birlikte /dspace/handle-server/ yolu altında konumlanacaktır.
    • /dspace/handle-server/ yolu altındaki sitebndl.zip dosyasını bir kopyasını masaüstüne ya da uygun bir dizine kopyalayın.
    • Klasörü unzip sitebndl.zip komutuyla extract edin.
    • Açtığınız klasör içindeki repl_admin dosyasının içeriğini aşağıdaki gibi düzenleyin
    300:0.NA/YOUR_NAMING_AUTHORITY 
    yerine
    300:0.NA/20.500.11376
    • contactdata.dct dosyasının içeriğini kontrol edin ve aşağıdaki örneğe uygun olduğundan emin olun.
    {
    "contact_email" = "openaccess@dogus.edu.tr"
    "org_name" = "Dogus University"
    "contact_name" = "Sonmez CELIK"
    }


    sudo zip -r sitebndl.zip sitebndl/ komutu ile sitebndl klasörünü zip dosyası haline getirin.
    adresine tıklayarak  CNRI kayıt sayfasının 3. Adıma gidiniz ve aşağıdakileri yapınız:
    • Kulandığınız kurumsal arşiv sisteminin adına tıklayınız
    • Aşağıda örneği verilen formu doldurunuz
    • Gözat... tuşu aracılığı ile sitebndl.zip" dosyasının yolunu gösterin.
    • Form altındaki Request Prefix tuşuna basın.

    Form bilgilerinizin altında şu şekilde bir çıktı alacaksınız:
    You will receive an email from the handle administrator within the next 48 hours regarding your prefix assignment. Questions should be sent to hdladmin@cnri.reston.va.us. Thanks again for your interest in CNRI's Handle System technology.

    9. CNRI'den Gelecek Mesajı Bekleyiniz
    CNRI yetkilisinden önekinizin aktif edildiğine dair aşağıdaki içerikte bir mesaj alacaksınız. Saat farkından dolayı mesaj ertesi gün gelebilir.



    10. CNRI Kaydının Kontrol Edilmesi
    • http://hdl.handle.net/ adresine gidiniz.
    • Arama kutusuna handle önekinizi yazınız. Ör: 11376 (eski biçim) 20.500.11782 (yeni biçim).
    • Submit tuşuna basınız.
    • Aşağıdaki gibi bir çıktı alacaksınız. Eğer bu çıktıyı alıyorsanız handle kaydınız tamamlanmış demektir.



    11. Handle Adresi Nasıl Çalışır?
    Kayıt detaylarında http://hdl.handle.net/11376/2248 şeklinde yer alan adreslere tıkladığınızda arşivinizdeki ilgili kayıt görüntüleniyorsa, yani o kayda ulaşılıyorsa sisteminiz sorunsuz çalışıyor demektir.

    16 yorum:

    1. Merhaba,
      Handle(Kulp) sunucusunu kurduktan sonra "Error - Resolution Error" sorunu yaşıyorsanız bu çözümü uygulayabilirsiniz.
      İlk önce (2641) portunun hem UDP hemde TCP için açık olduğundan emin olmalısınız.
      Daha sonra açık olsa bile tomcat bu portları meşgul edebiliyor o yüzden Handle Server bu portları kullanamadığı için, Handle servera ulaşmakta sorun yaşayabilirsiniz. Bunun için yapmanız gereken, Tomcati çalıştırdıktan sonra:

      lsof -i:2641

      diyerek ilk önce bu portları kullanan işlemi görüyoruz ve

      kill "PID number"

      diyerek bu portları boşaltıyoruz. Daha sonra handle serverı çalıştırıyoruz.

      YanıtlaSil
    2. Sönmez bey,
      Kulp kelimesi yerine envanter kelimesini kullansak..
      Selamlar
      Osman KUTLU Atılım Üniversitesi

      YanıtlaSil
      Yanıtlar
      1. Osman Bey,
        Ben handle kelimesi için tutamaç kullanmıştım. Yaşar Hocam (Tonta), Kulp kelimesini önerdi. Hocamın engin tecrübesine riayet ederek bu şekilde kullandım.

        Sil
    3. Kulp sunucu gerekliliğini tam olarak algılayamadım. dspace arşivimizi kulp sunucu yaptığımızda CNRI kurumunun bir arşivi gibi mi olacak. İlk etapta bunu konfigüre etmemiz zorunlu mudur? Kulp sunucu olmadan önce kurumuzdan yasal bir onay alınması gerekir mi?

      Elmas DOĞAN
      Erciyes Üniversitesi

      YanıtlaSil
      Yanıtlar
      1. Elmas hanım,

        Hayrı handle alırsanız arşiv adresiniz değişse bile dokümanlarınıza alternatif bir erişim adresi olacak. İlk etapta konfigüre etmeniz zorunlu değil. Ne zaman isterseniz o zaman yaparsınız.

        Her işte olduğu gibi handle alımı için de kurumunuz içinde bir onay süreci olacaktır. Handle almak isteğe bağlı.

        Sil
    4. Merhaba Sönmez bey,
      terminale bunu yazınca "dspace@dspace:/dspace/bin$ "
      böyle bir klasör bulunamadı diyor

      YanıtlaSil
    5. Merhaba Sönmez bey,
      1. komut başlangıcıyla, handle-sever girmişiz, ancak komut handle-server.
      bu komuttaki "r" harfinin bulundurulmamasının sebebi nedir? Eğer yanlışlıksa yazılmışsa düzeltebilir misiniz?

      YanıtlaSil
      Yanıtlar
      1. Osman bey,

        Tipaj hatası. Maalesef on parmak Q klavye yazmanın cilveleri. :) Uyarı için teşekkür ederim.

        Sil
    6. Bu yorum bir blog yöneticisi tarafından silindi.

      YanıtlaSil
    7. Sönmez bey merhaba,
      Handle için 123456789 yerine ege tanımını dspace/config/dspace.cfg dosyasından değiştirdim. Ancak eski kayıtları güncellemek için verdiğiniz komutu bulamıyor..
      dspace/bin klasöründe update-handle-prefix isminde bir dosya yok, bunu nereden oluşturuyoruz acaba?

      YanıtlaSil
    8. Komut değişmiş olabilir. Ya 4.x dokümanından yeni komutu bulup yapın ya da kayıt sayınız fazla değilse kayıtları tek tek edit ederek manuel yapın.

      YanıtlaSil
    9. Cihat bey,

      Paylaşımı güncelledim. Test ettim komut çalışıyor.

      YanıtlaSil
    10. Bu yorum yazar tarafından silindi.

      YanıtlaSil
    11. Sinop Üniveristesi'nin handle-server log dosyasındaki

      EET" 75 class net.handle.server.HdlHttpInterface: Error handling request: java.net.SocketException: Socket closed

      hatasına çözüm olarak:

      1- Kurulumu yeniden yapıldı
      2- handle-srever klasörüne 777 ile yazma-okuma yetkisi verildi.
      3- dspace.cfg'de "dspace.baseUrl" satırı dspace.baseUrl = http://dspacedemo.dogus.edu.tr:8080 örneğine uygun olarak düzenledi.

      Üçüncü madde kurulum sırasında atlanmış. Sorunun 1 veya 2'nci maddeden biri ya da her ikisiyle ilgili olduğu anlaşılıyor.

      YanıtlaSil
    12. Sönmez Bey merhabalar,
      düzenlemiş olduğunuz dokümanlardan her defasında yararlanıyorum. Paylaşımlarınız için teşekkür ederim.

      Fatih ÇETİNKAYA from 11543 :)))

      YanıtlaSil