安装 Istio 时注意如下几点:html
在容器服务集群管理页面能够直接在目标集群上部署 Istiogit
选择好目标集群使用一键部署功能直接安装便可, 安装文档github
设置数据导入方式docker
选择 Docker标准输出api
{ "inputs": [ { "detail": { "IncludeEnv": { "K_SERVICE": "helloworld-go" }, "IncludeLabel": {}, "ExcludeLabel": {} }, "type": "service_docker_stdout" } ], "processors": [ { "detail": { "KeepSource": false, "NoMatchError": true, "Keys": [ "time", "level", "msg" ], "NoKeyError": true, "Regex": "(\\d+-\\d+-\\d+ \\d+:\\d+:\\d+)\\s+(\\w+)\\s+(*)", "SourceKey": "content" }, "type": "processor_regex" } ] }
分别为相应的键值 time、level 和 msg 设置数据类型浏览器
到容器服务控制台页面,打开集群详情页。复制 KubeConfig 内容保存到本地 ~/.kube/config 文件并发
安装app
cd helloworld-go kubectl apply -f sample/service.yaml
多访问几回 helloworld-go 生成一些访问日志wordpress
./sample/run-test.sh
生成一些访问日志之后点击查询,便可查看相应的日志工具
日志服务控制台: https://sls.console.aliyun.com
日志服务有丰富的查询条件,好比查询 ERROR 日志
使用下查询语句进行搜索,这条语句使用了 SELECT ,能够进行更高级别的操做。
level:ERROR | SELECT COUNT(*) as total
搜索ERROR 日志,时间跨度选择一分钟。
点击另存为告警
触发条件的变量就是 左侧表格中的列名称
以下设置的含义是,1分钟检索一次 ERROR 日志的数量若是大于等于4 就告警。
能够设置多种告警通知方式,而且告警 body 还可使用系统变量。获取告警的上下文信息。
打开邮件能够看到告警通知
选择相应的 Region,点击应用列表查看应用列表
调用链查询页面
下载源文件: https://kstarter.oss-cn-beijing.aliyuncs.com/knload-result.html ,直接用浏览器打开便可查看
压测的并发数陡增致使服务响应时间抖动,但随着 Pod 数量的自动扩容 RT 很快就恢复到了正常水位。
工程
部署 WordPress
## ENV 换成具体的值 env: - name: WORDPRESS_DB_HOST value: {db_host:3306} - name: WORDPRESS_DB_NAME value: {db_name} - name: WORDPRESS_DB_USER value: {db_user} - name: WORDPRESS_DB_PASSWORD value: {db_password} ## 部署 WordPress # kubectl apply -f /Users/qiulin.nql/works/github/knative-sample/secret/wordpress-service.yaml kubectl apply -f sample/service.yaml
添加 Egress
kubectl apply -f sample/egress.yaml
访问 WordPress 服务
./hack/run-wp-test.sh
日志收集
{ "inputs": [ { "detail": { "IncludeEnv": { "K_SERVICE": "wordpress" }, "IncludeLabel": {}, "ExcludeLabel": {} }, "type": "service_docker_stdout" } ], "processors": [ { "detail": { "KeepSource": false, "NoMatchError": true, "Keys": [ "ip", "time", "req", "code" ], "NoKeyError": true, "Regex": "(\\d+.\\d+.\\d+.\\d+)\\s+-\\s+(\\d+/\\w+/\\d+:\\d+:\\d+:\\d+\\s\\+\\d+)\\s\"(.*)\"\\s(\\d+)", "SourceKey": "content" }, "type": "processor_regex" } ] }
hey -z 30s -c 50 "http://wordpress.default.example.com/" && kubectl get pods
原文连接 本文为云栖社区原创内容,未经容许不得转载。