【架構師專欄】Day30 – 總結! (4)

在已經建立好 Elastic Beanstalk 的狀況之下,只要利用 AWS CodePipeline就可以將 CodeCommit、S3、GitHub 中的程式碼部署進 Elastic Beanstalk,且完全 自動化 。簡單整合就可以讓開發者脫離FTP更新的困境,對於未來還可以結合 ECS…

【架構師專欄】Day29 – 總結! (3)

Elastic Beanstalk 的 調整 重要的地方在於以下幾點:1.log的存放:往cloudwatch與S3。2.data的存放:關鍵是不要存local。3.擴展到底多少才夠:看監控的數值來一次又一次的調整。4.告警的設定:附載過高要說啊….

【架構師專欄】Day28 – 總結! (2)

今日的主題是 Elastic Beanstalk 的 建立 ,快速利用15分鐘的影片來跟大家複習Elastic Beanstalk建立有哪些要注意的地方,以及哪些地方可以快速省略帶過,有些可能是看文件速度比較慢,所以使用影片帶大家最做一次可以快上許多。

【架構師專欄】Day27 – 總結(1)

與其說是總結倒不如說是把整個流程快速的串過一遍,就像 Kubernetes 之餘 container,Elastic Beanstalk 對於 EC2 也是相同的概念,他是一個很棒的自動化部署環境,只是跟 Kubernetes 一樣他需要很多的時間來去了解與熟悉,好險他是基於比較多人懂的 EC2…

【架構師專欄】Day26 – AWS Devops(9)

第四步 Add deploy stage,這邊可以看到他可以部署到的地方有不少,我通常來說都是選擇 Elastic Beanstalk,如 AWS CodeDeploy 也是蠻常見的,因為他很常用來設置在EC2或者是混合雲上,如果是對 Amazon Elastic Container Service…

【架構師專欄】Day25 – AWS Devops(8)

在建立 AWS Codecommit 之後,只需要使用 AWS Codepipeline 就可以快速將服務串接起來,一樣回到新版的畫面,點選「Create pipeline」即可開始建立,第一步只需要填入 Pipeline name 就可以直接點選 Next 進到下一步…

【架構師專欄】Day24 – AWS Devops(7)

AWS Codecommit 操作方式,這個如果要說篇幅實在有點長,建議可以參考此連結的 GIT 教學[Git官方教學],如果讀完了 GIT 官方教學代表你對 GIT 操作有一定程度的瞭解了,那就可以來看 [AWS Codecommit官方的介紹文件]連線方式可以參考上篇文章的位置。

【架構師專欄】Day23 – AWS Devops(6)

首先就來看 CodeCommit 整個的建置過程,點選 Create repository,填寫Repository name後就可以點選Create建立專屬的Git庫,這樣就建立完成了,這時候就可以看到要如何連結的方式,建議都是以SSH為主。

【架構師專欄】Day22 – AWS DevOps(5)

X-Ray 這個服務在AWS中很少被提起,也可能是因為這是個很少人提到的服務,這個產品比較是偏向於開發者問題排除的工具與IT對於效能上的監控,但由於支援的程式碼種類較少,只有Node.js、Java、.NET導致目前適用的族群較小,但是如果您剛好是這三個語言的族群,蠻適合來用用的…

【架構師專欄】Day21 – AWS DevOps(4)

CodeBuild 這服務簡單來說就是幫你測試程式碼是否可以正常的運行,如果以 AWS 內服務來結合的話,可以直接結合在 CodePipeline 的流程之中,原先是CodeCommit -> CodePipeline -> CodeDeploy -> 目標主機中,新增 CodeBuild 後測試的狀況…

【架構師專欄】Day20 – AWS DevOps(3)

AWS Devops 中有個角色不可或缺但是如果是用 Elastic Beanstalk,基本上一定會被忽略的服務 AWS CodeDeploy , CodeDeploy 收到程式碼後協助去將程式碼塞進主機,但是因為Elastic Beanstalk已經是內建了所以會沒有機會設定這些東西…

【架構師專欄】Day19 – AWS DevOps(2)

Devops 就不得不談到 git,git 是 Devops 的起點,AWS 也有提供 git 相關的服務 AWS CodeCommit。他是AWS上面一個蠻實在的服務,小量使用您可以不用花到費用就可以有私人git的服務,而不像是GitHub如果不付錢就只有把程式碼公開一條路…

【架構師專欄】Day18 – AWS DevOps(1)

以生產作業來說整個流程就是生產(產生程式碼) -> 測試(測試程式碼是否合乎規格與需求) -> 正式組裝(Deploy) -> 出產(服務運作)如果把它全講可能又是一年的鐵人賽了,基本上介紹必要的東西,做最基礎的 DevOps 這才是跨入這領域最重要的一步。

【架構師專欄】Day17 – Elastic Beanstalk 操作說明(14)

今天主要來說 Events 與 Tags,並來為 Elastic Beanstalk 做個總結。Events這邊是記錄各種 Elastic Beanstalk 有狀態變動時的紀錄,比如現在出現嚴重的 4XX,新的 Code 部署失敗等等的問題,是用來最快速的問題查修之用。

【架構師專欄】Day16 – Elastic Beanstalk 操作說明(13)

今天主要來說 Alarms 與 Managed Updates。Alarms這個功能其實就是設定參數來發出告警訊息,但是因為 Elastic Beanstalk 是集合式服務所以在設定上是需要集體的設定,個別的主機設定上設定可能因為主機的汰換所以可能間控告警失效,如果要設定告警基本上還是在這邊設定會是比較好的。

【架構師專欄】Day15 – Elastic Beanstalk 操作說明(12)

今天主要來說 Health 與 Monitoring, Health 主要是來顯示主機狀態,但是如果部署出問題他會是一個很關鍵的功能。因為可以從這邊得知道部署失敗的主機的狀況以利排除問題,這邊遇到的問題其實蠻多元的,通常都是客製化的YAML寫錯,這時候就可以利用這功能快速排除問題。

【架構師專欄】Day14 – Elastic Beanstalk 操作說明(11)

Configuration 這個也差不多說完了,接下來維運的關鍵功能 Logs 。這個功能可以將現有的主機的 log 撈出讓您下載,這是一個很棒的功能,可以讓您快速得到您的訪問紀錄,如果您有設定生命週期或者說你有自動擴展跟縮小過,會發現漏掉很多log…

【架構師專欄】Day12 – Elastic Beanstalk 操作說明(9)

Monitoring 顧名思義是監控,但是這個設定在傳統上是頗麻煩的,如果是 Elastic Beanstalk 要監控的話,其實較為簡單,點入 Monitoring 之後可見下圖的畫面,這邊看以多加選擇來監控您所有主機的狀態,在監控上除了記憶體之外都監控的到…

【架構師專欄】Day11 – Elastic Beanstalk 操作說明(8)

Software這個欄位關係到您效能與log服務,所以他是很重要的,Container Options 這個不多說,因為會您環境的語言不同而有不同的參數,主要是這邊有很多關係到LOG儲存的項目,S3 log storage 與 Instance log streaming to CloudWatch Logs。

【架構師專欄】Day08 – Elastic Beanstalk 操作說明(5)

談到了程式碼的上傳就不得不優先提到 Rolling updates and deployments (滾動環境資訊更新) ,這個功能關係到了您網站在更新時是否會影響 USER 的使用!一般來說更新程式的狀況下是需要停機的,但在雲端的環境中不需要如此…

【架構師專欄】Day07 – Elastic Beanstalk 操作說明(4)

Elastic Beanstalk 建立之後首先會遇到的第一個問題,程式碼怎樣上傳與打包。在還沒結合 DevOps 時我們可以將程式碼打包上傳從 Running Version 進入後點選壓縮的檔案進行上傳,支援ZIP或WAR。這邊有個重點是打包的方式…

【架構師專欄】Day06 – Elastic Beanstalk 操作說明(3)

有一種連結中沒提到的狀態,當刪除完成的Elastic Beanstalk它會變成淺灰色,這時候他會保留數小時並不會直接消失如上圖中左邊的方格。 Environment ID :如果您如果想更進階使用CLI來操作這是一個關鍵,反之可能完全無用。URL:這個是您佈建環境預覽用的URL您可以點選並驗證程式是否正確

【架構師專欄】Day05 – Elastic Beanstalk 操作說明(2)

Configuration presets 預設是以Free Tier eligible來設定,基本上他預設都是以最新版本為主,但如果是要比較舊的版本可以點選 [Change platform configuration] 進行修改,像是預設為 PHP7.2 但是可能需要 PHP 5.5 的狀況。

【架構師專欄】Day04 – Elastic Beanstalk 操作說明(1)

選擇region,基本上依照個專案還有網站需求的不同而選擇不同的地區,您可能在AWS官方網站上面看到還有中國的機房,如果要用中國結點的話需要在AWS另外開立中國專用帳號,而[AWS 全球基礎設施]官方的說明中有提到` AWS 網路節點 `,網路節點代表的是AWS Cloudfront(CDN)所提供服務…

【架構師專欄】Day03 – Elastic Beanstalk 架構說明(2)

以單 Elastic Beanstalk 來進行建置,通常就這個架構是偏向單純,但是在系統運作上面附載高低差很大的時候,為了資源利用率最大化通常會使用Load Balancing與auto scaling的架構運行就會是必要的,在這種狀況之下除了Load Balancing類型的選擇之外您還需要考慮到…

【架構師專欄】Day02 – Elastic Beanstalk 架構說明(1)

Elastic Beanstalk 這個服務最小的規模就是一台EC2作為Web Server,由於他是AWS代管的服務,所以內建幾項東西1. 程式版本控管2. auto scaling 的可行性3. 多種程式語言的支援4. 監控機制的整合5. devops的可行性…

【架構師專欄】Day01 我眼中的 Elastic Beanstalk

Beanstalk 可以減少大量的部屬時間,不需設計複雜的擴展機制、反覆進行擴展測試與監控,調教只需要注意一點EB的主體是 Stateless Service (無狀態伺服器),程式的任何儲存行為絕不可以存放在本機,掌握了這個原則基本上我們就可以開始進行Elastic Beanstalk 的建置。