之前在AWS的FB上有看到這個工具的消息
當下就實際研究了一下
安裝方式很簡單
#apt-get install python-pip
#pip install saws
#saws
實際上大概就像這樣子
不過在執行之前要先設定aws configure,不然會出現錯誤
主要的功能就是讓你省去找CLI指令的麻煩
會主動提示可能的相關指令
但是也不是完全都可以幫你填上
例如有些參數指令必須自己先下 — 才會出現讓你選擇
不過整體來說可以省去很多時間就是了
最近AWS在美國如火如荼的進行AWS re:Invent
然後今天一上班就發現AWS Cloudwatch進行了功能更新
可以製作自訂的Dashboards
操作方式滿簡單的
新增一個Dashboard 自訂名稱,如Prod-cpu
之後會看到下圖
目前我只測試第一個直接抓取預設的圖形,也就是Cloudwatch內建的監控指標
第二個我還不清楚如何使用,有查到我會上來更新
篩選完之後加入會變成這樣
這樣子一個分類就完成了
在瀏覽監控方面更接近一般的MRTG了
搭配Cloudwatch API
可以拉出來的監控指標更多了~
另外這個是可以自訂拉移的,很像桌面或是手機的Widget~
也可以放大觀察每一個圖形的細微資訊,在維運管理上更方便了~
今天發現到AWS多了一個新的服務
https://aws.amazon.com/tw/device-farm/
通常很多APP開發者會遇到很多APP在各種裝置上的問題
對大公司來說,也許有財力可以去購買很多型號來解決
可是對個人開發者來說,這種問題就很麻煩
AWS 推出這個服務我看至少可以解決很多開發者的問題
加上也是在AWS 免費方案內
http://aws.amazon.com/tw/free/
AWS的野心還真大…XD
———————————————————————————————————-
剛剛跟同事要了一份APK
測試了一下
點進去看細節
可以看到畫面,效能,還有LOG等等的
後面是依各裝置的測試結果出圖
還不錯玩,可能要APP開發者才能物盡其用
我這種兩光的就知道這東西就好XD
昨天在調整公司的網址規則時查到的一個情況
因為之前本身的工作沒有這種需求,所以自然沒有遇過
正常來說DNS的網址都是設A解析給IP
例如
www.kilait.com A 127.0.0.1
kilait.com A 127.0.0.1
但是現在公司的需求要指給ELB,而AWS ELB又是一個URL,所以只能給CNAME
(註:如果帳號是同一個,Route53 是可以用alias直接指定AWS相關服務的URL,但這裡不是同帳號)
舉例
www.kilait.com CNAME test-elb.ap-northeast-1.amazonaws.com
kilait.com CNAME test-elb.ap-northeast-1.amazonaws.com (這個無法指定CNAME)
發現問題了嗎? 答案是 kilait.com 不能指CNAME
因為他是root 網址,只能給A
這就頭痛了,因為對外入口是給ELB的URL,而不是IP
A是解不出去,不過還好有S3的靜態網址功能可以用
首先建立一個S3 Bucket 叫 kilait.com
然後如下圖設定
之後開 endpoint 的URL 看看是不是被轉給 www.kilait.com了
可以的話就到 route53改解析
Alias的地方選yes 下拉就會出現你剛剛設定的S3 endpoint
直接轉給s3幫你做靜態轉址
雖然多此一舉,但總算比直接給A解析IP好
會變成 kilait.com -> s3 -> www.kilait.com -> elb -> web
不過如果同帳號就沒這問題了
AWS Route53 可以這樣子做
kilait.com -> elb -> web
跨帳號有時候就是會這麼麻煩~
每次遇到公司的狀況就打一下當作紀錄
如何設定 ELB SSL
新增ELB那邊就不說了
直接上設定~
重點在於(9/3更新紅字部份)
80 -> 80
80->443 (這樣子設定需要由程式端轉址)
443->443 (這樣子設定是由設定端轉址)
這要看你的後端server的邏輯,因為SSL是做在前端用
user -> ELB -> SERVER
SSL 正常是應用在 user -> ELB 這段
而 ELB -> SERVER 則屬於AWS VPC內部網段應用
HTTP 80->443 (這樣子設定需要由程式端轉址)(強制加密時)
HTTPS 需要設定 443-> 443(如果不用程式判斷而用web轉址的話)(強制加密時)
SecurityGroup 則是開一個有80/443全開的設定就好
接著是SSL憑證,由於我目前作業上的憑證不是我申請的,我也還沒實際驗證過正確性
所以這一段之後有問題可能會修改
填入private key 以及SSL驗證商給你的憑證填入 Key Certificate
下方的選項預設即可
之後進入 Health Check
如果你有index.html 或 index.php 你可以這樣子設定
但通常我會直接tcp 設定ping 80
接下來選server跟設定tag就不多解釋了
重點在於SSL那邊
另外server上的SecurityGroup 要設定允許ELB的SecurityGroup連線
例如 :
ELB 允許 80/443 來源是0.0.0.0/0 ,名稱是 sg-11111
Server 允許 80/443 來源是 sg-11111,名稱是sg-11112
類似這樣子的設定,不然流量導不到後端server上
架構會變成
user -> elb(sg-11111) -> server(sg-11112)
443 80
昨天忙了一天的RDS相關設定
整理出一些心得
RDS不像是一般的資料庫設定,以MySQL來說,通常我們會去改 my.cnf
但在RDS當中要修改資料庫相關參數,只能修改Parameter Group
預設啟動資料庫時,RDS會給你一個預設的設定資料,這是無法更動的
所以要自定義參數時,就必須自己新增一組出來,如下圖
那需要修該參數時
點選你要修改的參數前方的放大鏡~
因為參數太多,所以要用Filter的方式找出需要修改的參數
而有些參數是RDS鎖死無法修改的
這裡我們主要是要開啟slow query log
所以列出需要修改的參數
slow_query_log 1 (1是啟用,預設是0)
long_query_time 1 (這裡是秒數,超過1秒就記錄LOG)
log_output option File (LOG輸出格式,預設是table,在AWS上觀看要選File)
設定完畢之後修改RDS的設定
之後套用需要時間生效(註:某些參數需重啟RDS才能套用)
這樣子就生效了
在控制介面下方的LOG就可以觀察到log了
記得AWS課程上有提到
非必要,不要使用預設的AWS ROOT帳號做管理
可以先建立一組IAM的子帳號使用
再給予adaministrator的權限即可(如下圖)
那對於多帳號管理來說,也是相同,只是從User改為Role去做
只要先create role 之後
在權限設定上
選擇 Provide access between AWS accounts you own
之後要填入你想讓哪個帳號可以切換過來,之後再給予權限即可
舉例: 你有A帳號 與 B帳號
A帳號建了一個 role kila,然後填入B帳號的account ID (ID在帳單那邊看得到)
從此你就可以登入B帳號,切換成為A帳號的kila,管理A帳號
如下圖,我用一個帳號可以管理4組其他帳號,而不用登出登入煩死人
那大家會覺得填完之後怎麼跟我的畫面不同呢?
很簡單,因為我設定了alias
在IAM一進去的畫面中,會看到IAM USER的專用連結
原本預設是account ID,可以點網址旁邊的 Customize修改alias
如下圖
之後就可以方便的切換
在右上角的帳號點開後,會有看到 Switch Role (如上上張圖)
點選後會看到下圖
Account可以填ID,當然也可以填alias,這樣子方便記住你切換的帳號是甚麼用途
Role 就填你剛剛建好的A帳號的kila
Display不用填,你填完之後他會幫你顯示
最後可以選帳號顯示的顏色,按下switch role之後,你就切換過去了
這樣子就可以達成一組帳號管理許多帳號的目的
AWS有沒有很人性化呢~
#先安裝 s3cmd (Linux or MAC)
sudo yum install s3cmd -y
#設定權限(S3需有key)
Default Region [US]:(填預設region)
#查詢bucket
#查詢bucket endpoint
s3cmd info s3://your-bucket-name
完成
© 2025 Kila's IT Home
Theme by Anders Norén — Up ↑
近期留言