原 荐 二, 跨语言微服务框架 - Istio环境搭建

栏目: 后端 · 发布时间: 5年前

二, 跨语言微服务框架 - Istio环境搭建

  喵了_个咪 发布于 今天 11:32

字数 1017

阅读 49

收藏 4

Rancher YAML Istio Kubernetes

开发十年,就只剩下这套 Java 开发体系了 >>> 原 荐 二, 跨语言微服务框架 - Istio环境搭建

原 荐 二, 跨语言微服务框架 - Istio环境搭建

当我们知道Istio是一个好东西,能够帮助我们快速实现微服务化中的一些关键节点,那么下一步就需要考虑怎么使用Istio了,Istio现在版本是和Kubernetes强关联在一起的,如果大家还不是太了解Kubernetes可以先从笔者的文章中了解,通过Kubernetes生态Istio可以非常方便的进行部署和使用。

附上:

喵了个咪的博客:w-blog.cn

Istio官方地址: https://preliminary.istio.io/zh

Istio中文文档: https://preliminary.istio.io/zh/docs/

PS : 此处基于当前最新istio版本1.0.3版本进行搭建和演示

一. Kubernetes准备工作

搭建部署Istio时需要先准备好Kubernetes环境,笔者这边使用的是Rancher进行环境的搭建,可以参考笔者的以下博文:

Docker应用容器引擎介绍与搭建 - 喵了个咪博客空间 - 开源中国

Kubernetes(二) - 使用Rancher部署K8S集群(搭建Rancher) - 喵了个咪博客空间 - 开源中国

Kubernetes(三) - 使用Rancher部署K8S集群(搭建Kubernetes) - 喵了个咪博客空间 - 开源中国

Docker应用容器引擎介绍与搭建 - 喵了个咪的博客 - CSDN博客

Kubernetes(二) - 使用Rancher部署K8S集群(搭建Rancher) - 喵了个咪的博客 - CSDN博客

Kubernetes(三) - 使用Rancher部署K8S集群(搭建Kubernetes) - 喵了个咪的博客 - CSDN博客

  1. 这里需要着重提醒的是关于在部署的时候需要修改Kubernetes模板配置项,之后配置之后后面的Sidecar自动注入才能使用,否则只能手动入住Sidecar.

原 荐 二, 跨语言微服务框架 - Istio环境搭建

原 荐 二, 跨语言微服务框架 - Istio环境搭建

  1. 需要找到Kubernetes Admission controllers选项,如下
NamespaceLifecycle,LimitRanger,ServiceAccount,PersistentVolumeLabel,DefaultStorageClass,DefaultTolerationSeconds,ResourceQuota

在指定位置添加两个选项

MutatingAdmissionWebhook,ValidatingAdmissionWebhook

如下

NamespaceLifecycle,LimitRanger,ServiceAccount,PersistentVolumeLabel,DefaultStorageClass,DefaultTolerationSeconds,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota

这样才启动了admissionregistration API

  1. 最后在创建集群的时候选择我们事先准备好的环境模板即可.

原 荐 二, 跨语言微服务框架 - Istio环境搭建

原 荐 二, 跨语言微服务框架 - Istio环境搭建

原 荐 二, 跨语言微服务框架 - Istio环境搭建

然后按照笔者之前的文章部署k8s即可:

原 荐 二, 跨语言微服务框架 - Istio环境搭建

PS : 这里使用的K8S版本为1.11,推荐使用1.10以上的版本

二. 部署Istio

PS : 1.0.3版本官方已经完全把 docker 仓库使用了docker.io舍弃了grc.io就不需要我们去翻墙或者复制镜像了(不在推荐使用1.0.3以前的版本)

首先去官方git下载对应的版本包(liunx 和 mac 要分开)

Releases · istio/istio · GitHub

> tar -zxvf istio-1.0.3-linux.tar.gz

2.1 安装istioctl

如果手动注入sidecar的话需要使用这个命令,自动注入的话不装这个也行:

> sudo cp istio-1.0.3/bin/istioctl /usr/local/bin/

2.2 安装Istio核心组件

简单的安装只需要通过运行官方提前准备好的yaml即可,如果有定制需求(有些内部组件不需要可以使用helm进行yaml构建)

> kubectl apply -f istio-1.0.3/install/kubernetes/istio-demo.yaml

原 荐 二, 跨语言微服务框架 - Istio环境搭建

> kubectl get svc -n istio-system

原 荐 二, 跨语言微服务框架 - Istio环境搭建

> kubectl get pods -n istio-system

PS : 这边会有三个0/1的是正常的,主要是三个task只有到达指定时间才会运行或一次性脚本

原 荐 二, 跨语言微服务框架 - Istio环境搭建

三. 结尾

此时istio就已经搭建完成,通过这种方式搭建的istio是一整套没有删减的容器组,包括grafaba + prometheus等(存在磁盘和处理资源的问题),如果有需求独立在外层部署这些组件的需求就需要修安装yaml进行了解学习修改,本套文章后续也会讲解怎么把一些非核心组件在外层部署(每个版本都会有一些区别需要小心)。

PS : 大家也许遇到了无法访问外网的问题可以关注笔者后续的Egress流量控制或参考 Istio Prelim 1.1 / 控制 Egress 流量

原 荐 二, 跨语言微服务框架 - Istio环境搭建

© 著作权归作者所有

共有人打赏支持

上一篇: phalcon-入门篇3(优美的URL与Config)

下一篇: 一, 跨语言微服务框架 - Istio 简绍和概念

原 荐 二, 跨语言微服务框架 - Istio环境搭建

喵了_个咪

粉丝 274

博文 146

码字总数 190043

作品 4

杨浦

技术主管

提问

相关文章 最新文章

一, 跨语言微服务框架 - Istio 简绍和概念

微服务的概念已经在各大公司实践开了,以Java为代表的spring boot成为了微服务的代表,K8S+Docker成为了微服务运行的最佳环境,微服务的概念已经离我们没有那么遥远了。 当然微服务是复杂的,...

喵了_个咪

11/07

0

0

Service Mesh实践之Istio初体验

微服务国内发展背景: 2014年,Martin Fowler撰写的《Microservices》使得许多国内的先行者接触到微服务这个概念并将其引入国内,2015年越来越多的人通过各种渠道了解到微服务的概念并有人开...

Docker

08/10

0

0

原 荐 二, 跨语言微服务框架 - Istio环境搭建
阿里云Kubernetes Service Mesh实践进行时(2): 通过示例深入Istio

概述 上一篇文章已经介绍了Istio及其各个核心组件,并且在阿里云Kubernetes容器服务基础之上,介绍了如何快速搭建一套用于连接、管理以及安全化微服务的开放平台。 阿里云Kubernetes Servic...

osswangxining

06/06

0

0

原 荐 二, 跨语言微服务框架 - Istio环境搭建
阿里云Kubernetes Service Mesh实践进行时(6): 故障诊断与检测工具Weave Scope

概述 本系列文章已经通过一个官方示例演示了如何部署应用到上述Istio环境中,并演示了如何设置智能路由、分布式追踪以及Istio 的遥测数据收集、查询及可视化等功能。 阿里云Kubernetes Serv...

osswangxining

06/06

0

0

原 荐 二, 跨语言微服务框架 - Istio环境搭建
激情的4月,微服务将进入2.0时代,你们准备好了么?

服务自2014年3月由Martin Fowler首次提出以来,在Spring Cloud、Dubbo等各类微服务框架的帮助下,以燎原之势席卷了整个IT技术界,成为了最主流的分布式应用解决方案。但仍然还有很多问题没有...

美的让人心动

04/25

0

0

没有更多内容

加载失败,请刷新页面

加载更多
新手如何优雅地部署第一个以太坊私有链?

今天我们先在windows系统上学习入门以太坊。 首先,我们先要下载以太坊钱包,https://ethfans.org/wikis/Home 在这个网站上下载官方钱包镜像,这几个都可以下载下来,他们各有优势和用处(具...

酒逢知己千杯少

28分钟前

1

0

原 荐 二, 跨语言微服务框架 - Istio环境搭建
CentOS7下的AIDE入侵检测配置

CentOS7下的AIDE入侵检测配置 余二五 2017-11-14 21:36:00 浏览384 评论0 服务器 数据库 配置 DB 索引 database file gitlab 摘要: 1、AIDE的简单介绍 AIDE通过扫描一台(未被篡改)的Linux...

linjin200

33分钟前

1

0

解决MySQL Error (2013): Lost connection to MySQL server at waiting for initial communication packet

摘要:【错误内容】:SQLError(2013):LostconnectiontoMySQLserverat'waitingforinitialcommunicationpacket',systemerror:0【错产生经过】:链接 MySQL 时出现.【解决办法】:打开my.ini,找到[my...

15834278076

41分钟前

1

0

android只用能AudioTrack播放实时音频

还有一篇:http://blog.51cto.com/13591594/2068009 (其项目地址: https://github.com/979451341/Audio-and-video-learning-materials ) 今天,简单讲讲AudioTrack的使用方法。 1、Android......

whoisliang

43分钟前

1

0

Electrum比特币钱包的 Python 代码分析

如果你仍然未对Python语言的强大功能感到惊讶,那么在这部分我们将学习如何在python中开发比特币地址或钱包。我只是想说与你的计算机通信是多么容易,如果你通过python和 Linux 操作系统,可以...

笔阁

50分钟前

1

0

原 荐 二, 跨语言微服务框架 - Istio环境搭建

没有更多内容

加载失败,请刷新页面

加载更多

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Effective STL中文版

Effective STL中文版

[美] Scott Meyers / 潘爱民、陈铭、邹开红 / 电子工业出版社 / 2013-5 / 59.00元

《Effective STL中文版:50条有效使用STL的经验》是EffectiveC++的第3卷,被评为“值得所有C++程序员阅读的C++书籍之一”。《Effective STL中文版:50条有效使用STL的经验》详细讲述了使用STL的50条指导原则,并提供了透彻的分析和深刻的实例,实用性极强,是C++程序员必备的基础书籍。C++的标准模板库(STL)是革命性的,要用好STL并不容易。《Effe......一起来看看 《Effective STL中文版》 这本书的介绍吧!

URL 编码/解码
URL 编码/解码

URL 编码/解码

MD5 加密
MD5 加密

MD5 加密工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具