Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
2547533
Add Java code sample
hlwanghl Oct 29, 2019
c257d85
Merge pull request #5 from QingCloudAppcenter/feature/java-code
hlwanghl Oct 29, 2019
9c1ce85
Update Java code
hlwanghl Oct 29, 2019
89b7570
Merge pull request #6 from QingCloudAppcenter/update/java-code
hlwanghl Oct 29, 2019
a834418
Update pyyaml version to address security issue
hlwanghl Oct 29, 2019
adc9a5f
appcenter2.0
djangoyi-yunify Jan 27, 2021
62bed56
In progress
djangoyi-yunify Jan 27, 2021
40f498a
In progress
djangoyi-yunify Jan 28, 2021
1fb9a29
add task: confd-files-1.0.9
djangoyi-yunify Jan 29, 2021
d17df93
In progress
djangoyi-yunify Jan 30, 2021
4e3323b
bug-fix: can not extrack tgz file to target path
djangoyi-yunify Jan 31, 2021
f6ec6a3
bug-fix: systemd file
djangoyi-yunify Jan 31, 2021
b3e3679
base image 1 for debug
djangoyi-yunify Jan 31, 2021
ceaf8a5
Progress: templates & coding
djangoyi-yunify Feb 1, 2021
a1ab52e
Progress: templates & coding
djangoyi-yunify Feb 1, 2021
c2e425c
Progress:
djangoyi-yunify Feb 3, 2021
ca0b3c4
rsIsMaster
djangoyi-yunify Feb 3, 2021
b57e714
Progress:
djangoyi-yunify Feb 4, 2021
0c3cd33
Progress
djangoyi-yunify Feb 4, 2021
395610c
Merge branch 'appcenter2-dev' of github.com:djangoyi-yunify/mongodb i…
djangoyi-yunify Feb 4, 2021
d5122a8
shell variables in env template file
djangoyi-yunify Feb 18, 2021
2dee559
config test
djangoyi-yunify Feb 19, 2021
23cd08d
refactor
djangoyi-yunify Feb 20, 2021
b4e74d5
use appctl event routing
djangoyi-yunify Feb 20, 2021
1611ccc
Merge remote-tracking branch 'upstream/refactor/4.0' into appcenter2-dev
djangoyi-yunify Feb 20, 2021
49631dc
create image for debug
djangoyi-yunify Feb 20, 2021
d0c8c4c
replica set init: the acting node becomes the PRI
djangoyi-yunify Feb 20, 2021
c54dd2f
addFirstUser
djangoyi-yunify Feb 20, 2021
8016c48
runMongoCmd
djangoyi-yunify Feb 22, 2021
2850292
rsIsMyStateOK
djangoyi-yunify Feb 22, 2021
3d9ab2a
mongodbAddCustomUser
djangoyi-yunify Feb 22, 2021
9e65c5c
initCluster, runMongoCmd: refine, bug-fix
djangoyi-yunify Feb 23, 2021
7b17ea9
refine: rmAddNodes
djangoyi-yunify Feb 23, 2021
2f08ccb
rsIsMasterRemote, sortHostList
djangoyi-yunify Feb 23, 2021
100e4f9
bug-fix: support other port numbers(not 27017)
djangoyi-yunify Feb 26, 2021
33982c4
rsIsStatusOK
djangoyi-yunify Feb 26, 2021
89bbd55
bug-fix: rsIsStatusOK
djangoyi-yunify Feb 26, 2021
7f2ad2e
rsDummyNodes, rsNodeStepDown
djangoyi-yunify Feb 26, 2021
973e8e0
rsRmNodes
djangoyi-yunify Feb 27, 2021
bd35d04
rsRmNodes, rmDoRmNodes
djangoyi-yunify Feb 28, 2021
0f20115
add logs for debuging
djangoyi-yunify Mar 1, 2021
90ead91
finish main functions
djangoyi-yunify Mar 1, 2021
4654efe
mustache:
djangoyi-yunify Mar 1, 2021
2a57122
support functions for vertical scale
djangoyi-yunify Mar 2, 2021
0afceb0
changeMongodbCfg
djangoyi-yunify Mar 3, 2021
cc96302
debug: get_nodes_order
djangoyi-yunify Mar 3, 2021
6b4d398
change replicaset's config(just begin)
djangoyi-yunify Mar 3, 2021
3942459
change cfg: plan1, not implemented
djangoyi-yunify Mar 4, 2021
ef6418f
changeMongodbCfg:
djangoyi-yunify Mar 5, 2021
4b91c0e
changeMongodbCfg:
djangoyi-yunify Mar 5, 2021
e674808
changeMongodbCfg
djangoyi-yunify Mar 5, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
hosts
**/tmp
*.tar.gz
debug*.yml
*.key
4 changes: 4 additions & 0 deletions ansible/group_vars/all.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
---
mongodb_version: 4.0.3
app_version: 1.0.0
local_cache_path: "~/.ansible/cache"
20 changes: 20 additions & 0 deletions ansible/make.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
- name: mongodb tasks
hosts: image
vars:
target_env: "{{ lookup('env', 'target') }}"
tasks:
- include_role:
name: "{{ name }}"
loop:
- update-apt-sources-1.0.0
- disable-apt-jobs-1.0.0
- disable-motd-1.0.0
- app-agent-1.0.6
- appctl-1.2.5
- arping-1.0.5
- jq-1.0.9
- netcat-openbsd-1.0.4
- mongodb
loop_control:
loop_var: name
13 changes: 13 additions & 0 deletions ansible/requirements.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
- src: https://qingcloudappcenter.github.io/ansible-roles/app-agent-1.1.0.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/appctl-1.2.5.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/arping-1.0.5.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/caddy-1.1.8.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/confd-files-1.0.9.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/install-1.0.5.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/java-1.0.1.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/jq-1.0.9.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/netcat-openbsd-1.0.4.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/update-apt-sources-1.0.0.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/disable-apt-jobs-1.0.0.tar.gz
- src: https://qingcloudappcenter.github.io/ansible-roles/disable-motd-1.0.0.tar.gz
10 changes: 10 additions & 0 deletions ansible/roles/mongodb/files/etc/confd/conf.d/mongod.conf.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[template]
src = "mongod.conf.tmpl"
dest = "/opt/app/current/conf/mongodb/mongod.conf"
keys = [
"/env/maxConns",
"/env/oplogSize",
"/env/port",
"/env/rsName",
]
reload_cmd = "appctl changeMongodbCfg"
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[template]
src = "replicactl.env.tmpl"
dest = "/opt/app/current/bin/envs/replicactl.env"
keys = [
"/",
]
16 changes: 16 additions & 0 deletions ansible/roles/mongodb/files/etc/confd/templates/mongod.conf.tmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
net:
bindIp: 0.0.0.0
port: {{getv "/env/port"}}
maxIncomingConnections: {{getv "/env/maxConns"}}
storage:
dbPath: /data/db
engine: wiredTiger
journal:
enabled: true
systemLog:
destination: syslog
replication:
replSetName: {{getv "/env/rsName"}}
oplogSizeMB: {{getv "/env/oplogSize"}}
security:
keyFile: /opt/app/current/conf/mongodb/repl.key
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
NODE_CTL=replicactl
SERVICES=mongod/true/tcp:{{getv "/env/port"}}
MY_IP={{getv "/host/ip"}}
DATA_MOUNTS=/data

APPCTL_ENV=

GLOBAL_UUID={{getv "/cluster/global_uuid"}}
MONGODB_CONF_PATH="/opt/app/current/conf/mongodb"
MONGODB_OLDCONF_FILE="/data/appctl/data/mongodb.conf.old"
MONGODB_USER_SYS="qc_master"
MONGODB_USER_ROOT="root"
MONGODB_USER_CUSTOM={{getv "/env/user"}}
MONGODB_USER_PASSWD={{getv "/env/passwd"}}

MY_SID={{getv "/host/sid"}}
MY_PORT={{getv "/env/port"}}
RSNAME={{getv "/env/rsName"}}
NODE_LIST=(
{{- range $dir := lsdir "/hosts/replica" -}}
{{- $sid := printf "/hosts/replica/%s/sid" $dir -}}
{{- $ip := printf "/hosts/replica/%s/ip" $dir -}}
{{- $node_id := printf "/hosts/replica/%s/node_id" $dir -}}
'{{getv $sid}}|{{getv $ip}}|{{getv $node_id}}' {{print}}
{{- end -}})

{{- $dir := ls "/adding-hosts" -}}
{{- $len := len $dir -}}
{{- if gt $len 0}}
ADDING_HOSTS=true
ADDING_LIST=(
{{- range $dir := lsdir "/adding-hosts/replica" -}}
{{- $sid := printf "/adding-hosts/replica/%s/sid" $dir -}}
{{- $ip := printf "/adding-hosts/replica/%s/ip" $dir -}}
'{{getv $sid}}|{{getv $ip}}' {{print}}
{{- end -}})
{{- else}}
ADDING_HOSTS=false
{{- end -}}

{{- $dir := ls "/deleting-hosts" -}}
{{- $len := len $dir -}}
{{- if gt $len 0}}
DELETING_HOSTS=true
DELETING_LIST=(
{{- range $dir := lsdir "/deleting-hosts/replica" -}}
{{- $sid := printf "/deleting-hosts/replica/%s/sid" $dir -}}
{{- $ip := printf "/deleting-hosts/replica/%s/ip" $dir -}}
'{{getv $sid}}|{{getv $ip}}' {{print}}
{{- end -}})
{{- else}}
DELETING_HOSTS=false
{{- end}}
MONGODB_MAXCONNS={{getv "/env/maxConns"}}
MONGODB_OPLOGSIZE={{getv "/env/oplogSize"}}
MONGODB_MAINTAIN_PORT=33044

MONGODB_FLAG_CFGCHG_RESTART="/opt/app/current/conf/appctl/flag.cfgchg.restart"
Loading