经典回顾:易撰文章搬运(易撰伪原创视频搬运)
优采云 发布时间: 2022-12-02 02:23经典回顾:易撰文章搬运(易撰伪原创视频搬运)
1、在键盘喵微信编辑器的编辑区右侧找到“导入文章”按钮并点击。
2.输入公众号文章地址。
" />
一个。在电脑上登录微信,点击“公众号”按钮。
b. 找到您要获取文章链接的公众号,点击进入公众号文章内容展示。
C。点击“查看历史新闻”,可以看到该公众号发布的所有文章。
d. 这时候我们需要找到我们的目标文章,点击文章进入文章详情页。
" />
e. 在详情页,点击左上角的“链接”按钮,这个按钮看起来像一个躺着的S,系统会提示你链接已被复制。
3、点击确定,即可再次自由编辑公众号文章。
亦传自媒体工具,基于数据挖掘技术,整合分析各大自媒体平台内容,为自媒体提供实时热点追踪、爆款文章视频批量采集下载、微信文章编辑排版-运营过程中需要用到的媒体作者,标题生成和原创性检测等。
解读:Tanzu 学习系列|一文搞懂 TKGm 1
开场图,伟大的谷歌人Kelsey Hightower说:一个英雄,三个帮派!Kubernetes 是一个很好的平台,它的完善需要借助*敏*感*词*工具链。TKG 发布经过验证的组件工具与 Tanzu 包集成,使 TKG 平台生产准备就绪!
接上一篇,上一篇(以下简称《组件集成(一)》。通过安装配置User-Managed Packages列表cert-manager、contour、external-dns、prometheus、grafana实现Kubernetes证书管理Tanzu 包管理、Ingress controller 南北七层流量、DNS 自动更新、TKG 系统监控等组件。
在生产环境中,日志对于解决问题至关重要。我们需要一个日志管理系统,比如EFK,这是目前最流行的日志管理系统。
本文主要完成TKG日志平台组件的安装配置。
在开始之前,先说一下Cavel这个小工具的基本使用。《组件集成(一)》介绍了Tanzu包和Carvel工具集:ytt、kapp、kbld、imgpkg、kapp-controller、vendir。本文简单介绍 imgpkg 。
imgpkg:通过镜像仓库打包迁移应用的容器镜像及其配置文件。
imgpkg 可用于获取 Tanzu User-Managed Packages 软件包默认配置的模板。
image_url=$(kubectl -n tanzu-package-repo-global get packages fluent-bit.tanzu.vmware.com.1.7.5+vmware.1-tkg.1 -o jsonpath='{.spec.template.spec.fetch[0].imgpkgBundle.image}')<br />imgpkg pull -b $image_url -o /tmp/fluent-bitPulling bundle 'projects.registry.vmware.com/tkg/packages/standard/fluent-bit@sha256:c83d038c57f244aae2819dd77dc5184bb3e1ec96524d3f6a09fe8a244b7bc9e4' Extracting layer 'sha256:48456e4452a35786ed148a3f1a9ede1427f8fccb0079a0eb0904820211b6cebd' (1/1)<br />Locating image lock file images...One or more images not found in bundle repo; skipping lock file update<br />[workload02-admin@workload02|default] [root@bootstrap config]# pwd/tmp/fluent-bit/config[workload02-admin@workload02|default] [root@bootstrap config]# lsfluent-bit.yaml values.yaml _ytt_lib<br />
备注:为了方便测试和理解,管理网络、业务网络、节点网络均使用同一个网络mgmt(生产部署需要分开);新部署VMware vRealize Log Insight日志平台。
01
安装和配置 EFK
EFK 是 Elasticsearch、Fluentbit 和 Kibana 的缩写。是k8s集群常用的日志方案。EFK 不是一个软件,而是一套解决方案。开源软件之间的相互协作,可以高效满足多种场合的应用。目前主流的一个日志系统。EFK是三个开源软件的缩写,分别是:Elasticsearch、Fluentbit、Kibana,其中ELasticsearch负责日志存储和搜索,Fluentbit负责采集
日志。
如果是正式的生产系统,建议添加Kafka做日志缓存,Logstash做日志过滤和格式化。参考部署方式如下:
备注:目前Tanzu User-Managed Packages仅收录
Fluentbit;Elasticsearch和Kibana的安装配置方式可以参考官方文档。
1.以helm模式安装Elasticsearch。
通过修改value.yaml配置文件,可以调整pod副本数、存储容量、暴露端口等。
[workload02-admin@workload02|default] [root@bootstrap elasticsearch]# kubectl create ns efknamespace/efk created[workload02-admin@workload02|default] [root@bootstrap elasticsearch]# k get nsNAME STATUS AGEavi-system Active 3h50mdefault Active 3h55mefk Active 4skube-node-lease Active 3h55mkube-public Active 3h55mkube-system Active 3h55mtanzu-package-repo-global Active 3h54mtkg-system Active 3h55mtkg-system-public Active 3h55m[workload02-admin@workload02|default] [root@bootstrap efk]# helm install elasticsearch --namespace efk ./elasticsearchW1216 20:04:03.901964 1071106 warnings.go:70] policy/v1beta1 PodDisruptionBudget is deprecated in v1.21+, unavailable in v1.25+; use policy/v1 PodDisruptionBudgetW1216 20:04:03.990282 1071106 warnings.go:70] policy/v1beta1 PodDisruptionBudget is deprecated in v1.21+, unavailable in v1.25+; use policy/v1 PodDisruptionBudgetNAME: elasticsearchLAST DEPLOYED: Thu Dec 16 20:04:03 2021NAMESPACE: efkSTATUS: deployedREVISION: 1NOTES:1. Watch all cluster members come up. $ kubectl get pods --namespace=efk -l app=elasticsearch-master -w2. Test cluster health using Helm test. $ helm test elasticsearch<br />
2、查看Elasticsearch pod的运行状态。
[workload02-admin@workload02|default] [root@bootstrap efk]# kubectl get pods,svc --namespace=efkNAME READY STATUS RESTARTS AGEpod/elasticsearch-master-0 1/1 Running 0 87s<br />NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEservice/elasticsearch-master ClusterIP 100.64.238.64 9200/TCP,9300/TCP 88sservice/elasticsearch-master-headless ClusterIP None 9200/TCP,9300/TCP 88s<br />
3、以helm方式安装Kibana,通过修改value.yaml配置文件进行连接(同一个集群可以使用服务名连接)。
[workload02-admin@workload02|default] [root@bootstrap efk]# helm install kibana --namespace efk ./kibanaNAME: kibanaLAST DEPLOYED: Thu Dec 16 20:11:55 2021NAMESPACE: efkSTATUS: deployedREVISION: 1TEST SUITE: None<br /><br /><br />
4. 确保 pod 和服务正常运行。使用 LoadBalancer 暴露服务(在本测试中使用)或使用 ingress 暴露它们。
访问IP::5601
[workload02-admin@workload02|efk] [root@bootstrap kibana]# k get pod,svc -n efkNAME READY STATUS RESTARTS AGEpod/elasticsearch-master-0 1/1 Running 0 3m12spod/kibana-kibana-5d9d6b5bd4-hbh9t 1/1 Running 0 24m<br />NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEservice/elasticsearch-master ClusterIP 100.67.50.87 9200/TCP,9300/TCP 3m12sservice/elasticsearch-master-headless ClusterIP None 9200/TCP,9300/TCP 3m13sservice/kibana-kibana LoadBalancer 100.66.40.219 192.168.110.56 5601:30760/TCP 24m<br />
" />
5. 查看User-Managed Packages中的Fluentbit版本信息。
[workload02-admin@workload02|default] [root@bootstrap ~]# tanzu package available list fluent-bit.tanzu.vmware.com\ Retrieving package versions for fluent-bit.tanzu.vmware.com... NAME VERSION RELEASED-AT fluent-bit.tanzu.vmware.com 1.7.5+vmware.1-tkg.1 2021-05-13T18:00:00Z<br />
6.使用imgpkg工具导出value.yaml配置文件。
image_url=$(kubectl -n tanzu-package-repo-global get packages fluent-bit.tanzu.vmware.com.1.7.5+vmware.1-tkg.1 -o jsonpath='{.spec.template.spec.fetch[0].imgpkgBundle.image}')imgpkg pull -b $image_url -o /tmp/fluent-bitPulling bundle 'projects.registry.vmware.com/tkg/packages/standard/fluent-bit@sha256:c83d038c57f244aae2819dd77dc5184bb3e1ec96524d3f6a09fe8a244b7bc9e4' Extracting layer 'sha256:48456e4452a35786ed148a3f1a9ede1427f8fccb0079a0eb0904820211b6cebd' (1/1)<br />Locating image lock file images...One or more images not found in bundle repo; skipping lock file update<br />Succeededcp /tmp/fluent-bit/config/values.yaml ./fluent-bit-data-values.yaml
7、修改value.yaml,将日志转发到ES设置(集群地址100.67.50.87,端口9200)。注意删除最上面以'#@'开头的两行,否则会报错。
fluent_bit: config: #! https://docs.fluentbit.io/manual/administration/configuring-fluent-bit/variables service: | [Service] Flush 5 Log_Level info Daemon off Parsers_File parsers.conf HTTP_Server On HTTP_Listen 0.0.0.0 HTTP_Port 2020 outputs: | [OUTPUT] Name es Match * Host 100.67.50.87 Port 9200
8、安装fluent-bit,确保pod正常运行。
[workload02-admin@workload02|efk] [root@bootstrap ~]# tanzu package install fluent-bit --package-name fluent-bit.tanzu.vmware.com --version 1.7.5+vmware.1-tkg.1 --values-file fluent-bit-data-values.yaml --namespace efk- Installing package 'fluent-bit.tanzu.vmware.com'| Getting namespace 'efk'| Getting package metadata for 'fluent-bit.tanzu.vmware.com'| Creating service account 'fluent-bit-efk-sa'| Creating cluster admin role 'fluent-bit-efk-cluster-role'| Creating cluster role binding 'fluent-bit-efk-cluster-rolebinding'| Creating secret 'fluent-bit-efk-values'- Creating package resource/ Package install status: Reconciling<br />Please consider using 'tanzu package installed update' to update the installed package with correct settings<br /><br />[workload02-admin@workload02|efk] [root@bootstrap ~]# k get pod,svc -n tanzu-system-loggingNAME READY STATUS RESTARTS AGEpod/fluent-bit-f6md2 1/1 Running 0 4m14spod/fluent-bit-g4rck 1/1 Running 0 4m14spod/fluent-bit-htfqt 1/1 Running 0 4m14spod/fluent-bit-vzgz4 1/1 Running 0 4m14s<br />
备注:若后期修改参数,请参考以下更新参数方法
[workload02-admin@workload02|efk] [root@bootstrap ~]# tanzu package installed update fluent-bit --package-name fluent-bit.tanzu.vmware.com --version 1.7.5+vmware.1-tkg.1 --values-file fluent-bit-data-values.yaml| Updating package 'fluent-bit'- Getting package install for 'fluent-bit'| Updating secret 'fluent-bit-default-values'| Updating package install for 'fluent-bit'<br /> Updated package install 'fluent-bit' in namespace 'default'<br />
9、使用第4步服务暴露IP,登录查看。
10. 创建一个简单的索引模式。
11. 查看转发到 Elasticsearch 的日志。
02
配置日志转发到 vRealize Log Insight
Tanzu TKG解决方案,包括底层使用的vSphere虚拟化、存储(可以使用VSAN)、网络(可以使用NSX)、用于负载均衡和业务发布的AVI等应用组件,以及原创
制作环境可能大量存在 物理、虚拟和云环境扩展了基础架构和应用程序部署。日志对于排查问题至关重要,需要统一的日志解决方案。
VMware vRealize Log Insight 就是这样的解决方案,vRealize Log lnsight 提供高度可扩展的异构日志管理功能,具有直观实用的仪表盘、全面的分析功能和广泛的第三方扩展性,内置硬件和软件支持列表,提供外在的开箱即用的日志分析功能可以提供深入的操作洞察力并加快故障排除速度。
TKG可以通过部署VMware Fluentd vRealize Log Insight插件(支持K8s的多个发行版)与vRealize Log Insight对接。
1、登录vRealize Log Insight,在日志源容器菜单下,查看VMware Fluentd vRealize Log Insight插件的部署步骤。
2.按照部署步骤部署VMware Fluentd vRealize Log Insight,部署后查看pod状态。
<br />[workload02-admin@workload02|efk] [root@bootstrap kibana]# k get pod -n kube-system|grep log-collectorlog-collector-62j2m 1/1 Running 0 167mlog-collector-cbrt9 1/1 Running 0 167mlog-collector-htzhk 1/1 Running 0 167m<br />
3、登录vRealize Log Insight的交互分析,可以查看转发到vRealize Log Insight的日志。
4、通过原创
日志包,可以对接vsphere VC和AVI负载均衡器,为整个基础设施全面采集
日志。
5、内容包商城可以支持多种设备、主机、OS、中间件等日志采集器。
" />
在本文结束之前,我想介绍一个小工具彩蛋:Octant
八分圆
Octant 是 VMWare 开源的一个 Kubernetes Dashboard 可视化工具,是一个帮助开发者了解应用程序如何在 Kubernetes 集群中运行的工具。它可视化 Kubernetes 对象的依赖关系,将本地端口请求转发给正在运行的 Pod,查看 Pod 日志,浏览不同的集群。此外,用户可以通过安装或编写插件的方式扩展Octant的功能。可以作为kubectl的视觉补充。与Kubernetes自带的Dashboard相比,最大的亮点在于可以编写插件来扩展Octant的功能,为Octant提供了更多的可能性。
知乎地址:
Octant最大的亮点和想象空间就是插件功能。我们来测试一下CNI antrea的插件功能。
Octant有多种部署方式,参考官方链接。本次测试使用直接部署在 Kubernetes 内部。
1.创建octant使用的secret文件,里面记录了admin kubeconfig信息
[workload02-admin@workload02|default] [root@bootstrap ~]# tanzu cluster kubeconfig get workload02 --admin --export-file workload02adminCredentials of cluster 'workload02' have been savedYou can now access the cluster by running 'kubectl config use-context workload02-admin@workload02' under path 'workload02admin'<br />[workload02-admin@workload02|default] [root@bootstrap ~]# kubectl create secret generic octant-kubeconfig --from-file=admin.conf=workload02admin -n kube-systemsecret/octant-kubeconfig created<br />
2.直接应用yaml文件安装,注意修改服务类型。默认的 NodePort 模式是 LoadBalancer。部署完成后查看服务暴露的IP为
yaml文件地址:
注意TKGm 1.4目前支持的antrea是v0.13.0,修改antrea-octant.yml的镜像地址为:
/antrea/octant-antrea-ubuntu:v0.13.0
[workload02-admin@workload02|default] [root@bootstrap ~]# kubectl apply -f octant.yamlservice/antrea-octant createddeployment.apps/antrea-octant created[workload02-admin@workload02|default] [root@bootstrap ~]# k get pod,svc -n kube-system |grep antrea-octantpod/antrea-octant-77df764cb7-r7phc 1/1 Running 0 3m46sservice/antrea-octant LoadBalancer 100.67.203.232 192.168.110.46 80:31467/TCP 3m47
3.登录,设置为暗夜模式,可以查看正在运行的pod,查看pod日志,浏览不同的ns等。
4.插件是Octant的一大特色,可以使用antrea插件,Traceflow网络流量跟踪。
更多精彩,待续……
-结尾-
本周互动话题
关于 VMware 虚拟化技术,您想了解什么?
点击右下角的“写消息”
听你的声音
不想错过新闻欢迎把文章分享到朋友圈关注我
热读推荐
VMware宝藏馆上线,史上最强干货阵地,错过就是错过一亿!点播VMworld大会开启,精彩还在继续
非凡创意 洞察未来|VMworld 2021中国线上大会圆满落幕