This commit is contained in:
havelight-ee
2023-05-23 09:47:28 +09:00
2 changed files with 206 additions and 0 deletions

View File

@@ -19,16 +19,26 @@ aws 환경 구축 시 사용하는 파일을 정리한다.
| i-0628e1521b484fde1 | 172.24.11.188/23 | control-plane | - | 2 | 4 | ap-northeast-2b | c5a.large | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-05a497c27d7f65d78 | 172.24.12.22/23 | control-plane | - | 2 | 4 | ap-northeast-2c | c5a.large | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0446ae551deac0b98 | 172.24.8.218/23 | control-plane | - | 2 | 4 | ap-northeast-2a | c5a.large | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
<<<<<<< HEAD
| i-07aebcfff479c0331 | 172.24.12.210/23 | prod/data-druid | k8s-prod-data-druid-small | 4 | 16 | ap-northeast-2c | m6i.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-07046cde77753a2d4 | 172.24.12.252/23 | prod/data-druid | k8s-prod-data-druid-c | 16 | 62 | ap-northeast-2c | m5a.4xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0c370e3211468e6e5 | 172.24.12.96/23 | prod/data-druid | k8s-prod-data-druid-middle | 8 | 31 | ap-northeast-2c | m5a.2xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0f2de40153ccd640e | 172.24.13.2/23 | prod/data-druid | k8s-prod-data-druid-middle | 8 | 31 | ap-northeast-2c | m5a.2xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0a36b91bce0b86b6f | 172.24.12.142/23 | prod/data-druid | k8s-prod-data-druid-c | 16 | 62 | ap-northeast-2c | m5a.4xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
=======
| i-0c370e3211468e6e5 | 172.24.12.96/23 | prod/data-druid | k8s-prod-data-druid-middle | 8 | 31 | ap-northeast-2c | m5a.2xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-07aebcfff479c0331 | 172.24.12.210/23 | prod/data-druid | k8s-prod-data-druid-small | 4 | 16 | ap-northeast-2c | m6i.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-07046cde77753a2d4 | 172.24.12.252/23 | prod/data-druid | k8s-prod-data-druid-c | 16 | 62 | ap-northeast-2c | m5a.4xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0f2de40153ccd640e | 172.24.13.2/23 | prod/data-druid | k8s-prod-data-druid-middle | 8 | 31 | ap-northeast-2c | m5a.2xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0a36b91bce0b86b6f | 172.24.12.142/23 | prod/data-druid | k8s-prod-data-druid-c | 16 | 62 | ap-northeast-2c | m5a.4xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0fd0e6d60f02a7b14 | 172.24.13.29/23 | prod/data-es | k8s-prod-data-es-c2 | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
>>>>>>> 621de933e3ec9df8c0b5f5b4d323b788b5f661da
| i-06e3ca9b0a909e7bd | 172.24.13.62/23 | prod/data-es | k8s-prod-data-es-c | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0fd0e6d60f02a7b14 | 172.24.13.29/23 | prod/data-es | k8s-prod-data-es-c2 | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0df4bd76188c35590 | 172.24.13.100/23 | prod/data-es | k8s-prod-data-es-c3 | 4 | 16 | ap-northeast-2c | m6i.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0a6a549b5bf51efbc | 172.24.12.207/23 | prod/data-kafka | k8s-prod-data-kafka-c | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0097ed484d8513a71 | 172.24.12.66/23 | prod/data-kafka | k8s-prod-data-kafka-c3 | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
<<<<<<< HEAD
| i-092354f3890ecf207 | 172.24.13.215/23 | prod/data-kafka | k8s-prod-data-kafka-c2 | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0d3e74b8884948aa3 | 172.24.13.32/23 | prod/process | k8s-prod-process-c | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0abc091cf1fc5084f | 172.24.12.23/23 | prod/process | k8s-prod-process-c4 | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
@@ -38,13 +48,27 @@ aws 환경 구축 시 사용하는 파일을 정리한다.
| i-0ccf664103c7f172b | 172.24.8.119/23 | prod/rel-process | k8s-rel-process-a | 4 | 16 | ap-northeast-2a | m4.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0a012ed882df30c1e | 172.24.9.57/23 | prod/rel-process | k8s-rel-process-a | 4 | 16 | ap-northeast-2a | m4.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0a71a915a2664b7b7 | 172.24.9.246/23 | prod/rel-process | k8s-rel-process-a | 4 | 16 | ap-northeast-2a | m4.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
=======
| i-08cea9eddc5260b4d | 172.24.13.119/23 | prod/process | k8s-prod-process-c2 | 4 | 16 | ap-northeast-2c | m6i.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0abc091cf1fc5084f | 172.24.12.23/23 | prod/process | k8s-prod-process-c4 | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0d3e74b8884948aa3 | 172.24.13.32/23 | prod/process | k8s-prod-process-c | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-00fdae3a253e720bf | 172.24.12.227/23 | prod/process | k8s-prod-process-c | 4 | 16 | ap-northeast-2c | m5a.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-001497d443833e806 | 172.24.9.226/23 | prod/rel-process | k8s-rel-process-a | 4 | 16 | ap-northeast-2a | m4.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-01d4ba87cb4d4008b | 172.24.8.60/23 | prod/rel-process | k8s-rel-process-a | 4 | 16 | ap-northeast-2a | m4.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-0e6c690fbbded065c | 172.24.9.181/23 | prod/rel-process | k8s-rel-process-a | 4 | 16 | ap-northeast-2a | m4.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
| i-05a6735e0a2b11c4d | 172.24.9.183/23 | prod/rel-process | k8s-rel-process-a | 4 | 16 | ap-northeast-2a | m4.xlarge | Ubuntu 20.04.4 LTS | v1.25.2 | containerd://1.6.8 |
>>>>>>> 621de933e3ec9df8c0b5f5b4d323b788b5f661da
## 리소스 목록 [93]
| name | kind | count | reqeust_cpu | reqeust_mem | limit_cpu | limit_mem |
|---------------------------------------------------|--------------|-------|-------------|-------------|-----------|-----------|
| promtail | DaemonSet | 24 | <null> | <null> | <null> | <null> |
<<<<<<< HEAD
| dsk-log-agent | DaemonSet | 20 | 250m | 512Mi | 500m | 1G |
=======
| dsk-log-agent | DaemonSet | 21 | 250m | 512Mi | 500m | 1G |
>>>>>>> 621de933e3ec9df8c0b5f5b4d323b788b5f661da
| prometheus-prometheus-node-exporter | DaemonSet | 24 | <null> | <null> | <null> | <null> |
| aws-cloud-controller-manager | DaemonSet | 3 | 200m | <null> | <null> | <null> |
| dsk-trace-agent | DaemonSet | 24 | <null> | <null> | <null> | <null> |
@@ -102,7 +126,11 @@ aws 환경 구축 시 사용하는 파일을 정리한다.
| prod-dsk-apm-api | Deployment | 1 | 100m | 256Mi | 250m | 512Mi |
| prod-dsk-app-sender | Deployment | 1 | <null> | <null> | <null> | <null> |
| prod-dsk-backoffice | Deployment | 1 | <null> | <null> | <null> | <null> |
<<<<<<< HEAD
| prod-dsk-chart-api | Deployment | 7 | 500m | 512Mi | 1 | 1Gi |
=======
| prod-dsk-chart-api | Deployment | 5 | 500m | 512Mi | 1 | 1Gi |
>>>>>>> 621de933e3ec9df8c0b5f5b4d323b788b5f661da
| prod-dsk-dashboard-api | Deployment | 1 | <null> | <null> | <null> | <null> |
| prod-dsk-database-api | Deployment | 3 | 100m | 256Mi | 250m | 512Mi |
| prod-dsk-database-plan-stream | Deployment | 1 | <null> | <null> | <null> | <null> |
@@ -119,7 +147,11 @@ aws 환경 구축 시 사용하는 파일을 정리한다.
| prod-dsk-loggate | Deployment | 4 | 100m | 500Mi | 200m | 1500Mi |
| elasticsearch-master | Stateful_Set | 3 | 2 | 12Gi | 2 | 12Gi |
| kafka | Stateful_Set | 3 | 2 | 6000Mi | 3 | 10000Mi |
<<<<<<< HEAD
| zookeeper | Stateful_Set | 2 | 100m | 512Mi | 200m | 1000Mi |
=======
| zookeeper | Stateful_Set | 3 | 100m | 512Mi | 200m | 1000Mi |
>>>>>>> 621de933e3ec9df8c0b5f5b4d323b788b5f661da
| vault | Stateful_Set | 1 | <null> | <null> | <null> | <null> |
| keycloak | Stateful_Set | 1 | <null> | <null> | <null> | <null> |
| druid-zookeeper | Stateful_Set | 3 | 250m | 256Mi | <null> | <null> |
@@ -141,6 +173,7 @@ aws 환경 구축 시 사용하는 파일을 정리한다.
| name | namespace | type | Node Port | age |
|------------------------------------------|-------------------|----------|-----------|-------------------------|
<<<<<<< HEAD
| rabbitmq | dsk-middle | NodePort | 30038 | 5 mons 9 days 17:47:44 |
| druid-router | dsk-middle | NodePort | 30076 | 3 mons 22 days 17:46:40 |
| kafka-broker | dsk-middle | NodePort | 30094 | 3 mons 1 day 15:18:07 |
@@ -178,3 +211,42 @@ aws 환경 구축 시 사용하는 파일을 정리한다.
| kafka-global-0 | dsk-middle | NodePort | 32500 | 3 mons 1 day 15:18:07 |
| kafka-global-1 | dsk-middle | NodePort | 32501 | 3 mons 1 day 15:18:07 |
| kafka-global-2 | dsk-middle | NodePort | 32502 | 3 mons 1 day 15:18:07 |
=======
| rabbitmq | dsk-middle | NodePort | 30038 | 5 mons 9 days 03:34:28 |
| druid-router | dsk-middle | NodePort | 30076 | 3 mons 22 days 03:33:24 |
| kafka-broker | dsk-middle | NodePort | 30094 | 3 mons 1 day 01:04:51 |
| kafka-broker-global | dsk-middle | NodePort | 30095 | 3 mons 1 day 01:04:51 |
| keycloak | dsk-middle | NodePort | 30100 | 5 mons 7 days 03:36:36 |
| keycloak | dsk-middle | NodePort | 30101 | 5 mons 7 days 03:36:36 |
| mongo-manifest-mongodb-sharded | dsk-middle | NodePort | 30111 | 22 days 18:29:50 |
| mongo-dsk-mongodb-sharded | dsk-middle | NodePort | 30112 | 22 days 17:17:10 |
| redis-master | dsk-middle | NodePort | 30229 | 5 mons 9 days 03:34:15 |
| elasticsearch-master | dsk-middle | NodePort | 30433 | 19 days 05:15:25 |
| rabbitmq | dsk-middle | NodePort | 30523 | 5 mons 9 days 03:34:28 |
| rabbitmq | dsk-middle | NodePort | 30565 | 5 mons 9 days 03:34:28 |
| rabbitmq | dsk-middle | NodePort | 30655 | 5 mons 9 days 03:34:28 |
| druid-router | dsk-middle | NodePort | 30907 | 3 mons 22 days 03:33:24 |
| rabbitmq | dsk-middle | NodePort | 31021 | 5 mons 9 days 03:34:28 |
| kafka-akhq | dsk-middle | NodePort | 31100 | 3 mons 1 day 01:04:51 |
| kafka-kafka-ui | dsk-middle | NodePort | 31101 | 3 mons 1 day 01:04:51 |
| elasticsearch-master | dsk-middle | NodePort | 31110 | 19 days 05:15:25 |
| prometheus-server | prometheus | NodePort | 31132 | 10 days 02:19:16 |
| druid-exporter-prometheus-druid-exporter | dsk-middle | NodePort | 31282 | 13 days 02:57:14 |
| prod-dsk-datagate-dsk-datagate-trace | dsk-datagate-prod | NodePort | 31300 | 4 mons 4 days 00:29:37 |
| prod-dsk-datagate-dsk-datagate-manifest | dsk-datagate-prod | NodePort | 31301 | 4 mons 16 days 01:45:22 |
| prod-dsk-datagate-dsk-datagate-metric | dsk-datagate-prod | NodePort | 31302 | 4 mons 16 days 01:45:22 |
| prod-dsk-datagate-dsk-datagate-plan | dsk-datagate-prod | NodePort | 31303 | 4 mons 16 days 01:45:22 |
| prod-dsk-loggate | dsk-datagate-prod | NodePort | 31304 | 4 mons 10 days 01:59:11 |
| prod-dsk-loggate | dsk-datagate-prod | NodePort | 31305 | 4 mons 10 days 01:59:11 |
| prod-dsk-backoffice | dsk-api-prod | NodePort | 31523 | 1 mon 16 days 07:41:07 |
| rabbitmq | dsk-middle | NodePort | 31987 | 5 mons 9 days 03:34:28 |
| postgresql | dsk-middle | NodePort | 32098 | 5 mons 9 days 03:34:51 |
| druid-broker | dsk-middle | NodePort | 32200 | 3 mons 22 days 03:33:24 |
| druid-broker | dsk-middle | NodePort | 32316 | 3 mons 22 days 03:33:24 |
| kafka-outside-0 | dsk-middle | NodePort | 32400 | 3 mons 1 day 01:04:51 |
| kafka-outside-1 | dsk-middle | NodePort | 32401 | 3 mons 1 day 01:04:51 |
| kafka-outside-2 | dsk-middle | NodePort | 32402 | 3 mons 1 day 01:04:51 |
| kafka-global-0 | dsk-middle | NodePort | 32500 | 3 mons 1 day 01:04:51 |
| kafka-global-1 | dsk-middle | NodePort | 32501 | 3 mons 1 day 01:04:51 |
| kafka-global-2 | dsk-middle | NodePort | 32502 | 3 mons 1 day 01:04:51 |
>>>>>>> 621de933e3ec9df8c0b5f5b4d323b788b5f661da

134
scripts/steampipe-iac.sh Executable file
View File

@@ -0,0 +1,134 @@
#!/bin/bash
#------------------------------------------------------------------------------------------------------
__init (){
pwd
cd ${git_path}
pwd
git pull
cat ${origin} > ${file}
}
#------------------------------------------------------------------------------------------------------
__git_push (){
git add ${file}
git commit -m 'steampipe schedule'
git push
}
#------------------------------------------------------------------------------------------------------
__append (){
line_count=`cat ${exec_log} | grep -v -- -- | grep -v name | wc -l`
echo -e "\n${title} [${line_count}]\n" >> ${file}
cat ${exec_log} >> ${file}
}
#------------------------------------------------------------------------------------------------------
__query_exec (){
steampipe query "${1}" > ${exec_log}
__log_sed
}
#------------------------------------------------------------------------------------------------------
__log_sed (){
sed -i 's/+/|/g' ${exec_log}
sed -i "s/node-role.kubernetes.io\///g" ${exec_log}
sed -i '1d;$d' ${exec_log}
}
#------------------------------------------------------------------------------------------------------
node_query="""
SELECT
name,
annotations ->> 'projectcalico.org/IPv4Address' AS IP,
COALESCE(taints -> 0 ->> 'key', '-') AS Taints_key,
COALESCE(tags ->> 'kops.k8s.io/instancegroup', '-') AS Instance_group,
capacity ->> 'cpu' AS CPU,
CEIL((CAST(regexp_replace(capacity ->> 'memory', 'Ki', '') AS DECIMAL) / POWER(2, 20))) AS Memory,
tags ->> 'topology.kubernetes.io/zone' AS Zone,
tags ->> 'beta.kubernetes.io/instance-type' AS Instance_type,
node_info ->> 'osImage' AS OS,
node_info ->> 'kubeletVersion' AS K8S_ver,
node_info ->> 'containerRuntimeVersion' AS Runtime_ver
FROM
kubernetes_node
ORDER BY
Taints_key
"""
resources_query="""
(SELECT
name,
'Stateful_Set' as kind,
available_replicas as count,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'requests' ->> 'cpu') AS reqeust_cpu,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'requests' ->> 'memory') AS reqeust_mem,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'limits' ->> 'cpu') AS limit_cpu,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'limits' ->> 'memory') AS limit_mem
FROM
kubernetes_stateful_set
WHERE
name not like 'rel-%')
union
(SELECT
name,
'Deployment' as kind,
available_replicas as count,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'requests' ->> 'cpu') AS reqeust_cpu,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'requests' ->> 'memory') AS reqeust_mem,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'limits' ->> 'cpu') AS limit_cpu,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'limits' ->> 'memory') AS limit_mem
FROM
kubernetes_deployment
WHERE
name not like 'rel-%')
union
(SELECT
name,
'DaemonSet' as kind,
number_available as count,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'requests' ->> 'cpu') AS reqeust_cpu,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'requests' ->> 'memory') AS reqeust_mem,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'limits' ->> 'cpu') AS limit_cpu,
(template -> 'spec' -> 'containers' -> 0 -> 'resources' -> 'limits' ->> 'memory') AS limit_mem
FROM
kubernetes_daemonset
WHERE
name not like 'rel-%')
order by kind
"""
service_query="""
select
name,
namespace,
type,
lower(p ->> 'nodePort') as \"Node Port\",
age(current_timestamp, creation_timestamp)
from
kubernetes_service,
jsonb_array_elements(ports) as p
where type='NodePort' and name not like '%rel-%'
order by
\"Node Port\"
"""
#------------------------------------------------------------------------------------------------------
git_path="/home/jhjung/git/dsk-iac"
origin="/home/jhjung/git/org_README.md"
exec_log="${git_path}/query.log"
file="README.md"
#------------------------------------------------------------------------------------------------------
__init
title="## 노드 목록"
__query_exec "${node_query}"
__append
title="## 리소스 목록"
__query_exec "${resources_query}"
__append
title="## 서비스 목록 (NodePort)"
__query_exec "${service_query}"
__append
rm ${exec_log}
__git_push