跳到主要內容

發表文章

目前顯示的是有「雲端」標籤的文章

[野人獻曝] 關於建立 AWS 服務架構的工具

通常為了要達成 IaC 的目標, 架構師還是 DevOps 工程師都會用很多工具來達成目標。 而比較通用的工具大概會是 Terraform / Ansible 之類的。 不過實際狀況是因為 AWS 服務眾多反而是使用 AWS 自家工具來做還比較方便。 所以用個表格來比較: 比較表 AWS CDK / CDK For Terraform GoFormation 原生 CloudFormation JSON / YAML 優勢 較為高階,有些細節不用特別處理(例如建立 Subnet 不用自己額外寫 RouteTable 那些東西) 跟程式語言結合,使用起來比較可讀好懂 跟 Terraform 結合的話要學的東西相對比較少一點 最接近原生 JSON / YAML 寫法,但又擁有建立每個資源時很快就可以知道要丟什麼東西進去的優勢 跟程式語言結合,可以做一些靈活變化 原生寫法不解釋 如果有新東西的話通常會第一支援 弱勢 因為太高階,比較細項的修改反而變得很麻煩 老實說,我覺得好像沒什麼弱勢!大概只有部分函式不能用還有需要產生檔案比較麻煩一點 很低階,所以在寫的時候要搭配文件才能知道需要丟什麼東西進去 一不小心會寫出上千行的檔案,也會不小心改錯項目出包

[野人獻曝] 安裝 OpenResty

OpenResty 這東西基本上就是把 Lua 和 Nginx 結合在一起做成撒尿牛丸! OpenResty 這東西基本上就是結合 Lua 和 Nginx 各自的優勢, 讓你可以直接用 Lua 寫程式讓 Nginx 直接執行, 從而避免像是要用 proxy_pass 丟到 node 或是 fastcgi_pass 丟到 PHP 執行這種等等等的狀況。 安裝方式說難也不難,只是要注意一下機器上要有這些東西: make / gcc :編譯原始碼時需要的工具,有需要的話在 Ubuntu / Debian 可以下 apt-get install -y make build-essential ,這樣就會把需要的編譯工具裝好了。 PCRE:Perl 用的正規式函式庫,這東西基本上裝了會比較方便 zlib:gzip 功能相關。老實說沒想到不裝的理由。沒有的話要下 apt-get install -y zlib1g-dev 上面的準備完成後,可以直接 下載原始碼 , 用 tar 解壓縮並切換到該目錄後, 就可以直接下 ./configure && make && make install , 跑完以後 nginx 和 OpenResty 的相關元件就完成安裝了。 不過要補充一下, 上述的指令是按照預設設定安裝 nginx 及相關模組, 其實也可以根據需求在 ./configure 加相應參數來設定 nginx 主程式路徑 / log 路徑, 這部分可以下 ./configure --help 參考可用的參數。 最後補充,其實可以 參照這篇 直接安裝 OpenResty 。 但因為我在實驗所以我就直接手動編譯安裝了,顆顆!

[野人獻曝] 安裝 Jupyter

......懶得解釋 Jupyter 是什麼了,自己去 Google 吧! 如果你的機器上沒有 Python ,而且也沒有裝 pip 的話, 請自行安裝這兩樣東西!(爆死 安裝方法超簡單,一行指令搞定(Python2 時): pip install jupyter  跑完安裝步驟下個以下指令就可以啟動了: jupyter notebook 然後照他的指示開啟 http://localhost:8888/?token=xxxxxxx 就能看到 Jupyter 畫面了。 ===========全劇終===========  上面是安裝在自己機器上的狀況, 但是如果是要裝在遠端機器上的話就還有多做以下設定: 增加密碼保護:否則就能讓不相關的人進你的主機惡搞 修改設定檔:以便可以存取 增加密碼保護可以透過以下指令: jupyter notebook password 接著會要求輸入密碼,這組密碼就會是登入 Jupyter 的根據。 之所以要修改設定檔的原因是因為 Jupyter 預設只提供本機存取, 所以只接受 localhost 或是 127.0.0.1 的 domain, 為了要能夠輸入外部 IP 存取 Jupyter ,才需要改以下這個設定檔: 家目錄/.jupyter/jupyter_notebook_config.py 通常剛裝完時都沒有這個檔案,所以要先透過以下指令手動產生: jupyter notebook --generate-config 接著開啟上述的設定檔,找到以下兩個項目,移除前面的註解,並且修改成以下內容: c.NotebookApp.allow_origin = "*" c.NotebookApp.ip = "0.0.0.0"  做完以上兩個步驟並重新啟動後應該就能夠在遠端存取了。 順帶一提: 這份文件 有提到設定檔中每個項目的作用說明,建議可以看看。        

[野人獻曝] 簡介 Orchestrate.io

Orchestrate.io 是一個把 NoSQL 和搜尋服務結合在一起的 DaaS(Database as a Service)。 對於想要用搜尋服務也想同時使用 NoSQL 服務,但是資源卻不夠多的人,他的免費方案讓你可以輕鬆使用,所以我非常推薦。 使用方法很簡單,初使用者可以直接看範例 Code,瞭解最基本的用法後就可以開始寫 Code 了。

[野人獻曝] 目前正在使用的雲端服務比較

算作個筆記 兼騙發文數 的紀錄好了...... 比較項目 AWS EC2 Microsoft Azure DigitalOcean 價格 高,主機基本租金是最高的,而且還要另計流量和IO 中,其實價格勉強可以接受,而且可以開台灣發票 低,價格最低,開一台入門機一個月只要5鎂 特色 高擴充,其他周邊的支援服務超完善(發email、DNS Hosting,甚至搜尋服務都有) 看看那精美的管理介面......而且如果只是要放一個靜態網站的話也不用莫名其妙開一台主機,可以有效節省資源 價格低,而且機器都是用SSD的 問題 有錢的時候就都不是問題了,問題是沒錢啊 如果他的週邊支援服務能更多一些或許就更有價值了 系統管理菜鳥的話可能需要多花點心力調機器