Category: IT Technology

[K8S] On-Demand Spark Cluster on AKS

最近在研究如何在 K8S 上面跑一個 On-Demand 的 Spark Cluster 服務,基本上有兩條路可以走,一條是利用 k8s 的 Deployment 來自建 Spark Cluster,另外一條路則是利用 Kubernetes 既有與 Spark 對接的介面 (這邊是利用 spark-submit) 來實作,概念上就是直接執行一個類似下方的指令,所以想要擁有一個 On-Demand Spark Cluster on AKS 這兩種方法個有什麼優劣?

詳細內容

[開發] 建立自己的 Nexus Repository

🍋 爸在法國擔任資料工程師的時候,頻繁地使用過 Nexus 這個資源庫倉儲系統,那時候使用 Nexus 主要的原因是因為在一間大公司裡面,常常各個部門之間的專案是互相依賴的,此時為了建置 CICD 的管理機制,他們會導入 Nexus 這樣的系統來分享自己編譯好的 Jar 檔(如果是 Java, Scala 的開發環境),所有使用過 Maven 編譯的開發者應該會 nexus 也不陌生,很多著名的專案都是利用 Nexus 這樣的系統在分享他們的開源程式,例如 Apache Spark 等等,那時候🍋 爸主要是使用為主,本篇要介紹如何部署屬於自己的 Nexus Repository ? 

詳細內容

[Spark] 建置自己的 Spark History Server

進入大數據的世界,基本上脫離不了使用 Spark 這個平行運算的框架,把問題拆小之後,利用螞蟻雄兵的力量可以更容易解決問題,這也是離散數學裡面提到的 Divide and Conquer 的概念,檸檬爸之前有寫過一些介紹 Spark 的文章,也有介紹如何在 Azure 的雲端平台裡面去開啟 On Demand 的 Spark Cluster。本篇要來介紹在運行 Spark Cluster 的時候一定不要忘記要開的 Spark History Server,本篇參考 aztk 的程式碼與 Spark 3.0.1 關於 Monitoring 的網頁,介紹怎麼使用 Spark History Server 。

詳細內容
elk

[Android + ELK] java.security.cert.CertPathValidatorException: Trust anchor for certification path

本篇的背景是想要利用 ELK 建立一個接收錯誤訊息的環境,本篇分成幾個部分做一個紀錄,首先建立 ELK 的服務,然後必須要在這兩的服務上面啟動 TLS (SSL) ,接著在 Android 程式端在建置好 Logger 就可以將錯誤訊息記錄到 ELK 裡面,這次卡比較久的地方是在 java.security.cert.CertPathValidatorException: Trust anchor for certification path 這個錯誤,所以本篇以此為標題。

詳細內容

使用 Nginx 與 Redis2-Nginx-Module 代理 Redis API

本篇想要紀錄一些在研究安裝 Redis Server 時候的一些考量,有關 Redis Server 的安裝其實並不複雜,只是作者有一些特殊的環境需求,所以才需要比較複雜的系統設定,關於如何在一台 VM 上面安裝 Redis Server 可以參考 How to Install and Secure Redis on Ubuntu 18.04 ,本篇的前半部也是稍微紀錄一些常用的操作指令,後半部則是紀錄如何透過 nginx server 去跟 redis 做互動,最主要有這個需求是因為筆者使用 Azure Webapp Container 作為部署 Redis 的標的,但是在實作安裝與啟動 redis 的時候出現錯誤訊息,似乎無法直接部署。

詳細內容