-
Notifications
You must be signed in to change notification settings - Fork 979
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
919 changed files
with
24,192 additions
and
108 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
**/*.gitkeep |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
# AUTOMATICALLY GENERATED | ||
# DO NOT EDIT THIS FILE DIRECTLY, USE /templates/Dockerfile.erb | ||
|
||
# For multiarch build on Docker hub automated build. | ||
FROM golang:alpine AS builder | ||
WORKDIR /go | ||
ENV QEMU_DOWNLOAD_SHA256 5db25cccb40ac7b1ca857653b883376b931d91b06ff34ffe70dcf6180bd07bb8 | ||
RUN apk add curl --no-cache | ||
RUN curl -sL -o qemu-6.0.0.balena1-aarch64.tar.gz https://github.com/balena-io/qemu/releases/download/v6.0.0%2Bbalena1/qemu-6.0.0.balena1-aarch64.tar.gz && echo "$QEMU_DOWNLOAD_SHA256 *qemu-6.0.0.balena1-aarch64.tar.gz" | sha256sum -c - | tar zxvf qemu-6.0.0.balena1-aarch64.tar.gz -C . && mv qemu-6.0.0+balena1-aarch64/qemu-aarch64-static . | ||
|
||
FROM fluent/fluentd:v1.18.0-debian-arm64-1.0 | ||
COPY --from=builder /go/qemu-aarch64-static /usr/bin/ | ||
|
||
LABEL maintainer="Eduardo Silva <[email protected]>" | ||
USER root | ||
WORKDIR /home/fluent | ||
ENV PATH /fluentd/vendor/bundle/ruby/3.2.0/bin:$PATH | ||
ENV GEM_PATH /fluentd/vendor/bundle/ruby/3.2.0 | ||
ENV GEM_HOME /fluentd/vendor/bundle/ruby/3.2.0 | ||
# skip runtime bundler installation | ||
ENV FLUENTD_DISABLE_BUNDLER_INJECTION 1 | ||
|
||
COPY Gemfile* /fluentd/ | ||
RUN buildDeps="sudo make gcc g++ libc-dev libffi-dev" \ | ||
runtimeDeps="pkg-config libxslt-dev libxml2-dev" \ | ||
&& apt-get update \ | ||
&& apt-get upgrade -y \ | ||
&& apt-get install \ | ||
-y --no-install-recommends \ | ||
$buildDeps $runtimeDeps net-tools \ | ||
&& gem install bundler --version 2.4.17 \ | ||
&& bundle config silence_root_warning true && bundle config build.nokogiri --use-system-libraries \ | ||
&& bundle install --gemfile=/fluentd/Gemfile --path=/fluentd/vendor/bundle \ | ||
&& SUDO_FORCE_REMOVE=yes \ | ||
apt-get purge -y --auto-remove \ | ||
-o APT::AutoRemove::RecommendsImportant=false \ | ||
$buildDeps \ | ||
'*-dev' \ | ||
&& rm -rf /var/lib/apt/lists/* \ | ||
&& gem sources --clear-all \ | ||
&& rm -rf /tmp/* /var/tmp/* /usr/lib/ruby/gems/*/cache/*.gem | ||
# Copy configuration files | ||
COPY ./conf/fluent.conf /fluentd/etc/ | ||
COPY ./conf/systemd.conf /fluentd/etc/ | ||
COPY ./conf/kubernetes.conf /fluentd/etc/ | ||
COPY ./conf/prometheus.conf /fluentd/etc/ | ||
COPY ./conf/tail_container_parse.conf /fluentd/etc/ | ||
COPY ./conf/kubernetes/*.conf /fluentd/etc/kubernetes/ | ||
RUN touch /fluentd/etc/disable.conf | ||
|
||
# Copy plugins | ||
COPY plugins /fluentd/plugins/ | ||
COPY entrypoint.sh /fluentd/entrypoint.sh | ||
|
||
# Environment variables | ||
ENV FLUENTD_OPT="" | ||
ENV FLUENTD_CONF="fluent.conf" | ||
# Override LD_PRELOAD in fluentd docker image | ||
# Set "/usr/lib/libjemalloc.so.2" if you want to enable jemalloc explicitly | ||
ENV LD_PRELOAD="" | ||
|
||
# Overwrite ENTRYPOINT to run fluentd as root for /var/log / /var/lib | ||
ENTRYPOINT ["tini", "--", "/fluentd/entrypoint.sh"] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
# AUTOMATICALLY GENERATED | ||
# DO NOT EDIT THIS FILE DIRECTLY, USE /templates/Gemfile.erb | ||
|
||
source "https://rubygems.org" | ||
|
||
gem "fluentd", "1.18.0" | ||
gem "oj", "~> 3.15.0" | ||
gem "rexml", "~> 3.2.5" | ||
gem "fluent-plugin-multi-format-parser", "~> 1.0.0" | ||
gem "fluent-plugin-concat", "~> 2.5.0" | ||
gem "fluent-plugin-grok-parser", "~> 2.6.2" | ||
gem "fluent-plugin-prometheus", "~> 2.1.0" | ||
gem 'fluent-plugin-json-in-json-2', ">= 1.0.2" | ||
gem "fluent-plugin-record-modifier", "~> 2.1.0" | ||
gem "fluent-plugin-detect-exceptions", "~> 0.0.13" | ||
gem "fluent-plugin-rewrite-tag-filter", "~> 2.4.0" | ||
gem "fluent-plugin-parser-cri", "~> 0.1.0" | ||
gem "azure-storage-blob", "~> 2.0" | ||
gem "fluent-plugin-azure-storage-append-blob-lts", "~> 0.7.0" | ||
gem "fluent-plugin-kubernetes_metadata_filter", "~> 3.6.0" | ||
gem "ffi" | ||
gem "fluent-plugin-systemd", "~> 1.1.0" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,192 @@ | ||
GEM | ||
remote: https://rubygems.org/ | ||
specs: | ||
addressable (2.8.7) | ||
public_suffix (>= 2.0.2, < 7.0) | ||
azure-storage-blob (2.0.3) | ||
azure-storage-common (~> 2.0) | ||
nokogiri (~> 1, >= 1.10.8) | ||
azure-storage-common (2.0.4) | ||
faraday (~> 1.0) | ||
faraday_middleware (~> 1.0, >= 1.0.0.rc1) | ||
net-http-persistent (~> 4.0) | ||
nokogiri (~> 1, >= 1.10.8) | ||
base64 (0.2.0) | ||
concurrent-ruby (1.3.4) | ||
connection_pool (2.4.1) | ||
cool.io (1.9.0) | ||
csv (3.3.1) | ||
domain_name (0.6.20240107) | ||
drb (2.2.1) | ||
faraday (1.10.4) | ||
faraday-em_http (~> 1.0) | ||
faraday-em_synchrony (~> 1.0) | ||
faraday-excon (~> 1.1) | ||
faraday-httpclient (~> 1.0) | ||
faraday-multipart (~> 1.0) | ||
faraday-net_http (~> 1.0) | ||
faraday-net_http_persistent (~> 1.0) | ||
faraday-patron (~> 1.0) | ||
faraday-rack (~> 1.0) | ||
faraday-retry (~> 1.0) | ||
ruby2_keywords (>= 0.0.4) | ||
faraday-em_http (1.0.0) | ||
faraday-em_synchrony (1.0.0) | ||
faraday-excon (1.1.0) | ||
faraday-httpclient (1.0.1) | ||
faraday-multipart (1.1.0) | ||
multipart-post (~> 2.0) | ||
faraday-net_http (1.0.2) | ||
faraday-net_http_persistent (1.2.0) | ||
faraday-patron (1.0.0) | ||
faraday-rack (1.0.0) | ||
faraday-retry (1.0.3) | ||
faraday_middleware (1.2.1) | ||
faraday (~> 1.0) | ||
ffi (1.17.0) | ||
ffi-compiler (1.3.2) | ||
ffi (>= 1.15.5) | ||
rake | ||
fluent-config-regexp-type (1.0.0) | ||
fluentd (> 1.0.0, < 2) | ||
fluent-plugin-azure-storage-append-blob-lts (0.7.0) | ||
azure-storage-blob (~> 2.0) | ||
fluentd (>= 0.14.10, < 2) | ||
fluent-plugin-concat (2.5.0) | ||
fluentd (>= 0.14.0, < 2) | ||
fluent-plugin-detect-exceptions (0.0.16) | ||
fluentd (>= 1.14.2) | ||
fluent-plugin-grok-parser (2.6.2) | ||
fluentd (>= 0.14.6, < 2) | ||
fluent-plugin-json-in-json-2 (1.0.2) | ||
fluentd (>= 0.14.0, < 2) | ||
yajl-ruby (~> 1.0) | ||
fluent-plugin-kubernetes_metadata_filter (3.6.0) | ||
fluentd (>= 0.14.0, < 1.19) | ||
kubeclient (>= 4.0.0, < 5.0.0) | ||
lru_redux | ||
fluent-plugin-multi-format-parser (1.0.0) | ||
fluentd (>= 0.14.0, < 2) | ||
fluent-plugin-parser-cri (0.1.1) | ||
fluentd (>= 1) | ||
fluent-plugin-prometheus (2.1.0) | ||
fluentd (>= 1.9.1, < 2) | ||
prometheus-client (>= 2.1.0) | ||
fluent-plugin-record-modifier (2.1.1) | ||
fluentd (>= 1.0, < 2) | ||
fluent-plugin-rewrite-tag-filter (2.4.0) | ||
fluent-config-regexp-type | ||
fluentd (>= 0.14.2, < 2) | ||
fluent-plugin-systemd (1.1.0) | ||
fluentd (>= 0.14.11, < 2) | ||
systemd-journal (~> 2.0.0) | ||
fluentd (1.18.0) | ||
base64 (~> 0.2) | ||
bundler | ||
cool.io (>= 1.4.5, < 2.0.0) | ||
csv (~> 3.2) | ||
drb (~> 2.2) | ||
http_parser.rb (>= 0.5.1, < 0.9.0) | ||
logger (~> 1.6) | ||
msgpack (>= 1.3.1, < 2.0.0) | ||
serverengine (>= 2.3.2, < 3.0.0) | ||
sigdump (~> 0.2.5) | ||
strptime (>= 0.2.4, < 1.0.0) | ||
tzinfo (>= 1.0, < 3.0) | ||
tzinfo-data (~> 1.0) | ||
webrick (~> 1.4) | ||
yajl-ruby (~> 1.0) | ||
http (5.2.0) | ||
addressable (~> 2.8) | ||
base64 (~> 0.1) | ||
http-cookie (~> 1.0) | ||
http-form_data (~> 2.2) | ||
llhttp-ffi (~> 0.5.0) | ||
http-accept (1.7.0) | ||
http-cookie (1.0.8) | ||
domain_name (~> 0.5) | ||
http-form_data (2.3.0) | ||
http_parser.rb (0.8.0) | ||
jsonpath (1.1.5) | ||
multi_json | ||
kubeclient (4.12.0) | ||
http (>= 3.0, < 6.0) | ||
jsonpath (~> 1.0) | ||
recursive-open-struct (~> 1.1, >= 1.1.1) | ||
rest-client (~> 2.0) | ||
llhttp-ffi (0.5.0) | ||
ffi-compiler (~> 1.0) | ||
rake (~> 13.0) | ||
logger (1.6.4) | ||
lru_redux (1.1.0) | ||
mime-types (3.6.0) | ||
logger | ||
mime-types-data (~> 3.2015) | ||
mime-types-data (3.2024.1203) | ||
mini_portile2 (2.8.8) | ||
msgpack (1.7.5) | ||
multi_json (1.15.0) | ||
multipart-post (2.4.1) | ||
net-http-persistent (4.0.5) | ||
connection_pool (~> 2.2) | ||
netrc (0.11.0) | ||
nokogiri (1.17.2) | ||
mini_portile2 (~> 2.8.2) | ||
racc (~> 1.4) | ||
oj (3.15.1) | ||
ostruct (0.6.1) | ||
prometheus-client (4.2.3) | ||
base64 | ||
public_suffix (6.0.1) | ||
racc (1.8.1) | ||
rake (13.2.1) | ||
recursive-open-struct (1.3.1) | ||
ostruct | ||
rest-client (2.1.0) | ||
http-accept (>= 1.7.0, < 2.0) | ||
http-cookie (>= 1.0.2, < 2.0) | ||
mime-types (>= 1.16, < 4.0) | ||
netrc (~> 0.8) | ||
rexml (3.2.9) | ||
strscan | ||
ruby2_keywords (0.0.5) | ||
serverengine (2.4.0) | ||
base64 (~> 0.1) | ||
logger (~> 1.4) | ||
sigdump (~> 0.2.2) | ||
sigdump (0.2.5) | ||
strptime (0.2.5) | ||
strscan (3.1.2) | ||
systemd-journal (2.0.0) | ||
ffi (~> 1.9) | ||
tzinfo (2.0.6) | ||
concurrent-ruby (~> 1.0) | ||
tzinfo-data (1.2024.2) | ||
tzinfo (>= 1.0.0) | ||
webrick (1.9.1) | ||
yajl-ruby (1.4.3) | ||
|
||
PLATFORMS | ||
ruby | ||
|
||
DEPENDENCIES | ||
azure-storage-blob (~> 2.0) | ||
ffi | ||
fluent-plugin-azure-storage-append-blob-lts (~> 0.7.0) | ||
fluent-plugin-concat (~> 2.5.0) | ||
fluent-plugin-detect-exceptions (~> 0.0.13) | ||
fluent-plugin-grok-parser (~> 2.6.2) | ||
fluent-plugin-json-in-json-2 (>= 1.0.2) | ||
fluent-plugin-kubernetes_metadata_filter (~> 3.6.0) | ||
fluent-plugin-multi-format-parser (~> 1.0.0) | ||
fluent-plugin-parser-cri (~> 0.1.0) | ||
fluent-plugin-prometheus (~> 2.1.0) | ||
fluent-plugin-record-modifier (~> 2.1.0) | ||
fluent-plugin-rewrite-tag-filter (~> 2.4.0) | ||
fluent-plugin-systemd (~> 1.1.0) | ||
fluentd (= 1.18.0) | ||
oj (~> 3.15.0) | ||
rexml (~> 3.2.5) | ||
|
||
BUNDLED WITH | ||
2.4.19 |
36 changes: 36 additions & 0 deletions
36
docker-image/v1.18/arm64/debian-azureblob/conf/fluent.conf
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
|
||
# AUTOMATICALLY GENERATED | ||
# DO NOT EDIT THIS FILE DIRECTLY, USE /templates/conf/fluent.conf.erb | ||
|
||
@include "#{ENV['FLUENTD_SYSTEMD_CONF'] || 'systemd'}.conf" | ||
@include "#{ENV['FLUENTD_PROMETHEUS_CONF'] || 'prometheus'}.conf" | ||
@include kubernetes.conf | ||
@include conf.d/*.conf | ||
|
||
<match **> | ||
@type azure-storage-append-blob | ||
@id out_azure_storage_append_blob | ||
|
||
azure_cloud "#{ENV['AZUREBLOB_AZURE_CLOUD']}" | ||
azure_storage_account "#{ENV['AZUREBLOB_ACCOUNT_NAME']}" | ||
azure_storage_access_key "#{ENV['AZUREBLOB_ACCOUNT_KEY']}" | ||
azure_storage_connection_string "#{ENV['AZUREBLOB_CONNECTION_STRING']}" | ||
azure_storage_sas_token "#{ENV['AZUREBLOB_SAS_TOKEN']}" | ||
azure_container "#{ENV['AZUREBLOB_CONTAINER']}" | ||
azure_imds_api_version "#{ENV['AZUREBLOB_IMDS_API_VERSION']}" | ||
azure_token_refresh_interval "#{ENV['AZUREBLOB_TOKEN_REFRESH_INTERVAL']}" | ||
auto_create_container true | ||
path "#{ENV['AZUREBLOB_LOG_PATH']}" | ||
azure_object_key_format %{path}%{time_slice}_%{index}.log | ||
time_slice_format %Y%m%d-%H | ||
# if you want to use %{tag} or %Y/%m/%d/ like syntax in path / azure_blob_name_format, | ||
# need to specify tag for %{tag} and time for %Y/%m/%d in <buffer> argument. | ||
<buffer> | ||
@type file | ||
path /var/log/fluent/azurestorageappendblob | ||
timekey 60 # 1 minute | ||
timekey_wait 60 | ||
timekey_use_utc true # use utc | ||
chunk_limit_size 256m | ||
</buffer> | ||
</match> |
39 changes: 39 additions & 0 deletions
39
docker-image/v1.18/arm64/debian-azureblob/conf/kubernetes.conf
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,39 @@ | ||
# AUTOMATICALLY GENERATED | ||
# DO NOT EDIT THIS FILE DIRECTLY, USE /templates/conf/kubernetes.conf.erb | ||
|
||
<label @FLUENT_LOG> | ||
<match fluent.**> | ||
@type null | ||
@id ignore_fluent_logs | ||
</match> | ||
</label> | ||
|
||
@include kubernetes/cluster-autoscaler.conf | ||
@include kubernetes/containers.conf | ||
@include kubernetes/docker.conf | ||
@include kubernetes/etcd.conf | ||
@include kubernetes/glbc.conf | ||
@include kubernetes/kube-apiserver-audit.conf | ||
@include kubernetes/kube-apiserver.conf | ||
@include kubernetes/kube-controller-manager.conf | ||
@include kubernetes/kube-proxy.conf | ||
@include kubernetes/kube-scheduler.conf | ||
@include kubernetes/kubelet.conf | ||
@include kubernetes/rescheduler.conf | ||
@include kubernetes/salt.conf | ||
@include kubernetes/startupscript.conf | ||
|
||
|
||
<filter kubernetes.**> | ||
@type kubernetes_metadata | ||
@id filter_kube_metadata | ||
kubernetes_url "#{ENV['FLUENT_FILTER_KUBERNETES_URL'] || (host = ENV.fetch('KUBERNETES_SERVICE_HOST'); port = ENV.fetch('KUBERNETES_SERVICE_PORT'); host = (IPAddr.new(host).ipv6? ? '[' + host + ']' : host rescue host); 'https://' + host + ':' + port + '/api')}" | ||
verify_ssl "#{ENV['KUBERNETES_VERIFY_SSL'] || true}" | ||
ca_file "#{ENV['KUBERNETES_CA_FILE']}" | ||
skip_labels "#{ENV['FLUENT_KUBERNETES_METADATA_SKIP_LABELS'] || 'false'}" | ||
skip_container_metadata "#{ENV['FLUENT_KUBERNETES_METADATA_SKIP_CONTAINER_METADATA'] || 'false'}" | ||
skip_master_url "#{ENV['FLUENT_KUBERNETES_METADATA_SKIP_MASTER_URL'] || 'false'}" | ||
skip_namespace_metadata "#{ENV['FLUENT_KUBERNETES_METADATA_SKIP_NAMESPACE_METADATA'] || 'false'}" | ||
watch "#{ENV['FLUENT_KUBERNETES_WATCH'] || 'true'}" | ||
</filter> | ||
|
11 changes: 11 additions & 0 deletions
11
docker-image/v1.18/arm64/debian-azureblob/conf/kubernetes/cluster-autoscaler.conf
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
<source> | ||
@type tail | ||
@id in_tail_cluster_autoscaler | ||
multiline_flush_interval 5s | ||
path /var/log/cluster-autoscaler.log | ||
pos_file "#{File.join('/var/log/', ENV.fetch('FLUENT_POS_EXTRA_DIR', ''), 'fluentd-cluster-autoscaler.log.pos')}" | ||
tag cluster-autoscaler | ||
<parse> | ||
@type kubernetes | ||
</parse> | ||
</source> |
10 changes: 10 additions & 0 deletions
10
docker-image/v1.18/arm64/debian-azureblob/conf/kubernetes/containers.conf
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
<source> | ||
@type tail | ||
@id in_tail_container_logs | ||
path "#{ENV['FLUENT_CONTAINER_TAIL_PATH'] || '/var/log/containers/*.log'}" | ||
pos_file "#{File.join('/var/log/', ENV.fetch('FLUENT_POS_EXTRA_DIR', ''), 'fluentd-containers.log.pos')}" | ||
tag "#{ENV['FLUENT_CONTAINER_TAIL_TAG'] || 'kubernetes.*'}" | ||
exclude_path "#{ENV['FLUENT_CONTAINER_TAIL_EXCLUDE_PATH'] || use_default}" | ||
read_from_head true | ||
@include ../tail_container_parse.conf | ||
</source> |
11 changes: 11 additions & 0 deletions
11
docker-image/v1.18/arm64/debian-azureblob/conf/kubernetes/docker.conf
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
<source> | ||
@type tail | ||
@id in_tail_docker | ||
path /var/log/docker.log | ||
pos_file "#{File.join('/var/log/', ENV.fetch('FLUENT_POS_EXTRA_DIR', ''), 'fluentd-docker.log.pos')}" | ||
tag docker | ||
<parse> | ||
@type regexp | ||
expression /^time="(?<time>[^)]*)" level=(?<severity>[^ ]*) msg="(?<message>[^"]*)"( err="(?<error>[^"]*)")?( statusCode=($<status_code>\d+))?/ | ||
</parse> | ||
</source> |
Oops, something went wrong.