Отправлять логи из Kubernetes через Fluentd в Cloudwatch - PullRequest
0 голосов
/ 04 июня 2019

Я пытаюсь понять облачную инфраструктуру с помощью Kubernetes и AWS

Моя пробная версия здесь - отправлять журналы из моих контейнеров в облачные наблюдения.Приложение (образец Django с ритмом сельдерея):

Мои модули:

NAMESPACE     NAME                                                                  READY   STATUS             RESTARTS   AGE
default       celery-beat-76dfdcc9d8-hrkzv                                          1/1     Running            0          93m
default       celery-worker-6f4d9f4985-66jfh                                        1/1     Running            0          93m
default       django-6db9754bd6-hnm84                                               1/1     Running            0          93m
default       django-migrations-9nb85                                               0/1     Completed          0          93m
default       flower-b977fcbd5-mdjrp                                                0/1     CrashLoopBackOff   22         93m
default       redis-fd65865fc-mfbwt                                                 1/1     Running            0          93m
kube-system   dns-controller-64b775df4d-trkvf                                       1/1     Running            1          9h
kube-system   etcd-manager-events-ip-172-20-45-193.us-west-1.compute.internal       1/1     Running            1          9h
kube-system   etcd-manager-main-ip-172-20-45-193.us-west-1.compute.internal         1/1     Running            1          9h
kube-system   kube-apiserver-ip-172-20-45-193.us-west-1.compute.internal            1/1     Running            3          9h
kube-system   kube-controller-manager-ip-172-20-45-193.us-west-1.compute.internal   1/1     Running            1          9h
kube-system   kube-dns-57dd96bb49-v6vqs                                             3/3     Running            3          9h
kube-system   kube-dns-57dd96bb49-vfrx9                                             3/3     Running            3          9h
kube-system   kube-dns-autoscaler-867b9fd49d-pg9j5                                  1/1     Running            1          9h
kube-system   kube-proxy-ip-172-20-45-193.us-west-1.compute.internal                1/1     Running            1          9h
kube-system   kube-proxy-ip-172-20-47-25.us-west-1.compute.internal                 1/1     Running            1          9h
kube-system   kube-proxy-ip-172-20-93-150.us-west-1.compute.internal                1/1     Running            1          9h
kube-system   kube-scheduler-ip-172-20-45-193.us-west-1.compute.internal            1/1     Running            1          9h
kube-system   kubernetes-dashboard-65c76f6c97-sdgjg                                 1/1     Running            1          9h
kube-system   tiller-deploy-58d57fd669-bzgfl                                        1/1     Running            1          9h

Я получил доступ к кластерам приложений с помощью панели управления Kubernetes.Под секцией pods - Журналы смогли просмотреть пару журналов pods.

enter image description here

Теперь я пытаюсь отправить эти Журналы в AWS CLoudwatch и затем передать в AWSELasticSearch

Следующая пара в соответствии с

Создано ведение журнала пространства имен

 **kubectl create namespace logging**
> helm init

my values.yaml

image:
  repository: fluent/fluentd-kubernetes-daemonset
  tag: v0.12.33-cloudwatch
## Specify an imagePullPolicy (Required)
## It's recommended to change this to 'Always' if the image tag is 'latest'
## ref: http://kubernetes.io/docs/user-guide/images/#updating-images
  pullPolicy: IfNotPresent

## Configure resource requests and limits
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
##
resources:
  limits:
    cpu: 100m
    memory: 200Mi
  requests:
    cpu: 100m
    memory: 200Mi

# hostNetwork: false

## Add tolerations if specified
tolerations: []
#   - key: node-role.kubernetes.io/master
#     operator: Exists
#     effect: NoSchedule

annotations: {}

awsRegion: us-west-1
awsRole:
logGroupName: logging

Применены изменения (Запущено какroot)

установка helm --name fluentd -f ./values.yaml инкубатор / fluentd-cloudwatch - регистрация пространства имен

Когда после выполнения fluentd сообщает CrashLoopBackOff

регистрация fluentd-fluentd-cloudwatch-b9dlb
0/1 CrashLoopBackOff 1 16s запись
fluentd-fluentd-cloudwatch-jm229
0/1 CrashLoopBackOff 1 16s

Журнал

kubectl logs fluentd-fluentd-cloudwatch-b9dlb --namespace logging

standard_init_linux.go: 190: пользовательский процесс exec вызвал "нет такого файла или каталога"

Запрос некоторых указаний

...