Tableau Server Bakım

    Samet İlhan

    Tableau Server kurdunuz, kullanıyorsunuz, ama olabilecek bazı aksiliklere karşın önlemlerde almanız gerekiyor. Karşınıza çıktığında herşey için çok geç olmadan…

    Geri dönmek istiyorsunuz ama bunu yapabilmek için bir yedeğinizin olması gerekiyor. Tabi bu yedeğin düzenli alınması geri döneceğiniz noktanın gerçekten de istediğiniz nokta olmasını sağlar.

    Kullanıcılar çoğunlukla en iyi yol bildiğim yol mantığıyla sunucu yedeği alarak yollarına devam ediyorlar. Yanlış birşey de sayılmaz. Sonuçta düzenli alıyorlar ve istedikleri zamana geri dönebiliyorlar. Ama eksik birşey var. Yaptığınız işlemlerin tutulduğu log dosyaları şişiyor ve bir süre sonra ciddi boyutlara gelebiliyor. Hatta diskin dolması sonucu yer kalmadığı için extractları güncelleyemez duruma bile gelebilirsiniz.

    Sunucu yedeği bir çözüm olsa bile yine de Tableau’nun kendi yedek alma seçeneğini de kullanmak isteyebilirsiniz. O zaman konumuza yedeğin nasıl alınacağı ile başlayabiliriz.

    Yedek Alma

    Tableau Server 2018.2 ile birlikte tsm arayüzüne sahip oldu. Ayarların bir bölümünü de bu arayüz sayesinde kolay bir şekilde yapabiliyorsunuz. Yedek alma bu arayüzde olmayan konulardan biri. Önceden tabadmin ile kurduğumuz yedek alma operasyonunu artık tsm ile kuruyoruz.

    Yedek alma ve yedeği içeri aktarma işleri için backup klasörünün içerisinde olmanız gerekiyor.

    cd C:\ProgramData\Tableau\Tableau Server\data\tabsvc\files\backups\

    Klasöre girdikten sonra tsm maintenance komutu ile yedeğimizi alabiliriz.

    tsm maintenance -f yedek.tsbak

    Bu komut bir önceki komut girdiğimiz klasörün içerisine yedek isminde bir dosya oluşturur. Aldığınız yedeği farklı bir yere kaydedemezsiniz. Daha sonrasında bunu kendiniz taşıyabilirsiniz.

    tsbak Tableau Server yedek dosyasının uzantısıdır. Restore yapmak istediğinizde bu dosya üzerinden yapmanız gerekir. Yedek alma işlemi bu kadar ama dilerseniz bazı parametrelerle daha tanımlayıcı olabilirsiniz.

    • -d : tarih bilgisini ekler. Bu şekilde hangi dosyanın hangi güne ait olduğunu anlayabilirsiniz.
    • -i : yedek dosyasına bir açıklama bilgisi ekler.
    • –skip-compression : yedek dosyası temelinde sıkıştırılmış bir dökümandır. Dilerseniz bu parametre ile sıkıştırma işlemini geçebilirsiniz. Zaman konusunda tasarruf yapmış olursunuz ama diskte biraz daha fazla yer kaplar.
    • –request-timeout : Dilediğiniz kadar timeout verip, bu süre sonunda hala bitmemişse işlemi kesmenizi sağlar. Varsayılan olarak 1800 (30 dakikadır)

    Bu noktada önemli bir konuya değinmek lazım. Aynı makinada restore yapacaksanız eğer bu yedek yeterlidir. Ama farklı bir makinaya geçecekseniz bu yedek dosyası yeterli olmayacaktır. Tableau ayarlar için ayrı bir yedek dosyası oluşturur. SMTP, alarm ayaları ve süreç ayarları bu dosyanın içerisinde bulunur. tsm settings export komutu ile bu ayar dosyasını ayrıca alabilirsiniz.

    Temizleme

    Tableau yaptığınız işlemlerin loglarını ProgramData altındaki klasörlerinde barındırır. Kullanım durumuna ve aldığınız hatalara göre bu klasör oldukça büyük boyutlara ulaşabilir. Bu tabii ki 1 günde olmaz ama olur.

    Bununla birlikte Tableau Server arkada bir PostgreSQL veritabanı kurarak, içerik, kullanıcı ve yapılan hareket dökümlerini de bu veritabanı üzerinde bulundurur. Özellikle de http_request tablosu yapılan her işlemi barındırdığı için büyüyebilecek bir tablodur.

    Bu temizleme işlemlerini cleanup komutu ile yapabilirsiniz. Bu komutu istediğiniz dizinden kullanabilirsiniz.

    tsm maintenance cleanup

    Bu komut http_request tablosundaki 7 günden eski verileri, 1 günden eski log dosyalarının tamamını, temp klasörünü ve önbelleği temizler. Tabi bazı parametreleri kullanarak bu değişiklikleri sınırlayabilirsiniz.

    • -a veya –all : bütün temizlik işlemlerini yapar.
    • –http-requests-table-retention : tablo içerisinden kaç günden eski verilerin temizleneceğini bu komutla belirleyebilirsiniz
    • -l veya –log-files : Log dosyalarını temizler.
    • –log-files-retention : kaç günden eski log dosyalarını temizleyeceğinizi bu komutla belirleyebilirsiniz.
    • -q veya –http-requests-table : http_requests tabllosunu temizler.
    • –request-timeout : işlem bitmezse kesmenin ne kadar sürede olacağını belirler. Varsayılan 1800 (30 dakika)
    • -r ve –redis-cache : önbelleği temizler
    • -t veya –temp-files : temp klasörünü temizler.
    • -v veya –verbose : nelerin temizlendiğini listeler.

    Komutları kullanarak hangilerini temizlemek istediğinizi seçebilirsiniz. Bu şekilde diğerlerine dokunmadan temizlik işlemlerini yapabilirsiniz. Mesela daha sonrasında analiz yapabilmek için http_requests tablosuna dokunmadan temizlik yapmak istiyorsanız alttaki komutu kullanabilirsiniz.

    tsm maintenance cleanup -t -l -r

    Yedeğe Geri Dönme

    Gün geldi bir yedek dosyanıza dönmek istiyorsunuz. Yeni bir makinaya geçmişte olabilirsiniz, hata sonucu veya farklı bir nedenle eski bir güne geri dönmeyi de istiyor olabilirsiniz.

    Yine backup komutumuzu çalıştırdığımız klasöre gidiyoruz ve burada restore komutumuzu çalıştırıyoruz.

    cd C:\ProgramData\Tableau\Tableau Server\data\tabsvc\files\backups\
    tsm maintenance restore -r -f yedek.tsbak

    Otomatik Bakım

    Bütün bunların ardından düzenli yedek alma ve temizleme işlemlerini yapmak için bir bat dosyası oluşturup windows görev zamanlayıcısına eklemeniz yeterli. Örnek kod aşağıdaki gibi olabilir.

    cd C:\ProgramData\Tableau\Tableau Server\data\tabsvc\files\backups\
    tsm maintenance backup -d -f yedek.tsbak
    move .\* c:\TableauYedek\
    tsm maintenance cleanup -t -l -r

    Leave a comment

    Your email address will not be published.