《云计算与虚拟化技术丛书 Service Mesh实战》—2.4安装Linkerd

举报
华章计算机 发表于 2019/06/05 22:50:06 2019/06/05
【摘要】 本书摘自《云计算与虚拟化技术丛书 Service Mesh实战:基于Linkerd和Kubernetes的微服务实践》一文中的第2章,第2.4.1节,作者是杨彰显。

2.4 安装Linkerd

       接下来开始介绍Linkerd的安装部署,本节将讲述两种常见的安装方式:传统安装方式和基于Docker的安装方式。为了统一演示环境,本节以及后续章节都依赖如下软件工具。

       Virtualbox 5.2.2:开源的虚拟机管理软件,支持各种主流操作系统。

       Vagrant 2.0.1:Hashicorp公司基于Ruby开发的用于创建和部署虚拟开发环境,通常用VirtualBox作为虚拟机管理软件。

       CentOS 7.4:使用最多的Linux发行版之一。

       OpenJDK 8:Java平台的开源化实现。

       Docker Engine 1.13.1:开源容器管理引擎,被业界广泛使用。

       工具集:wget,telnet、tree、jq和net-tools。

2.4.1 环境准备

       首先,准备Linkerd的运行环境及依赖软件。

       1. 安装Virtualbox

       本书中Virualbox的安装是在Mac系统上进行的,如果你的工作系统是Windows或者Linux,请到Virtualbox官方(https://www.virtualbox.org/wiki/Downloads)下载对应的安装包,并根据安装指南(http://download.virtualbox.org/virtualbox/5.2.2/UserManual.pdf)进行安装,这里就不作详细介绍。

        在Mac上安装Virtualbox相对简单,打开终端,然后执行下面的命令即可。

        $ brew cask install virtualbox

        如果没有任何错误,你会看到virtualbox was successfully installed!,这就表示安装成功。

        2. 安装Vagrant

       同VirtualBox一样, 如果你的工作系统是Windows或者Linux,请到Vagrant官方(https://www.vagrantup.com/downloads.html)下载对应的安装包进行安装。同样在Mac终端中执行下面的命令安装Vagrant 。

       $ brew cask install vagrant

       安装完成后,执行如下命令验证Vagrant的版本信息。  

       $ vagrant --version

       Vagrant 2.0.1

       3. 启动CentOS虚拟机

       首先,需要准备Vagrantfile,Vagrant使用它启动一个由VirtualBox管理的CentOS虚拟机,Vagrantfile内容如下:

# -*- mode;ruby -*-

# vi;set ft=ruby :


Vagrant.configure("2") do |config|

  config.vm.box = "centos/7"


  # Linkerd router on port 4140

  config.vm.network "forwarded_port", guest: 4140, host: 4140

  # Linkerd admin on port 9990

  config.vm.network "forwarded_port", guest: 9990, host: 9990

end

        其定义虚拟机使用的操作系统类型及版本,同时还定义了端口映射信息,比如我们的环境中需要将Linkerd的管理口映射到宿主机以便从宿主机访问Linkerd管理界面。切换到Vagrantfile所在目录,然后执行如下命令启动虚拟机:

$ vagrant up

初次启动可能时间较长,因为需要下载CentOS的镜像文件。一旦虚拟机启动成功后,通过如下命令登入虚拟机:

$ vagrant ssh # 登入CentOS虚拟机

$ sudo su -  # 切换到root用户

# cat /etc/redhat-release # 验证CentOS版本信息

CentOS Linux release 7.4.1708 (Core)

       4. 安装工具集

        由于后续需要做一些验证或辅助工作,比如通过命令netstat查看服务端口监听状态、连接信息等,因此需要安装net-tools,还有一些辅助工具如tree、wget和jq,其中jq用于优雅地输出json格式的数据。现通过yum安装除jq之外的所有工具软件:

# yum install -y wget telnet tree net-tools

        由于jq没有已编译的RPM包,故直接下载其二进制安装包进行安装:

# wget -qO /usr/local/bin/jq https://github.com/stedolan/jq/releases/download/jq-1.5/jq-linux64

# chmod +x /usr/local/bin/jq

        5. 安装OpenJDK

       由于Linkerd依赖Java JDK 8以上版本,为此必须安装Oracle JDK或者OpenJDK,在我们的环境中统一安装OpenJDK。现登入已准备好的虚拟机,直接通过yum安装,无需额外配置yum源。

# yum install -y java-1.8.0-openjdk

       安装完成后通过如下命令验证是否成功:

# java -version

openjdk version "1.8.0_161"

OpenJDK Runtime Environment (build 1.8.0_161-b14)

OpenJDK 64-Bit Server VM (build 25.161-b14, mixed mode)

       6. 安装Docker Engine

        当前CentOS 7.4官方支持的Docker版本是1.13.1,因此默认安装该版本,如果需要安装更新版本的Docker Engine,参考Docker官方安装指南(https://docs.docker.com/install/linux/docker-ce/centos/)进行安装。  

# yum install -y docker-1.13.1

        通过docker version可查看安装Docker的详细信息:  

# docker version

Client:

  Version:         1.13.1

  API version:     1.26

  Package version:

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

        从输出信息可确定安装的Docker Engine版本是1.13.1,但Docker daemon还未启动,使用如下命令启动Docker daemon:  

# systemctl enable docker  # 确保系统重启时Docker自动启动

Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /usr/lib/systemd/system/docker.service.

# systemctl start docker


【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。