阿里云容器服务Kubernetes版快速入门
本场景将在ACK集群中快速部署一个魔方游戏,并可以公网访问。
一、部署并公开应用
- 在容器服务控制台,选择一个目标集群,在“工作负载”-“无状态”中,使用镜像创建应用。
- 创建完成后,可以查看应用详情。
二、访问应用
- 在管理控制台的目标集群中,点击“网路”-“服务”,查看刚刚创建的服务的外部端点给出的ip地址。
- 在任何时间任何地点,访问这个ip地址,就可以玩魔方了。
Docker镜像管理快速入门
一、搭建Docker服务
具体操作有:安装Docker服务、配置DockerHub镜像加速器、启动Docker服务。
二、准备应用代码和Dockerfile
本步骤操作将在工作空间下创建一个基于Golang的HelloWorld代码文件和一个用来构建运行Hello代码所需环境镜像的Dockerfile文件。
- 创建工作空间
mkdir -p /tmp/demo && cd /tmp/demo
- 在工作空间下创建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
- 在工作空间下创建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
三、本地构建镜像并运行镜像
- 使用docker build命令构建镜像。
docker build . -t demo:v1
- 使用docker run命令运行镜像。
docker run -d -p 8000:80 demo:v1
- 使用curl工具访问容器中的HelloWorld服务。
curl localhost:8000
Chaos带你快速上手混沌工程
一、创建应用
- 在容器服务控制台中,选择一个集群,在“工作负载”-“无状态”中,使用YAML完成创建。
- 创建完成后,在“无状态”中找到frontend,访问其外部端点IP地址,即可进入应用。
二、安装探针
- 在容器服务控制台,进入“应用市场”。
- 找到ack-ahas-pilot,一键部署到集群中。
三、通过架构感知查看系统整体架构
- 在应用高可用服务控制台,点击架构感知,选择Kubernetes监控视图,即可看到视图。
四、自动恢复场景演练
在分布式系统设计中有一种容错策略是故障恢复(failback),通过健康检查等机制,能在机器或者应用出现问题时自动的进行重新部署。我们利用Chaos进行故障演练,测试我们的系统是否具有这样的能力。
五、强弱依赖场景演练
在微服务架构中,各个服务之间存在许多依赖关系。但是当一个不重要的弱依赖宕机时,一个健壮的系统应该仍然能够正常的运行。我们利用Chaos进行故障演练,测试我们的系统处理强弱依赖的能力如何。
六、失败重试场景演练
在微服务架构中,一个大系统被拆分成多个小服务,小服务之间存在大量RPC调用,经常可能因为网络抖动等原因导致RPC调用失败,这时候使用重试机制可以提高请求的最终成功率,减少故障影响,让系统运行更稳定。我们通过利用Chaos,给系统注入失败,看看系统失败重试的性能如何。
七、微服务演练
上述三个场景演练手动部署参数的过程是比较繁琐的。接下来我们体验一下更为方便快捷的强弱依赖治理。
- 在高可用服务控制台,单击微服务演练,选择强弱依赖治理,并创建治理方案。
- 治理应用选择frontend。
- 依赖预判中,自行选择依赖对象的强弱依赖预判,例如nacos-standalone和checkoutservice的强弱依赖预判可选择强依赖,其他依赖对象默认弱依赖。
- 在依赖验证中,选择任意用例进行验证。例如选择frontend与nacos-standalone强弱依赖验证用例,单击去验证。
- 在去验证前的参数确认对话框中,单击确定验证。
- 在演练详情页面中,单击演练。
- 切换至Hipster Shop页面,单击网页的任意功能。您可以发现Hipster Shop网页和相关功能均可以正常访问,说明frontend服务与nacos-standalone服务是弱依赖关系。
- 切换至应用高可用服务控制台,在演练记录详情页面,单击终止。
- 在结果反馈对话框中,结论选择不符合预期,验证结果选择弱依赖,单击确定,返回强弱依赖治理。
- 在依赖验证中,可以验证其他用例,验证完成后,单击方案归档。
- 返回如下页面,表示归档完毕。