场景体验报告——冬季实战营第四期

阿里云容器服务Kubernetes版快速入门


本场景将在ACK集群中快速部署一个魔方游戏,并可以公网访问。

一、部署并公开应用

  1. 在容器服务控制台,选择一个目标集群,在“工作负载”-“无状态”中,使用镜像创建应用。

场景体验报告——冬季实战营第四期场景体验报告——冬季实战营第四期

  1. 创建完成后,可以查看应用详情。

场景体验报告——冬季实战营第四期场景体验报告——冬季实战营第四期

二、访问应用

  1. 在管理控制台的目标集群中,点击“网路”-“服务”,查看刚刚创建的服务的外部端点给出的ip地址。
  2. 在任何时间任何地点,访问这个ip地址,就可以玩魔方了。

Docker镜像管理快速入门


一、搭建Docker服务

具体操作有:安装Docker服务、配置DockerHub镜像加速器、启动Docker服务。

二、准备应用代码和Dockerfile

本步骤操作将在工作空间下创建一个基于Golang的HelloWorld代码文件和一个用来构建运行Hello代码所需环境镜像的Dockerfile文件。

  1. 创建工作空间

mkdir -p /tmp/demo && cd /tmp/demo

  1. 在工作空间下创建HelloWorld代码文件,用来在容器环境中监听HTTP服务,输出HelloWorld字符串。

cat > /tmp/demo/main.go << EOFpackage main

import ( "fmt" "net/http")

func main() { http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "Hello! World\n") })

fmt.Println("start to serve...")

http.ListenAndServe(":80", nil)

}EOF

  1. 在工作空间下创建Dockerfile文件。

cat > /tmp/demo/Dockerfile << EOF

FROM golang:1.12-alpine

# change current working dir

WORKDIR /go/src/app

# copy main.go into /go/src/app

COPY . .

# go build and install the app

RUN go install -v ./...

# run the app by default

CMD ["app"]

EOF

三、本地构建镜像并运行镜像

  1. 使用docker build命令构建镜像。

docker build . -t demo:v1

  1. 使用docker run命令运行镜像。

docker run -d -p 8000:80 demo:v1

  1. 使用curl工具访问容器中的HelloWorld服务。

curl localhost:8000

Chaos带你快速上手混沌工程


一、创建应用

  1. 在容器服务控制台中,选择一个集群,在“工作负载”-“无状态”中,使用YAML完成创建。
  2. 创建完成后,在“无状态”中找到frontend,访问其外部端点IP地址,即可进入应用。

二、安装探针

  1. 在容器服务控制台,进入“应用市场”。
  2. 找到ack-ahas-pilot,一键部署到集群中。

三、通过架构感知查看系统整体架构

  1. 在应用高可用服务控制台,点击架构感知,选择Kubernetes监控视图,即可看到视图。

四、自动恢复场景演练

在分布式系统设计中有一种容错策略是故障恢复(failback),通过健康检查等机制,能在机器或者应用出现问题时自动的进行重新部署。我们利用Chaos进行故障演练,测试我们的系统是否具有这样的能力。

五、强弱依赖场景演练

在微服务架构中,各个服务之间存在许多依赖关系。但是当一个不重要的弱依赖宕机时,一个健壮的系统应该仍然能够正常的运行。我们利用Chaos进行故障演练,测试我们的系统处理强弱依赖的能力如何。

六、失败重试场景演练

在微服务架构中,一个大系统被拆分成多个小服务,小服务之间存在大量RPC调用,经常可能因为网络抖动等原因导致RPC调用失败,这时候使用重试机制可以提高请求的最终成功率,减少故障影响,让系统运行更稳定。我们通过利用Chaos,给系统注入失败,看看系统失败重试的性能如何。

七、微服务演练

上述三个场景演练手动部署参数的过程是比较繁琐的。接下来我们体验一下更为方便快捷的强弱依赖治理。

  1. 在高可用服务控制台,单击微服务演练,选择强弱依赖治理,并创建治理方案。
  2. 治理应用选择frontend
  3. 依赖预判中,自行选择依赖对象的强弱依赖预判,例如nacos-standalone和checkoutservice的强弱依赖预判可选择强依赖,其他依赖对象默认弱依赖。
  4. 在依赖验证中,选择任意用例进行验证。例如选择frontend与nacos-standalone强弱依赖验证用例,单击去验证
  5. 去验证前的参数确认对话框中,单击确定验证
  6. 在演练详情页面中,单击演练
  7. 切换至Hipster Shop页面,单击网页的任意功能。您可以发现Hipster Shop网页和相关功能均可以正常访问,说明frontend服务与nacos-standalone服务是弱依赖关系。
  8. 切换至应用高可用服务控制台,在演练记录详情页面,单击终止
  9. 结果反馈对话框中,结论选择不符合预期验证结果选择弱依赖,单击确定,返回强弱依赖治理
  10. 在依赖验证中,可以验证其他用例,验证完成后,单击方案归档
  11. 返回如下页面,表示归档完毕。
    场景体验报告——冬季实战营第四期


上一篇:响应返回JSON数据时出现的unicode编码问题


下一篇:用Hello World校验Docker的安装