Add production environment, replication for garage

Also deploy a third node in a different data center
This commit is contained in:
Râu Cao 2022-11-24 20:01:18 +01:00 committed by Gitea
parent b5ff60214c
commit 20e6bdb7f9
8 changed files with 93 additions and 11 deletions

4
clients/garage-4.json Normal file
View File

@ -0,0 +1,4 @@
{
"name": "garage-4",
"public_key": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA8it7QtT6zDiJJqlyHKfQ\nLqwu6bLblD15WWxlUSiOdhz3njWDv1BIDCAdkCR3HAXgxvk8sMj9QkvWS7u1+bc4\nxvHrY4Tgfg+Tk1h3gGa7ukll8s1WLIbGjj89vrK8PFr4iuDqRytYRMmcdMsNzPkS\nKcsOjFYWGV7KM/OwoQGVIOUPB+WtkrFAvNkXtIU6Wd5orzFMjt/9DPF2aO7QegL8\nG1mQmXcPGl9NSDUXptn/kzFKm/p4n7pjy6OypFT192ak7OA/s+CvQlaVE2tb/M3c\ne4J6A+PInV5AGKY6BxI3QRQLZIlqE0FXawFKr1iRU4JP4tVnICXZqy+SDXQU1zar\nTQIDAQAB\n-----END PUBLIC KEY-----\n"
}

View File

@ -0,0 +1,10 @@
{
"name": "production",
"override_attributes": {
"garage": {
"replication_mode": "2",
"s3_api_root_domain": ".s3.garage.kosmos.org",
"s3_web_root_domain": ".web.garage.kosmos.org"
}
}
}

View File

@ -1,5 +1,6 @@
{
"name": "garage-2",
"chef_environment": "production",
"normal": {
"knife_zero": {
"host": "10.1.1.40"

View File

@ -1,5 +1,6 @@
{
"name": "garage-3",
"chef_environment": "production",
"normal": {
"knife_zero": {
"host": "10.1.1.39"

64
nodes/garage-4.json Normal file
View File

@ -0,0 +1,64 @@
{
"name": "garage-4",
"chef_environment": "production",
"normal": {
"knife_zero": {
"host": "10.1.1.104"
}
},
"automatic": {
"fqdn": "garage-4",
"os": "linux",
"os_version": "5.4.0-132-generic",
"hostname": "garage-4",
"ipaddress": "192.168.122.123",
"roles": [
"base",
"kvm_guest",
"garage_node"
],
"recipes": [
"kosmos-base",
"kosmos-base::default",
"kosmos_kvm::guest",
"kosmos_garage",
"kosmos_garage::default",
"kosmos_garage::firewall",
"apt::default",
"timezone_iii::default",
"timezone_iii::debian",
"ntp::default",
"ntp::apparmor",
"kosmos-base::systemd_emails",
"apt::unattended-upgrades",
"kosmos-base::firewall",
"kosmos-postfix::default",
"postfix::default",
"postfix::_common",
"postfix::_attributes",
"postfix::sasl_auth",
"hostname::default",
"firewall::default",
"chef-sugar::default"
],
"platform": "ubuntu",
"platform_version": "20.04",
"cloud": null,
"chef_packages": {
"chef": {
"version": "17.10.3",
"chef_root": "/opt/chef/embedded/lib/ruby/gems/3.0.0/gems/chef-17.10.3/lib",
"chef_effortless": null
},
"ohai": {
"version": "17.9.0",
"ohai_root": "/opt/chef/embedded/lib/ruby/gems/3.0.0/gems/ohai-17.9.0/lib/ohai"
}
}
},
"run_list": [
"role[base]",
"role[kvm_guest]",
"role[garage_node]"
]
}

View File

@ -1,9 +1,10 @@
node.default['garage']['version'] = '0.8.0'
node.default['garage']['checksum']['amd64'] = '66dd2ea1f677281a43e10eb619523b1b269f8fde9047ce8caa70958f3b13ca74'
node.default['garage']['s3_api_port'] = 3900
node.default['garage']['rpc_port'] = 3901
node.default['garage']['s3_web_port'] = 3902
node.default['garage']['admin_port'] = 3903
node.default['garage']['k2v_api_port'] = 3904
node.default['garage']['s3_api_root_domain'] = '.s3.garage.kosmos.org'
node.default['garage']['s3_web_root_domain'] = '.web.garage.kosmos.org'
node.default['garage']['version'] = '0.8.0'
node.default['garage']['checksum']['amd64'] = '66dd2ea1f677281a43e10eb619523b1b269f8fde9047ce8caa70958f3b13ca74'
node.default['garage']['s3_api_port'] = 3900
node.default['garage']['rpc_port'] = 3901
node.default['garage']['s3_web_port'] = 3902
node.default['garage']['admin_port'] = 3903
node.default['garage']['k2v_api_port'] = 3904
node.default['garage']['s3_api_root_domain'] = '.s3.garage.localhost'
node.default['garage']['s3_web_root_domain'] = '.web.garage.localhost'
node.default['garage']['replication_mode'] = 'none'

View File

@ -30,7 +30,8 @@ template '/etc/garage.toml' do
s3_web_root_domain: node['garage']['s3_web_root_domain'] || '.web.garage.localhost',
k2v_api_port: node['garage']['k2v_api_port'],
admin_port: node['garage']['admin_port'],
admin_token: credentials['admin_token']
admin_token: credentials['admin_token'],
replication_mode: node['garage']['replication_mode']
notifies :restart, 'service[garage]', :delayed
end

View File

@ -2,7 +2,7 @@ metadata_dir = "<%= @metadata_dir %>"
data_dir = "<%= @data_dir %>"
db_engine = "<%= @db_engine %>"
replication_mode = "none"
replication_mode = "<%= @replication_mode %>"
rpc_bind_addr = "[::]:<%= @rpc_port %>"
rpc_public_addr = "<%= @rpc_public_addr %>"