Skip to content

Commit 75abd40

Browse files
authored
Merge pull request #203 from cloudnativedaysjp/update/sentry-vm-specs
Remove cloud-init verification vm and Update sepc of sentry vm
2 parents 866fefd + a5fe75a commit 75abd40

File tree

3 files changed

+55
-116
lines changed

3 files changed

+55
-116
lines changed

o11y_infra/stg/disks.tf

Lines changed: 1 addition & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,3 @@
1-
resource "sakuracloud_disk" "ci_boot" {
2-
name = "ci-boot"
3-
source_archive_id = data.sakuracloud_archive.ubuntu2404.id
4-
plan = "ssd"
5-
connector = "virtio"
6-
size = 20
7-
}
8-
9-
resource "sakuracloud_disk" "ci_docker_volume" {
10-
name = "ci-docker-volume"
11-
plan = "ssd"
12-
connector = "virtio"
13-
size = 20
14-
}
15-
161
resource "sakuracloud_disk" "sentry_boot" {
172
name = "sentry-boot-stg"
183
source_archive_id = data.sakuracloud_archive.ubuntu2404.id
@@ -25,22 +10,7 @@ resource "sakuracloud_disk" "sentry_docker_volume" {
2510
name = "sentry-docker-volume-stg"
2611
plan = "ssd"
2712
connector = "virtio"
28-
size = 100
29-
}
30-
31-
resource "sakuracloud_disk" "sentry_redis_boot" {
32-
name = "sentry-redis-boot-stg"
33-
source_archive_id = data.sakuracloud_archive.ubuntu2404.id
34-
plan = "ssd"
35-
connector = "virtio"
36-
size = 100
37-
}
38-
39-
resource "sakuracloud_disk" "sentry_redis_docker_volume" {
40-
name = "sentry-redis-docker-volume-stg"
41-
plan = "ssd"
42-
connector = "virtio"
43-
size = 100
13+
size = 250
4414
}
4515

4616
resource "sakuracloud_disk" "prometheus_boot" {

o11y_infra/stg/servers.tf

Lines changed: 12 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,39 +1,10 @@
1-
resource "sakuracloud_server" "ci" {
2-
name = "ci"
3-
disks = [
4-
sakuracloud_disk.ci_boot.id,
5-
sakuracloud_disk.ci_docker_volume.id,
6-
]
7-
core = 1
8-
memory = 1
9-
description = "Cloud init testing"
10-
tags = ["app=ci", "stage=staging"]
11-
12-
network_interface {
13-
upstream = "shared"
14-
packet_filter_id = sakuracloud_packet_filter.sentry.id
15-
}
16-
17-
network_interface {
18-
upstream = data.sakuracloud_switch.o11y.id
19-
}
20-
21-
user_data = templatefile("./template/o11y-init.yaml", {
22-
vm_password = random_password.password.result,
23-
hostname = "ci"
24-
secondary_ip = "192.168.2.200",
25-
mackerel_api_key = var.mackerel_api_key
26-
})
27-
}
28-
291
resource "sakuracloud_server" "sentry" {
302
name = "sentry-stg"
313
disks = [
324
sakuracloud_disk.sentry_boot.id,
335
sakuracloud_disk.sentry_docker_volume.id,
346
]
35-
# TODO: scale down cpu and memory resource
36-
core = 20
7+
core = 8
378
memory = 32
389
description = "Sentry server for staging"
3910
tags = ["app=sentry", "stage=staging", "starred"]
@@ -48,38 +19,17 @@ resource "sakuracloud_server" "sentry" {
4819
}
4920

5021
user_data = templatefile("./template/sentry-init.yaml", {
51-
vm_password = random_password.password.result,
52-
hostname = "sentry-stg"
53-
secondary_ip = "192.168.1.200",
22+
vm_password = random_password.password.result,
23+
hostname = "sentry-stg"
24+
secondary_ip = "192.168.1.200",
25+
mackerel_api_key = var.mackerel_api_key
5426
})
55-
}
56-
57-
resource "sakuracloud_server" "sentry_redis" {
58-
name = "sentry-redis-stg"
59-
disks = [
60-
sakuracloud_disk.sentry_redis_boot.id,
61-
sakuracloud_disk.sentry_redis_docker_volume.id
62-
]
63-
# TODO: scale down cpu and memory resource
64-
core = 4
65-
memory = 16
66-
description = "Sentry Redis server for staging"
67-
tags = ["app=redis", "stage=staging", "starred"]
68-
69-
network_interface {
70-
upstream = "shared"
71-
packet_filter_id = sakuracloud_packet_filter.sentry_redis.id
72-
}
7327

74-
network_interface {
75-
upstream = data.sakuracloud_switch.o11y.id
28+
lifecycle {
29+
ignore_changes = [
30+
user_data,
31+
]
7632
}
77-
78-
user_data = templatefile("./template/sentry-init.yaml", {
79-
vm_password = random_password.password.result,
80-
hostname = "sentry-redis-stg",
81-
secondary_ip = "192.168.1.201",
82-
})
8333
}
8434

8535
resource "sakuracloud_server" "prometheus" {
@@ -106,6 +56,7 @@ resource "sakuracloud_server" "prometheus" {
10656
vm_password = random_password.password.result,
10757
hostname = "prometheus-stg",
10858
secondary_ip = "192.168.1.202",
59+
mackerel_api_key = var.mackerel_api_key
10960
})
11061

11162
lifecycle {
@@ -139,6 +90,7 @@ resource "sakuracloud_server" "loki" {
13990
vm_password = random_password.password.result,
14091
hostname = "loki-stg",
14192
secondary_ip = "192.168.1.203",
93+
mackerel_api_key = var.mackerel_api_key
14294
})
14395

14496
lifecycle {
@@ -172,6 +124,7 @@ resource "sakuracloud_server" "grafana" {
172124
vm_password = random_password.password.result,
173125
hostname = "grafana-stg",
174126
secondary_ip = "192.168.1.204",
127+
mackerel_api_key = var.mackerel_api_key
175128
})
176129

177130
lifecycle {
Lines changed: 42 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,36 @@
11
#cloud-config
22
fqdn: ${hostname}
33
chpasswd:
4-
expire: false
5-
users:
6-
- name: ubuntu
7-
password: ${vm_password}
8-
type: text
4+
expire: false
5+
users:
6+
- name: ubuntu
7+
password: ${vm_password}
8+
type: text
99
users:
1010
- default
1111
- name: ubuntu
1212
gecos: Local
1313
lock_passwd: false
1414
groups: sudo, users, admin
1515
shell: /bin/bash
16-
sudo: ['ALL=(ALL) NOPASSWD:ALL']
16+
sudo: ["ALL=(ALL) NOPASSWD:ALL"]
1717
ssh_import_id:
18-
- gh:jacopen
19-
- gh:inductor
20-
- gh:b1gb4by
21-
- gh:ureuzy
22-
- gh:shukawam
23-
- gh:ryusuketesaki
18+
- gh:jacopen
19+
- gh:inductor
20+
- gh:b1gb4by
21+
- gh:ureuzy
22+
- gh:shukawam
23+
- gh:ne-sachirou
2424
system_info:
2525
default_user:
2626
name: default-user
2727
lock_passwd: false
2828
sudo: ["ALL=(ALL) NOPASSWD:ALL"]
29-
ssh_pwauth: yes
29+
ssh_pwauth: no
3030
random_seed:
31-
file: /dev/urandom
32-
command: ["pollinate", "-r", "-s", "https://entropy.ubuntu.com"]
33-
command_required: true
31+
file: /dev/urandom
32+
command: ["pollinate", "-r", "-s", "https://entropy.ubuntu.com"]
33+
command_required: true
3434
package_upgrade: true
3535
packages:
3636
- curl
@@ -41,7 +41,30 @@ packages:
4141
- lsb-release
4242
- ca-certificates
4343
- dstat
44+
write_files:
45+
- path: /etc/netplan/51-secondary-nic.yaml
46+
permissions: "0644"
47+
content: |
48+
network:
49+
version: 2
50+
ethernets:
51+
ens4:
52+
dhcp4: false
53+
addresses: [${secondary_ip}/24]
54+
disk_setup:
55+
/dev/vdb:
56+
table_type: "gpt"
57+
layout: true
58+
overwrite: false
59+
fs_setup:
60+
- label: docker-data
61+
filesystem: ext4
62+
device: /dev/vdb
63+
mounts:
64+
- ["/dev/vdb", "/var/lib/docker", "ext4", "defaults", "0", "2"]
4465
runcmd:
66+
- sudo netplan apply
67+
- sudo mkdir -p /var/lib/docker
4568
- sudo install -m 0755 -d /etc/apt/keyrings
4669
- sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
4770
- sudo chmod a+r /etc/apt/keyrings/docker.asc
@@ -54,13 +77,6 @@ runcmd:
5477
- sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
5578
- sudo groupadd docker
5679
- sudo usermod -aG docker ubuntu
57-
- |
58-
cat - << EOF | sudo tee /etc/netplan/51-secondary-nic.yaml
59-
network:
60-
ethernets:
61-
ens4:
62-
dhcp4: false
63-
addresses: [${secondary_ip}/24]
64-
version: 2
65-
EOF
66-
- sudo netplan apply
80+
- docker plugin install grafana/loki-docker-driver:2.9.2 --alias loki --grant-all-permissions
81+
- wget -q -O - https://mackerel.io/file/script/setup-all-apt-v2.sh | MACKEREL_APIKEY=${mackerel_api_key} sh
82+
- sudo systemctl start mackerel-agent

0 commit comments

Comments
 (0)