返回首页
苏宁会员
购物车 0
易付宝
手机苏宁

服务体验

店铺评分与同行业相比

用户评价:----

物流时效:----

售后服务:----

  • 服务承诺: 正品保障
  • 公司名称:
  • 所 在 地:

  • Kubernetes in Action中文版 (美)马尔科·卢克沙(Marko Luksa) 著 七牛容器云团队 译
  • 新华书店正版
    • 作者: (美)MarkoLuksa(马尔科·卢克沙)著 | | 七牛容器云团队译
    • 出版社: 电子工业出版社
    • 出版时间:2018-12-01 00:00:00
    送至
  • 由""直接销售和发货,并提供售后服务
  • 加入购物车 购买电子书
    服务

    看了又看

    商品预定流程:

    查看大图
    /
    ×

    苏宁商家

    商家:
    文轩网图书旗舰店
    联系:
    • 商品

    • 服务

    • 物流

    搜索店内商品

    商品分类

         https://product.suning.com/0070067633/11555288247.html

     

    商品参数
    • 作者: (美)MarkoLuksa(马尔科·卢克沙)著| 七牛容器云团队译
    • 出版社:电子工业出版社
    • 出版时间:2018-12-01 00:00:00
    • 版次:1
    • 印刷时间:2018-12-01
    • 页数:592
    • 开本:其他
    • 装帧:平装
    • ISBN:9787121349959
    • 国别/地区:中国
    • 版权提供:电子工业出版社

    Kubernetes in Action中文版

    作  者:(美)马尔科·卢克沙(Marko Luksa) 著 七牛容器云团队 译
    定  价:148
    出 版 社:电子工业出版社
    出版日期:2019年01月01日
    页  数:570
    装  帧:平装
    ISBN:9787121349959
    主编推荐

     

    内容简介

    本书主要讲解如何在 Kubernetes 中部署分布式容器应用。本书开始部分概要介绍了 Docker 和Kubernetes 的由来和发展,然后通过在 Kubernetes 中部署一个应用程序,一点点增加功能,逐步加深我们对于Kubernetes架构的理解和操作的实践。在本书的后面部分,也可以学习一些高阶的主题,比如监控、调试及伸缩。Kubernetes是希腊文,意思是“舵手”,带领我们安全地到达未知水域。Kubernetes这样的容器编排系统,会帮助我们妥善地管理分布式应用的部署结构和线上流量,高效地组织容器和服务。Kubernetes 作为数据中心操作系统,在设计软件系统时,能够尽量降低在底层网络和硬件设施上的负担。

    作者简介

     

    精彩内容

    目录
    1Kubernetes介绍1
    1.1Kubernetes系统的需求2
    1.1.1从单体应用到微服务2
    1.1.2为应用程序提供一个一致的环境5
    1.1.3迈向持续交付:DevOps和无运维6
    1.2介绍容器技术7
    1.2.1什么是容器7
    1.2.2Docker容器平台介绍11
    1.2.3rkt——一个Docker的替代方案14
    1.3Kubernetes介绍15
    1.3.1初衷15
    1.3.2深入浅出地了解Kubernetes15
    1.3.3Kubernetes集群架构17
    1.3.4在Kubernetes中运行应用18
    1.3.5使用Kubernetes的好处20
    1.4本章小结22
    2开始使用Kubernetes和Docker23
    2.1创建、运行及共享容器镜像23
    2.1.1安装Docker并运行HelloWorld容器24
    2.1.2创建一个简单的Node.js应用26
    2.1.3为镜像创建Dockerfile27
    2.1.4构建容器镜像27
    2.1.5运行容器镜像30
    2.1.6探索运行容器的内部31
    2.1.7停止和删除容器32
    2.1.8向镜像仓库推送镜像33
    2.2配置Kubernetes集群34
    2.2.1用Minikube运行一个本地单节点Kubernetes集群34
    2.2.2使用GoogleKubernetesEngine托管Kubernetes集群36
    2.2.3为kubectl配置别名和命令行补齐39
    2.3在Kubernetes上运行第一个应用40
    2.3.1部署Node.js应用40
    2.3.2访问Web应用43
    2.3.3系统的逻辑部分45
    2.3.4水平伸缩应用46
    2.3.5查看应用运行在哪个节点上49
    2.3.6介绍Kubernetesdashboard50
    2.4本章小结51
    3pod:运行于Kubernetes中的容器53
    3.1介绍pod53
    3.1.1为何需要pod54
    3.1.2了解pod55
    3.1.3通过pod合理管理容器56
    3.2以YAML或JSON描述文件创建pod58
    3.2.1检查现有pod的YAML描述文件59
    3.2.2为pod创建一个简单的YAML描述文件61
    3.2.3使用kubectlcreate来创建pod63
    3.2.4查看应用程序日志64
    3.2.5向pod发送请求65
    3.3使用标签组织pod66
    3.3.1介绍标签66
    3.3.2创建pod时指定标签67
    3.3.3修改现有pod的标签68
    3.4通过标签选择器列出pod子集69
    3.4.1使用标签选择器列出pod69
    3.4.2在标签选择器中使用多个条件71
    3.5使用标签和选择器来约束pod调度71
    3.5.1使用标签分类工作节点72
    3.5.2将pod调度到特定节点72
    3.5.3调度到一个特定节点73
    3.6注解pod73
    3.6.1查找对象的注解74
    3.6.2添加和修改注解74
    3.7使用命名空间对资源进行分组75
    3.7.1了解对命名空间的需求75
    3.7.2发现其他命名空间及其pod75
    3.7.3创建一个命名空间76
    3.7.4管理其他命名空间中的对象77
    3.7.5命名空间提供的隔离78
    3.8停止和移除pod78
    3.8.1按名称删除pod78
    3.8.2使用标签选择器删除pod79
    3.8.3通过删除整个命名空间来删除pod80
    3.8.4删除命名空间中的所有pod,但保留命名空间80
    3.8.5删除命名空间中的(几乎)所有资源80
    3.9本章小结81
    4副本机制和其他控制器:部署托管的pod83
    4.1保持pod健康84
    4.1.1介绍存活探针84
    4.1.2创建基于HTTP的存活探针85
    4.1.3使用存活探针86
    4.1.4配置存活探针的附加属性87
    4.1.5创建有效的存活探针88
    4.2了解ReplicationController89
    4.2.1ReplicationController的操作90
    4.2.2创建一个ReplicationController92
    4.2.3使用ReplicationController94
    4.2.4将pod移入或移出ReplicationController的作用域97
    4.2.5修改pod模板100
    4.2.6水平缩放pod101
    4.2.7删除一个ReplicationController103
    4.3使用ReplicaSet而不是ReplicationController104
    4.3.1比较ReplicaSet和ReplicationController104
    4.3.2定义ReplicaSet105
    4.3.3创建和检查ReplicaSet106
    4.3.4使用ReplicaSet的更富表达力的标签选择器106
    4.3.5ReplicaSet小结107
    4.4使用DaemonSet在每个节点上运行一个pod107
    4.4.1使用DaemonSet在每个节点上运行一个pod108
    4.4.2使用DaemonSet只在特定的节点上运行pod109
    4.5运行执行单个任务的pod112
    4.5.1介绍Job资源112
    4.5.2定义Job资源113
    4.5.3看Job运行一个pod114
    4.5.4在Job中运行多个pod实例114
    4.5.5Jobpod完成任务的时间116
    4.6安排Job定期运行或在将来运行一次116
    4.6.1创建一个CronJob116
    4.6.2了解计划任务的运行方式118
    4.7本章小结118
    5服务:让客户端发现pod并与之通信121
    5.1介绍服务122
    5.1.1创建服务123
    5.1.2服务发现129
    5.2连接集群外部的服务132
    5.2.1介绍服务endpoint133
    5.2.2手动配置服务的endpoint133
    5.2.3为外部服务创建别名135
    5.3将服务暴露给外部客户端136
    5.3.1使用NodePort类型的服务137
    5.3.2通过负载均衡器将服务暴露出来140
    5.3.3了解外部连接的特性142
    5.4通过Ingress暴露服务143
    5.4.1创建Ingress资源145
    5.4.2通过Ingress访问服务146
    5.4.3通过相同的Ingress暴露多个服务147
    5.4.4配置Ingress处理TLS传输149
    5.5pod就绪后发出信号150
    5.5.1介绍就绪探针151
    5.5.2向pod添加就绪探针152
    5.5.3了解就绪探针的实际作用154
    5.6使用headless服务来发现独立的pod155
    5.6.1创建headless服务156
    5.6.2通过DNS发现pod156
    5.6.3发现所有的pod——包括未就绪的pod.157
    5.7排除服务故障158
    5.8本章小结159
    6卷:将磁盘挂载到容器161
    6.1介绍卷162
    6.1.1卷的应用示例162
    6.1.2介绍可用的卷类型164
    6.2通过卷在容器之间共享数据165
    6.2.1使用emptyDir卷165
    6.2.2使用Git仓库作为存储卷168
    6.3访问工作节点文件系统上的文件171
    6.3.1介绍hostPath卷171
    6.3.2检查使用hostPath卷的系统pod172
    6.4使用持久化存储173
    6.4.1使用GCE持久磁盘作为pod存储卷174
    6.4.2通过底层持久化存储使用其他类型的卷177
    6.5从底层存储技术解耦pod179
    6.5.1介绍持久卷和持久卷声明179
    6.5.2创建持久卷180
    6.5.3通过创建持久卷声明来获取持久卷182
    6.5.4在pod中使用持久卷声明184
    6.5.5了解使用持久卷和持久卷声明的好处185
    6.5.6回收持久卷186
    6.6持久卷的动态卷配置187
    6.6.1通过StorageClass资源定义可用存储类型188
    6.6.2请求持久卷声明中的存储类188
    6.6.3不指定存储类的动态配置190
    6.7本章小结193
    7ConfigMap和Secret:配置应用程序195
    7.1配置容器化应用程序195
    7.2向容器传递命令行参数196
    7.2.1在Docker中定义命令与参数196
    7.2.2在Kubernetes中覆盖命令和参数199
    7.3为容器设置环境变量200
    7.3.1在容器定义中指定环境变量201
    7.3.2在环境变量值中引用其他环境变量201
    7.3.3了解硬编码环境变量的不足之处202
    7.4利用ConfigMap解耦配置202
    7.4.1ConfigMap介绍202
    7.4.2创建ConfigMap203
    7.4.3给容器传递ConfigMap条目作为环境变量206
    7.4.4一次性传递ConfigMap的所有条目作为环境变量208
    7.4.5传递ConfigMap条目作为命令行参数209
    7.4.6使用configMap卷将条目暴露为文件210
    7.4.7更新应用配置且不重启应用程序216
    7.5使用Secret给容器传递敏感数据218
    7.5.1介绍Secret218
    7.5.2默认令牌Secret介绍218
    7.5.3创建Secret220
    7.5.4对比ConfigMap与Secret221
    7.5.5在pod中使用Secret222
    7.6本章小结228
    8从应用访问pod元数据以及其他资源229
    8.1通过DownwardAPI传递元数据229
    8.1.1了解可用的元数据230
    8.1.2通过环境变量暴露元数据231
    8.1.3通过downwardAPI卷来传递元数据234
    8.2与KubernetesAPI服务器交互237
    8.2.1探究KubernetesRESTAPI238
    8.2.2从pod内部与API服务器进行交互242
    8.2.3通过ambassador容器简化与API服务器的交互248
    8.2.4使用客户端库与API服务器交互251
    8.3本章小结253
    9Deployment:声明式地升级应用255
    9.1更新运行在pod内的应用程序256
    9.1.1删除旧版本pod,使用新版本pod替换257
    9.1.2先创建新pod再删除旧版本pod257
    9.2使用ReplicationController实现自动的滚动升级259
    9.2.1运行第一个版本的应用259
    9.2.2使用kubectl来执行滚动式升级261
    9.2.3为什么kubectlrolling-update已经过时265
    9.3使用Deployment声明式地升级应用.266
    9.3.1创建一个Deployment267
    9.3.2升级Deployment269
    9.3.3回滚Deployment273
    9.3.4控制滚动升级速率276
    9.3.5暂停滚动升级278
    9.3.6阻止出错版本的滚动升级279
    9.4本章小结284
    10StatefulSet:部署有状态的多副本应用285
    10.1复制有状态pod285
    10.1.1运行每个实例都有单独存储的多副本286
    10.1.2每个pod都提供稳定的标识287
    10.2了解Statefulset289
    10.2.1对比Statefulset和ReplicaSet289
    10.2.2提供稳定的网络标识290
    10.2.3为每个有状态实例提供稳定的专属存储292
    10.2.4Statefulset的保障294
    10.3使用Statefulset295
    10.3.1创建应用和容器镜像295
    10.3.2通过Statefulset部署应用296
    10.3.3使用你的pod301
    10.4在Statefulset中发现伙伴节点305
    10.4.1通过DNS实现伙伴间彼此发现306
    10.4.2更新Statefulset308
    10.4.3尝试集群数据存储309
    10.5了解Statefulset如何处理节点失效310
    10.5.1模拟一个节点的网络断开310
    10.5.2手动删除pod312
    10.6本章小结313
    11了解Kubernetes机理315
    11.1了解架构315
    11.1.1Kubernetes组件的分布式特性316
    11.1.2Kubernetes如何使用etcd318
    11.1.3API服务器做了什么322
    11.1.4API服务器如何通知客户端资源变更324
    11.1.5了解调度器325
    11.1.6介绍控制器管理器中运行的控制器327
    11.1.7Kubelet做了什么331
    11.1.8KubernetesServiceProxy的作用332
    11.1.9介绍Kubernetes插件333
    11.1.10总结概览335
    11.2控制器如何协作335
    11.2.1了解涉及哪些组件335
    11.2.2事件链336
    11.2.3观察集群事件337
    11.3了解运行中的pod是什么339
    11.4跨pod网络340
    11.4.1网络应该是什么样的340
    11.4.2深入了解网络工作原理341
    11.4.3引入容器网络接口343
    11.5服务是如何实现的344
    11.5.1引入kube-proxy344
    11.5.2kube-proxy如何使用iptables344
    11.6运行高可用集群346
    11.6.1让你的应用变得高可用346
    11.6.2让Kubernetes控制平面变得高可用347
    11.7本章小结350
    12KubernetesAPI服务器的安全防护351
    12.1了解认证机制351
    12.1.1用户和组352
    12.1.2ServiceAccount介绍353
    12.1.3创建ServiceAccount354
    12.1.4将ServiceAccount分配给pod356
    12.2通过基于角色的权限控制加强集群安全358
    12.2.1介绍RBAC授权插件359
    12.2.2介绍RBAC资源360
    12.2.3使用Role和RoleBinding363
    12.2.4使用ClusterRole和ClusterRoleBinding367
    12.2.5了解默认的ClusterRole和ClusterRoleBinding376
    12.2.6理性地授予授权权限379
    12.3本章小结379
    13保障集群内节点和网络安全381
    13.1在pod中使用宿主节点的Linux命名空间381
    13.1.1在pod中使用宿主节点的网络命名空间382
    13.1.2绑定宿主节点上的端口而不使用宿主节点的网络命名空间383
    13.1.3使用宿主节点的PID与IPC命名空间385
    13.2配置节点的安全上下文386
    13.2.1使用指定用户运行容器387
    13.2.2阻止容器以root用户运行388
    13.2.3使用特权模式运行pod389
    13.2.4为容器单独添加内核功能390
    13.2.5在容器中禁用内核功能391
    13.2.6阻止对容器根文件系统的写入392
    13.2.7容器使用不同用户运行时共享存储卷394
    13.3pod使用安全相关的特性396
    13.3.1PodSecurityPolicy资源介绍396
    13.3.2了解runAsUser、fsGroup和supplementalGroup策略398
    13.3.3配置允许、默认添加、禁止使用的内核功能400
    13.3.4pod可以使用的存储卷类型402
    13.3.5对不同的用户与组分配不同的PodSecurityPolicy402
    13.4隔离pod的网络406
    13.4.1在一个命名空间中启用网络隔离406
    13.4.2允许同一命名空间中的部分pod访问一个服务端pod407
    13.4.3在不同Kubernetes命名空间之间进行网络隔离408
    13.4.4使用CIDR隔离网络409
    13.4.5pod的对外访问流量409
    13.5本章小结410
    14计算资源管理411
    14.1为pod中的容器申请资源411
    14.1.1创建包含资源requests的pod412
    14.1.2资源requests如何影响调度413
    14.1.3CPUrequests如何影响CPU时间分配418
    14.1.4定义和申请自定义资源418
    14.2容器的可用资源419
    14.2.1设置容器可使用资源量的硬419
    14.2.2超过limits421
    14.2.3容器中的应用如何看待limits422
    14.3了解podQoS等级423
    14.3.1定义pod的QoS等级424
    14.3.2内存不足时哪个进程会被杀死426
    14.4为命名空间中的pod设置默认的requests和limits427
    14.4.1LimitRange资源简介428
    14.4.2LimitRange对象的创建428
    14.4.3强制进行430
    14.4.4应用资源requests和limits的默认值430
    14.5命名空间中的可用资源总量431
    14.5.1ResourceQuota资源介绍431
    14.5.2为持久化存储指定配额434
    14.5.3可创建对象的个数434
    14.5.4为特定的pod状态或者QoS等级指定配额435
    14.6监控pod的资源使用量436
    14.6.1收集、获取实际资源使用情况437
    14.6.2保存并分析历史资源的使用统计信息439
    14.7本章小结442
    15自动横向伸缩pod与集群节点443
    15.1pod的横向自动伸缩444
    15.1.1了解自动伸缩过程444
    15.1.2基于CPU使用率进行自动伸缩447
    15.1.3基于内存使用进行自动伸缩453
    15.1.4基于其他自定义度量进行自动伸缩453
    15.1.5确定哪些度量适合用于自动伸缩456
    15.1.6缩容到0个副本456
    15.2pod的纵向自动伸缩456
    15.2.1自动配置资源请求457
    xxviii目录
    15.2.2修改运行中pod的资源请求457
    15.3集群节点的横向伸缩457
    15.3.1ClusterAutoscaler介绍457
    15.3.2启用ClusterAutoscaler459
    15.3.3集群缩容时的服务干扰460
    15.4本章小结461
    16高级调度463
    16.1使用污点和容忍度阻止节点调度到特定节点463
    16.1.1介绍污点和容忍度464
    16.1.2在节点上添加自定义污点466
    16.1.3在pod上添加污点容忍度467
    16.1.4了解污点和污点容忍度的使用场景467
    16.2使用节点亲缘性将pod调度到特定节点上469
    16.2.1指定强制性节点亲缘性规则470
    16.2.2调度pod时优先考虑某些节点472
    16.3使用pod亲缘性与非亲缘性对pod进行协同部署475
    16.3.1使用pod间亲缘性将多个pod部署在同一个节点上475
    16.3.2将pod部署在同一机柜、可用性区域或者地理地域478
    16.3.3表达pod亲缘性优先级取代强制性要求479
    16.3.4利用pod的非亲缘性分开调度pod481
    16.4本章小结483
    17开发应用的很好实践485
    17.1集中一切资源486
    17.2了解pod的生命周期487
    17.2.1应用必须预料到会被杀死或者重新调度487
    17.2.2重新调度死亡的或者部分死亡的pod490
    17.2.3以固定顺序启动pod491
    17.2.4增加生命周期钩子493
    17.2.5了解pod的关闭497
    17.3确保所有的客户端请求都得到了妥善处理500
    17.3.1在pod启动时避免客户端连接断开500
    17.3.2在pod关闭时避免客户端连接断开501
    17.4让应用在Kubernetes中方便运行和管理505
    17.4.1构建可管理的容器镜像505
    17.4.2合理地给镜像打标签,正确地使用ImagePullPolicy506
    17.4.3使用多维度而不是单维度的标签506
    17.4.4通过注解描述每个资源506
    17.4.5给进程终止提供更多的信息507
    17.4.6处理应用日志508
    17.5开发和测试的很好实践510
    17.5.1开发过程中在Kubernetes之外运行应用510
    17.5.2在开发过程中使用Minikube512
    17.5.3发布版本和自动部署资源清单513
    17.5.4使用Ksonnet作为编写YAML/JSONmanifest
    文件的额外选择513
    17.5.5利用持续集成和持续交付514
    17.6本章小结515
    18Kubernetes应用扩展517
    18.1定义自定义API对象517
    18.1.1CustomResourceDefinitions介绍518
    18.1.2使用自定义控制器自动定制资源522
    18.1.3验证自定义对象526
    18.1.4为自定义对象提供自定义API服务器527
    18.2使用Kubernetes服务目录扩展Kubernetes528
    18.2.1服务目录介绍529
    18.2.2服务目录API服务器与控制器管理器介绍530
    18.2.3Service代理和OpenServiceBrokerAPI530
    18.2.4提供服务与使用服务533
    18.2.5解除绑定与取消配置535
    18.2.6服务目录给我们带来了什么535
    18.3基于Kubernetes搭建的平台536
    18.3.1红帽OpenShift容器平台536
    18.3.2DeisWorkflow与Helm539
    18.4本章小结541
    A在多个集群中使用kubectl543
    B使用kubeadm配置多节点集群549
    C使用其他容器运行时563
    DClusterFederation567

    售后保障

    最近浏览

    猜你喜欢

    该商品在当前城市正在进行 促销

    注:参加抢购将不再享受其他优惠活动

    x
    您已成功将商品加入收藏夹

    查看我的收藏夹

    确定

    非常抱歉,您前期未参加预订活动,
    无法支付尾款哦!

    关闭

    抱歉,您暂无任性付资格

    此时为正式期SUPER会员专享抢购期,普通会员暂不可抢购